:root {
	--etebar-navy: #0b2b40;
	--etebar-navy-dark: #071f30;
	--etebar-green: #246347;
	--etebar-green-dark: #194c35;
	--etebar-gold: #cfae68;
	--etebar-gold-light: #e5cf9a;
	--etebar-ivory: #f8f4ec;
	--etebar-paper: #fffcf6;
	--etebar-muted: #f0e9dc;
	--etebar-charcoal: #19242b;
	--etebar-gray: #56636b;
	--etebar-border: #ddd2bf;
	--etebar-danger: #9f2f2d;
	--etebar-radius: 12px;
	--etebar-container: 1240px;
	--etebar-narrow: 820px;
	--etebar-serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
	--etebar-sans: "Avenir Next", Avenir, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
	--etebar-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

/* Special Request V2 — compact request records, not catalog cards. */
.special-request-items {
	display: grid;
	gap: 1rem;
	margin-block: 0.25rem 1.25rem;
}

.special-request-items__heading,
.special-request-items__heading > div,
.special-request-item__fields,
.etebar-special-requests-account__header,
.etebar-special-request-detail > header {
	display: flex;
	gap: 1rem;
}

.special-request-items__heading,
.etebar-special-requests-account__header,
.etebar-special-request-detail > header {
	align-items: flex-start;
	justify-content: space-between;
}

.special-request-items__heading > div,
.special-request-item__fields {
	flex-direction: column;
}

.special-request-items__heading h4,
.special-request-items__heading p {
	margin: 0;
}

.special-request-items__heading [data-item-count] {
	flex: 0 0 auto;
	padding: 0.25rem 0.55rem;
	border: 1px solid rgba(13, 37, 61, 0.16);
	border-radius: 999px;
	color: var(--color-navy, #0d253d);
	font-size: 0.78rem;
	font-weight: 700;
}

.special-request-item {
	position: relative;
	margin: 0;
	padding: 1rem;
	border: 1px solid rgba(13, 37, 61, 0.14);
	border-radius: 0.75rem;
	background: rgba(255, 255, 255, 0.56);
}

.special-request-item legend {
	padding-inline: 0.25rem;
	color: var(--color-navy, #0d253d);
	font-size: 0.82rem;
	font-weight: 800;
	text-transform: uppercase;
}

.special-request-item__remove {
	position: absolute;
	inset-block-start: 0.65rem;
	inset-inline-end: 0.75rem;
	min-height: 2.75rem;
	border: 0;
	background: transparent;
	color: #8a3328;
	font: inherit;
	font-size: 0.82rem;
	font-weight: 700;
	cursor: pointer;
}

.special-request-item__fields {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(8rem, 0.8fr);
	gap: 0.8rem;
}

.special-request-item__notes {
	grid-column: 1 / -1;
}

.special-request-items__add {
	justify-self: start;
}

.special-request-items__add:disabled {
	cursor: not-allowed;
	opacity: 0.55;
}

.special-request-attachments-field input[type="file"] {
	padding: 0.65rem;
	height: auto;
	min-height: 3.25rem;
}

.special-request-attachments-field input[type="file"]::file-selector-button {
	margin-inline-end: 0.75rem;
	padding: 0.55rem 0.8rem;
	border: 1px solid rgba(13, 37, 61, 0.22);
	border-radius: 0.45rem;
	background: #fff;
	color: var(--color-navy, #0d253d);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.special-request-saved-recipient {
	display: grid;
	gap: 0.4rem;
	margin-block-end: 1.25rem;
}

.special-request-review__items ol,
.etebar-special-request-items-summary,
.etebar-special-request-history,
.etebar-special-requests-list,
.etebar-special-request-attachments {
	margin: 0;
	padding: 0;
	list-style: none;
}

.special-request-review__items ol {
	display: grid;
	gap: 0.35rem;
	counter-reset: review-items;
}

.special-request-review__items li {
	counter-increment: review-items;
}

.special-request-review__items li::before {
	content: counter(review-items) ". ";
	font-weight: 800;
}

.etebar-special-requests-account,
.etebar-special-request-detail {
	display: grid;
	gap: 1.5rem;
}

.etebar-special-requests-account__header > div,
.etebar-special-request-detail > header > div {
	max-width: 42rem;
}

.etebar-special-requests-account__header :is(h2, p),
.etebar-special-request-detail > header :is(h2, p) {
	margin-block: 0 0.45rem;
}

.etebar-special-requests-account__empty,
.etebar-special-request-detail__section,
.etebar-special-request-quote {
	padding: clamp(1rem, 2.5vw, 1.5rem);
	border: 1px solid rgba(13, 37, 61, 0.14);
	border-radius: 0.75rem;
	background: #fff;
}

.etebar-special-requests-list {
	display: grid;
	border-block-start: 1px solid rgba(13, 37, 61, 0.14);
}

.etebar-special-requests-list > li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: center;
	padding-block: 1.1rem;
	border-block-end: 1px solid rgba(13, 37, 61, 0.14);
}

.etebar-special-requests-list__main :is(p, h3) {
	margin: 0;
}

.etebar-special-requests-list__main h3 {
	margin-block: 0.25rem;
	font-size: 1.05rem;
}

.etebar-special-requests-list__reference {
	color: var(--color-gold-dark, #775b1f);
	font-size: 0.8rem;
	font-weight: 800;
	text-transform: uppercase;
}

.etebar-special-requests-list__action {
	display: flex;
	gap: 0.65rem;
	align-items: center;
}

.etebar-request-status {
	display: inline-flex;
	align-items: center;
	min-height: 1.8rem;
	padding-inline: 0.65rem;
	border: 1px solid rgba(13, 37, 61, 0.16);
	border-radius: 999px;
	background: #f3f0e8;
	color: #24384a;
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1.25;
}

.etebar-request-status--quote_ready,
.etebar-request-status--confirmed,
.etebar-request-status--completed {
	background: #eef4e8;
	color: #27472d;
}

.etebar-request-status--unavailable,
.etebar-request-status--cancelled {
	background: #f7ece9;
	color: #73342c;
}

/*
 * Arabic script is cursive, so the 0.01em Latin tracking that .button applies
 * pulls joined letterforms apart. Scoped to these two account controls only:
 * the same tracking is on every .button site-wide, and resetting it globally
 * would change cart, checkout and shop buttons that are not part of this fix.
 */
html[dir="rtl"] .etebar-special-requests-account__header .button,
html[dir="rtl"] .etebar-special-requests-list__action .button {
	letter-spacing: normal;
}

.etebar-special-request-detail__back {
	justify-self: start;
	font-weight: 750;
}

html[dir="rtl"] .etebar-special-request-detail__back {
	direction: rtl;
}

.etebar-special-request-detail__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(16rem, 0.85fr);
	gap: 1rem;
}

.etebar-special-request-detail__grid > section {
	padding: clamp(1rem, 2.5vw, 1.5rem);
	border: 1px solid rgba(13, 37, 61, 0.14);
	border-radius: 0.75rem;
	background: #fff;
}

.etebar-special-request-items-summary {
	display: grid;
	gap: 0.75rem;
	counter-reset: request-items;
}

.etebar-special-request-items-summary li {
	position: relative;
	display: grid;
	gap: 0.25rem;
	padding-inline-start: 2.25rem;
	counter-increment: request-items;
}

.etebar-special-request-items-summary li::before {
	content: counter(request-items, decimal-leading-zero);
	position: absolute;
	inset-inline-start: 0;
	color: var(--color-gold-dark, #775b1f);
	font-size: 0.78rem;
	font-weight: 850;
}

.etebar-special-request-items-summary p,
.etebar-special-request-detail dl,
.etebar-special-request-detail dl dd {
	margin: 0;
}

.etebar-special-request-detail dl > div {
	display: grid;
	grid-template-columns: minmax(7rem, 0.4fr) minmax(0, 1fr);
	gap: 0.75rem;
	padding-block: 0.55rem;
	border-block-end: 1px solid rgba(13, 37, 61, 0.1);
}

.etebar-special-request-detail dt {
	font-weight: 750;
}

.etebar-special-request-attachments {
	display: grid;
	gap: 0.5rem;
}

.etebar-special-request-attachments li {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}

.etebar-special-request-quote {
	border-inline-start: 4px solid var(--color-gold, #bd9a4a);
}

.etebar-special-request-quote__amount {
	margin-block: 0.35rem;
	color: var(--color-navy, #0d253d);
	font-size: clamp(1.6rem, 4vw, 2.3rem);
	font-weight: 850;
}

.etebar-special-request-history {
	display: grid;
	gap: 0;
}

.etebar-special-request-history li {
	position: relative;
	display: grid;
	grid-template-columns: 1rem minmax(0, 1fr);
	gap: 0.75rem;
	min-height: 3.5rem;
}

.etebar-special-request-history li > span {
	position: relative;
	display: block;
	width: 0.65rem;
	height: 0.65rem;
	margin-block-start: 0.35rem;
	border: 2px solid #fff;
	border-radius: 50%;
	background: var(--color-gold, #bd9a4a);
	box-shadow: 0 0 0 1px var(--color-gold-dark, #775b1f);
}

.etebar-special-request-history li:not(:last-child) > span::after {
	content: "";
	position: absolute;
	inset-block-start: 0.65rem;
	inset-inline-start: 50%;
	width: 1px;
	height: 2.5rem;
	background: rgba(13, 37, 61, 0.2);
}

.etebar-special-request-history li div {
	display: grid;
	align-content: start;
}

.etebar-special-request-history time {
	color: #5d6872;
	font-size: 0.84rem;
}

@media (max-width: 700px) {
	.special-request-item__fields,
	.etebar-special-request-detail__grid,
	.etebar-special-requests-list > li {
		grid-template-columns: minmax(0, 1fr);
	}

	.special-request-item__notes {
		grid-column: auto;
	}

	.special-request-items__heading,
	.etebar-special-requests-account__header,
	.etebar-special-request-detail > header,
	.etebar-special-requests-list__action {
		flex-wrap: wrap;
	}

	.etebar-special-requests-account__header .button,
	.etebar-special-requests-list__action .button {
		width: 100%;
	}

	.etebar-special-requests-list__action {
		justify-content: space-between;
	}

	.special-request-item {
		padding: 0.85rem;
	}

	.special-request-item__remove {
		position: static;
		width: 100%;
		margin-block: -0.25rem 0.5rem;
		text-align: start;
	}

	.etebar-special-request-detail dl > div {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.15rem;
	}
}

/* Focused three-tier bundle catalog */
.etebar-bundle-tier {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 0.75rem;
	font-family: var(--etebar-sans);
	font-size: 0.78rem;
	font-weight: 750;
}

.etebar-bundle-tier span,
.etebar-bundle-tier strong {
	display: inline-flex;
	min-height: 30px;
	align-items: center;
	border: 1px solid var(--etebar-border);
	border-radius: 999px;
	padding: 0.25rem 0.75rem;
}

.etebar-bundle-tier strong {
	border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-gold) 13%, var(--etebar-paper));
	color: var(--etebar-navy);
}

.etebar-tea-choice {
	margin: 0 0 1rem;
	border: 0;
	padding: 0;
}

.etebar-tea-choice legend {
	margin-bottom: 0.3rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-weight: 750;
}

.etebar-tea-choice > p {
	margin: 0 0 0.65rem;
	color: var(--etebar-gray);
	font-size: 0.85rem;
	line-height: 1.45;
}

.etebar-tea-choice__options {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.55rem;
}

.etebar-tea-choice__options label {
	display: flex;
	min-height: 48px;
	align-items: center;
	gap: 0.55rem;
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	padding: 0.6rem 0.7rem;
	cursor: pointer;
	font-size: 0.86rem;
	font-weight: 650;
}

.etebar-tea-choice__options label:has(input:checked) {
	border-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 9%, var(--etebar-paper));
}

.etebar-tea-choice__options input:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

.etebar-bundle-contents__header h3,
.etebar-bundle-order-facts h3 {
	margin-bottom: 0.7rem;
	font-size: 1.05rem;
}

.etebar-bundle-contents li {
	justify-content: flex-start;
	line-height: 1.5;
}

.etebar-bundle-order-facts {
	margin-top: 1.25rem;
}

.etebar-bundle-order-facts ul {
	margin: 0;
	padding-inline-start: 1.2rem;
}

@media (max-width: 520px) {
	.etebar-tea-choice__options {
		grid-template-columns: 1fr;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: var(--etebar-ivory);
	color: var(--etebar-charcoal);
	font-family: var(--etebar-sans);
	font-size: 16px;
	line-height: 1.7;
}

body.admin-bar .site-header {
	top: 32px;
}

img {
	display: block;
	height: auto;
	max-width: 100%;
}

a {
	color: inherit;
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
a {
	-webkit-tap-highlight-color: transparent;
}

h1,
h2,
h3,
h4,
p,
ul,
ol,
dl {
	margin-top: 0;
}

h1,
h2,
h3,
h4 {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-weight: 600;
	line-height: 1.08;
}

h1 {
	font-size: clamp(2.4rem, 5vw, 4.5rem);
	letter-spacing: -0.025em;
}

h2 {
	font-size: clamp(2rem, 3vw, 3rem);
	letter-spacing: -0.018em;
}

h3 {
	font-size: 1.3rem;
}

:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-link {
	position: fixed;
	left: 1rem;
	top: -5rem;
	z-index: 99999;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	padding: 0.75rem 1rem;
	border: 1px solid var(--etebar-border);
}

.skip-link:focus {
	top: 1rem;
}

.container {
	width: min(calc(100% - 2rem), var(--etebar-container));
	margin-inline: auto;
}

.container--narrow {
	max-width: var(--etebar-narrow);
}

.site-main {
	min-height: var(--etebar-header-overlap);
    padding-block-start: var(--etebar-header-overlap);
    background: var(--etebar-page-start-background);
}

.section {
	padding: 6.5rem 0;
}

.section--muted {
	background: color-mix(in srgb, var(--etebar-muted) 60%, var(--etebar-ivory));
}

.section--proof {
	background: var(--etebar-paper);
}

.section-heading {
	max-width: 740px;
	border-left: 0;
	padding-left: 0;
}

.section-heading h2 {
	margin-bottom: 1.15rem;
}

.section-heading > p:last-child {
	margin-bottom: 0;
	color: var(--etebar-gray);
	font-size: 1.08rem;
}

.section-heading--center {
	border-left: 0;
	padding-left: 0;
	margin-inline: auto;
	text-align: center;
}

.eyebrow {
	display: flex;
	align-items: center;
	gap: 0;
	margin-bottom: 1rem;
	color: var(--etebar-green);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.section-heading--center .eyebrow {
	justify-content: center;
}

.button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	border: 1px solid transparent;
	border-radius: 7px;
	padding: 0.82rem 1.25rem;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0.01em;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.button:hover {
	text-decoration: none;
}

.button--primary {
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
}

.button--primary:hover {
	background: var(--etebar-navy-dark);
	box-shadow: 0 8px 20px rgb(7 31 48 / 14%);
}

.button--secondary {
	background: var(--etebar-green);
	color: #fff;
}

.button--secondary:hover {
	background: var(--etebar-green-dark);
}

.button--gold {
	background: var(--etebar-gold);
	color: var(--etebar-charcoal);
}

.button--gold:hover {
	background: var(--etebar-gold-light);
	box-shadow: 0 8px 22px rgb(0 0 0 / 18%);
}

.button--outline {
	border-color: var(--etebar-navy);
	background: transparent;
	color: var(--etebar-navy);
}

.button--outline:hover {
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
}

.button--light-outline {
	border-color: rgb(247 243 234 / 55%);
	background: rgb(247 243 234 / 5%);
	color: var(--etebar-ivory);
}

.button--light-outline:hover {
	background: rgb(247 243 234 / 12%);
}

.button[disabled] {
	cursor: not-allowed;
	opacity: 0.55;
}

.button-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.text-link,
.card-link {
	color: var(--etebar-green);
	font-weight: 600;
	text-underline-offset: 4px;
}

.text-link:hover,
.card-link:hover {
	text-decoration-thickness: 2px;
}

/* Header */

.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	border-bottom: 1px solid var(--etebar-border);
	background: rgb(255 253 248 / 97%);
	box-shadow: 0 8px 24px rgb(12 38 57 / 4%);
	backdrop-filter: blur(12px);
}

.site-header__inner {
	display: flex;
	min-height: 80px;
	align-items: center;
	justify-content: space-between;
	gap: clamp(0.75rem, 1.5vw, 1.25rem);
}

.brand {
	display: inline-flex;
	min-width: max-content;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.75rem;
	color: var(--etebar-navy);
	text-decoration: none;
}

.brand > a,
.brand__text {
	color: inherit;
	text-decoration: none;
}

.brand__mark {
	display: inline-flex;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
	font-family: var(--etebar-serif);
	font-size: 1.2rem;
	font-weight: 600;
}

.brand__custom-logo .custom-logo-link {
	display: block;
}

.brand__custom-logo img {
	width: 38px;
	height: 38px;
	object-fit: contain;
}

.brand__text {
	display: flex;
	min-width: 0;
	flex-direction: column;
	line-height: 1.15;
}

.brand__text strong {
	overflow: hidden;
	font-family: var(--etebar-serif);
	font-size: 1.16rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.brand__name-mobile {
	display: none;
}

.brand__text small {
	margin-top: 0.25rem;
	color: var(--etebar-gray);
	font-size: 0.61rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.site-nav__list,
.footer-menu {
	display: flex;
	align-items: center;
	gap: clamp(0.8rem, 1.35vw, 1.35rem);
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-nav {
	min-width: 0;
}

.site-nav__list li {
	min-width: 0;
}

.site-nav__list a {
	display: block;
	color: color-mix(in srgb, var(--etebar-charcoal) 85%, transparent);
	font-size: clamp(0.8rem, 0.9vw, 0.89rem);
	font-weight: 650;
	text-decoration: none;
	text-underline-offset: 5px;
	white-space: nowrap;
}

.site-nav__list a:hover,
.site-nav__list .current-menu-item > a {
	color: var(--etebar-navy);
	text-decoration: underline;
	text-decoration-color: var(--etebar-gold);
	text-decoration-thickness: 2px;
}

.site-header__actions {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.75rem;
}

.header-support {
	border-bottom: 0;
	color: var(--etebar-gray);
	font-size: 0.8rem;
	font-weight: 650;
	text-decoration: none;
	white-space: nowrap;
}

.header-support:hover {
	color: var(--etebar-green);
}

.header-order {
	min-height: 46px;
	padding-inline: 1.25rem;
	white-space: nowrap;
}

.menu-toggle,
.site-nav__mobile-actions {
	display: none;
}

.menu-toggle {
	position: relative;
	width: 42px;
	height: 42px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--etebar-border);
	border-radius: 4px;
	background: transparent;
	color: var(--etebar-navy);
	cursor: pointer;
}

.menu-toggle__lines,
.menu-toggle__lines::before,
.menu-toggle__lines::after {
	display: block;
	width: 18px;
	height: 2px;
	background: currentColor;
	content: "";
}

.menu-toggle__lines::before {
	transform: translateY(-6px);
}

.menu-toggle__lines::after {
	transform: translateY(4px);
}

/* Hero */

.hero {
	position: relative;
	overflow: hidden;
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
}

.hero__grid-pattern {
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgb(247 243 234 / 5%) 1px, transparent 1px), linear-gradient(90deg, rgb(247 243 234 / 5%) 1px, transparent 1px);
	background-size: 54px 54px;
	mask-image: linear-gradient(90deg, #000 0%, rgb(0 0 0 / 55%) 62%, transparent 100%);
}

.hero__layout {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(390px, 0.85fr);
	align-items: center;
	gap: clamp(4rem, 7vw, 7rem);
	padding-top: 7.25rem;
	padding-bottom: 7.25rem;
}

.hero__content {
	max-width: 650px;
}

.hero__eyebrow {
	color: var(--etebar-gold);
}

.hero h1 {
	max-width: 760px;
	margin-bottom: 1.5rem;
	color: var(--etebar-ivory);
	font-size: clamp(3rem, 5vw, 5rem);
	letter-spacing: -0.025em;
}

.hero__lead {
	max-width: 620px;
	margin-bottom: 1.75rem;
	color: rgb(247 243 234 / 82%);
	font-size: 1.12rem;
	line-height: 1.75;
}

.hero__secondary-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.5rem;
	margin-top: 1.25rem;
}

.hero__secondary-links a {
	color: rgb(247 243 234 / 75%);
	font-size: 0.84rem;
	font-weight: 650;
	text-underline-offset: 4px;
}

.hero__secondary-links a:hover {
	color: var(--etebar-gold);
}

.hero__assurance {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	margin: 3rem 0 0;
}

.hero__assurance div {
	border-left: 1px solid rgb(216 181 109 / 60%);
	padding-left: 0.75rem;
}

.hero__assurance dt {
	color: var(--etebar-gold);
	font-size: 0.82rem;
	font-weight: 600;
}

.hero__assurance dd {
	margin: 0.3rem 0 0;
	color: rgb(247 243 234 / 65%);
	font-size: 0.72rem;
	line-height: 1.45;
}

.hero__safety {
	max-width: 620px;
	margin: 1.75rem 0 0;
	border-top: 1px solid rgb(247 243 234 / 18%);
	padding-top: 1rem;
	color: rgb(247 243 234 / 72%);
	font-size: 0.8rem;
}

.order-preview {
	overflow: hidden;
	border: 1px solid rgb(247 243 234 / 20%);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	color: var(--etebar-charcoal);
	box-shadow: 0 28px 70px rgb(0 0 0 / 18%);
}

.order-preview__header {
	padding: 1.5rem 1.75rem;
	background: var(--etebar-navy-dark);
}

.order-preview__header span {
	color: rgb(247 243 234 / 65%);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.order-preview__header h2 {
	margin: 0.35rem 0 0;
	color: var(--etebar-ivory);
	font-size: 1.45rem;
}

.order-preview__meta {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: 0;
	border-bottom: 1px solid var(--etebar-border);
}

.order-preview__meta div {
	padding: 1.1rem 1.75rem;
}

.order-preview__meta div + div {
	border-left: 1px solid var(--etebar-border);
}

.order-preview__meta dt,
.proof-record dt {
	color: var(--etebar-gray);
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.order-preview__meta dd {
	margin: 0.2rem 0 0;
	color: var(--etebar-navy);
	font-weight: 750;
}

.order-preview__items {
	margin: 0;
	padding: 0 1.75rem;
	list-style: none;
}

.order-preview__items li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 0;
	border-bottom: 1px solid var(--etebar-border);
	font-size: 0.85rem;
	font-weight: 650;
}

.order-preview__items small {
	color: var(--etebar-gray);
	font-size: 0.72rem;
	font-weight: 500;
}

.order-preview__note {
	margin: 1.25rem 1.75rem 1.75rem;
	border-left: 2px solid var(--etebar-green);
	background: color-mix(in srgb, var(--etebar-green) 6%, transparent);
	padding: 0.85rem 1rem;
	color: var(--etebar-gray);
	font-size: 0.8rem;
	line-height: 1.55;
}

/* Trust strip and categories */

.trust-strip {
	border-bottom: 1px solid var(--etebar-border);
	background: var(--etebar-paper);
}

.trust-strip__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2rem;
	padding-top: 2rem;
	padding-bottom: 2rem;
}

.trust-strip__grid div {
	display: flex;
	flex-direction: column;
}

.trust-strip strong {
	color: var(--etebar-navy);
	font-size: 0.9rem;
}

.trust-strip span {
	margin-top: 0.25rem;
	color: var(--etebar-gray);
	font-size: 0.78rem;
}

.category-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
	margin-top: 3rem;
}

.category-card {
	display: flex;
	min-height: 320px;
	flex-direction: column;
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 1.5rem;
	transition: border-color 180ms ease;
}

.category-card--compact {
	min-height: 280px;
}

.category-card:hover {
	border-color: color-mix(in srgb, var(--etebar-green) 55%, var(--etebar-border));
}

.category-card__number,
.catalog-row__number {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.72rem;
	font-weight: 600;
}

.category-card h3 {
	margin: 0.9rem 0 0.75rem;
}

.category-card > p,
.category-request p {
	color: var(--etebar-gray);
	font-size: 0.88rem;
}

.category-card__examples {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.5rem;
	margin: 0.5rem 0 1.25rem;
	padding: 0;
	list-style: none;
}

.category-card__examples li {
	border: 1px solid var(--etebar-border);
	border-radius: 3px;
	background: var(--etebar-ivory);
	padding: 0.55rem 0.65rem;
	color: var(--etebar-gray);
	font-size: 0.73rem;
	line-height: 1.35;
}

.card-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 44px;
	margin-top: auto;
	border: 1px solid var(--etebar-navy);
	border-radius: 5px;
	padding: 0.65rem 0.85rem;
	color: var(--etebar-navy);
	font-size: 0.82rem;
	text-decoration: none;
}

.card-link:hover {
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
}

.category-request {
	display: flex;
	flex-direction: column;
	justify-content: center;
	border: 1px dashed color-mix(in srgb, var(--etebar-green) 50%, var(--etebar-border));
	border-radius: var(--etebar-radius);
	padding: 1.5rem;
}

.pricing-note {
	max-width: 720px;
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.82rem;
}

.category-grid__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	margin-top: 2rem;
}

/* Product category pages */

.product-detail-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

.product-detail-card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
}

.product-detail-card header {
	flex: 1;
	padding: 1.5rem;
}

.product-detail-card__type {
	margin-bottom: 0.65rem;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.product-detail-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.product-detail-card__meta .product-detail-card__type {
	margin: 0;
}

.product-detail-card__meta > span {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.product-detail-card h2 {
	margin-bottom: 0.65rem;
	font-size: 1.45rem;
}

.product-detail-card header > p:last-child {
	margin-bottom: 0;
	color: var(--etebar-gray);
	font-size: 0.88rem;
}

.product-detail-card dl {
	margin: 0;
	border-top: 1px solid var(--etebar-border);
}

.product-detail-card dl div {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	gap: 1rem;
	padding: 0.8rem 1.5rem;
	border-bottom: 1px solid var(--etebar-border);
}

.product-detail-card dl div:last-child {
	border-bottom: 0;
}

.product-detail-card dt {
	color: var(--etebar-gray);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.product-detail-card dd {
	margin: 0;
	color: var(--etebar-charcoal);
	font-size: 0.8rem;
	line-height: 1.5;
}

@media (min-width: 1025px) {
	.category-detail-page .page-hero {
		padding: 5.25rem 0;
	}

	.category-detail-hero {
		display: grid;
		grid-template-columns: minmax(0, 1.1fr) minmax(340px, 0.62fr);
		gap: 7rem;
		align-items: center;
	}

	.category-detail-hero__intro h1 {
		max-width: 780px;
		font-size: clamp(3.5rem, 5.25vw, 5.25rem);
		line-height: 0.98;
	}

	.category-detail-hero__intro > p:last-of-type {
		max-width: 680px;
		margin-bottom: 0;
		color: var(--etebar-gray);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.category-detail-hero__record {
		display: grid;
		gap: 0.75rem;
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		background: var(--etebar-ivory);
		padding: 1.75rem;
		box-shadow: 0 22px 55px rgb(7 31 48 / 6%);
	}

	.category-detail-hero__record p {
		margin: 0;
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.65rem;
		font-weight: 600;
		letter-spacing: 0.1em;
		text-transform: uppercase;
	}

	.category-detail-hero__record strong {
		color: var(--etebar-navy);
		font-family: var(--etebar-serif);
		font-size: 1.55rem;
		line-height: 1.15;
	}

	.category-detail-hero__record span {
		border-top: 1px solid var(--etebar-border);
		padding-top: 0.85rem;
		color: var(--etebar-gray);
		font-size: 0.78rem;
		line-height: 1.6;
	}

	.category-detail-page > .section {
		background: var(--etebar-muted);
	}

	.category-detail-page .product-detail-grid {
		gap: 0;
		border-top: 1px solid var(--etebar-border);
		border-left: 1px solid var(--etebar-border);
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.category-detail-page .product-detail-card {
		min-height: 405px;
		border-width: 0 1px 1px 0;
		border-radius: 0;
	}

	.category-detail-page .product-detail-card header {
		padding: 2rem;
	}

	.category-detail-page .product-detail-card h2 {
		margin-bottom: 0.8rem;
		font-size: 1.6rem;
		line-height: 1.15;
	}

	.category-detail-page .product-detail-card header > p:last-child {
		font-size: 0.86rem;
		line-height: 1.7;
	}

	.category-detail-page .product-detail-card dl div {
		grid-template-columns: 105px minmax(0, 1fr);
		padding: 0.8rem 2rem;
	}

	.category-detail-page .product-detail-card dt {
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
	}

	.category-detail-page .category-page-actions--bottom {
		justify-content: space-between;
		margin-top: 0;
		border: 1px solid var(--etebar-border);
		border-top: 0;
		background: var(--etebar-paper);
		padding: 1.5rem 2rem;
	}

	.category-detail-page--caution .category-detail-hero__record {
		background: color-mix(in srgb, var(--etebar-gold) 7%, var(--etebar-ivory));
	}

	.category-detail-page--caution .category-detail-hero__record strong {
		color: var(--etebar-navy);
	}

	.category-detail-page--caution .category-detail-hero__record span {
		color: var(--etebar-gray);
	}

	.category-detail-page--caution .content-note {
		margin: 2rem 0;
		border: 1px solid var(--etebar-border);
		border-left: 3px solid var(--etebar-gold);
		padding: 1.75rem 2rem;
	}

	.category-detail-page--overview .section {
		padding: 6rem 0;
	}

	.category-overview-note {
		margin: 0;
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		padding: 2.5rem;
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.category-overview-note h2 {
		font-size: 2rem;
	}

	.category-overview-note p {
		max-width: 680px;
		line-height: 1.7;
	}
}

/* Process, proof, request and support */

.process-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0;
	margin: 3rem 0 2.5rem;
	padding: 0;
	border-top: 1px solid var(--etebar-border);
	list-style: none;
}

.process-list li {
	display: flex;
	gap: 1.1rem;
	padding: 1.5rem 1rem 1.5rem 0;
	border-bottom: 1px solid var(--etebar-border);
}

.process-list li:nth-child(odd) {
	border-right: 1px solid var(--etebar-border);
}

.process-list li:nth-child(even) {
	padding-left: 1.5rem;
}

.process-list > li > span {
	display: inline-flex;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	align-items: center;
	justify-content: center;
	border: 1px solid color-mix(in srgb, var(--etebar-green) 30%, var(--etebar-border));
	border-radius: 5px;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.7rem;
	font-weight: 600;
}

.process-list h3,
.process-list h2 {
	margin-bottom: 0.4rem;
	font-size: 1.25rem;
}

.process-list p {
	margin-bottom: 0;
	color: var(--etebar-gray);
	font-size: 0.87rem;
}

.proof-layout,
.special-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.8fr);
	gap: clamp(4rem, 8vw, 7rem);
	align-items: start;
}

.proof-steps {
	display: grid;
	gap: 0;
	margin: 2.25rem 0 0;
	padding: 0;
	border-top: 1px solid var(--etebar-border);
	list-style: none;
}

.proof-steps li {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1rem 0;
	border-bottom: 1px solid var(--etebar-border);
}

.proof-steps > li > span {
	display: inline-flex;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--etebar-green);
	color: #fff;
	font-family: var(--etebar-mono);
	font-size: 0.68rem;
}

.proof-record,
.request-preview,
.support-panel,
.special-form-shell {
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 2rem;
}

.proof-record__label {
	margin-bottom: 0.65rem;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.proof-record h3,
.proof-record h2 {
	font-size: 1.7rem;
}

.proof-record dl,
.request-preview dl {
	margin: 1.5rem 0;
	border-top: 1px solid var(--etebar-border);
}

.proof-record dl div,
.request-preview dl div {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.85rem 0;
	border-bottom: 1px solid var(--etebar-border);
}

.proof-record dd,
.request-preview dd {
	margin: 0;
	color: var(--etebar-navy);
	font-size: 0.82rem;
	font-weight: 600;
	text-align: right;
}

.proof-record > p:not(.proof-record__label),
.request-preview > p,
.special-layout > div > p {
	color: var(--etebar-gray);
	font-size: 0.87rem;
}

.request-preview h3 {
	font-size: 1.55rem;
}

.request-preview dt {
	color: var(--etebar-navy);
	font-size: 0.82rem;
	font-weight: 600;
}

.support-section {
	background: var(--etebar-ivory);
}

.support-panel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
}

.support-panel--whatsapp {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
	align-items: stretch;
	border-color: var(--etebar-border);
	border-radius: 0;
	background: transparent;
	padding: 2.5rem 0;
}

.support-panel__content {
	align-self: center;
}

.support-panel__content > p:not(.eyebrow) {
	max-width: 700px;
	color: var(--etebar-gray);
}

.support-route {
	border-left: 1px solid var(--etebar-border);
	padding-left: 2.5rem;
}

.support-route__label {
	margin-bottom: 0.75rem;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.support-route ul {
	display: grid;
	gap: 0.75rem;
	margin: 0 0 1rem;
	padding-left: 1.15rem;
	color: var(--etebar-charcoal);
	font-size: 0.84rem;
}

.support-route > p:last-child {
	margin: 0;
	border-top: 1px solid var(--etebar-border);
	padding-top: 1rem;
	color: var(--etebar-navy);
	font-size: 0.82rem;
	font-weight: 600;
}

.support-panel > div:first-child {
	max-width: 650px;
}

.support-panel h2 {
	font-size: 2rem;
}

.support-panel p:last-child {
	margin-bottom: 0;
	color: var(--etebar-gray);
}

/* Accordion */

.accordion {
	margin-top: 2.5rem;
	border-top: 1px solid var(--etebar-border);
}

.accordion__item {
	border-bottom: 1px solid var(--etebar-border);
}

.accordion__item h2,
.accordion__item h3 {
	margin: 0;
}

.accordion__trigger {
	display: flex;
	width: 100%;
	min-height: 68px;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	border: 0;
	background: transparent;
	padding: 1rem 0;
	color: var(--etebar-navy);
	cursor: pointer;
	font-family: var(--etebar-serif);
	font-size: 1.08rem;
	font-weight: 600;
	text-align: left;
}

.accordion__symbol {
	display: inline-flex;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--etebar-border);
	border-radius: 3px;
	color: var(--etebar-green);
	font-family: var(--etebar-sans);
	font-size: 1.1rem;
}

.accordion__panel {
	padding: 0 2.75rem 1.25rem 0;
	color: var(--etebar-gray);
}

.accordion__panel p {
	margin-bottom: 0;
}

.faq-preview__more {
	margin-top: 1.5rem;
	text-align: center;
}

/* Standard pages */

.page-hero {
	border-bottom: 1px solid var(--etebar-border);
	background: var(--etebar-paper);
	padding: 4.5rem 0;
}

.page-hero .container {
	max-width: var(--etebar-container);
}

.page-hero h1 {
	max-width: 850px;
	margin-bottom: 1.25rem;
}

.page-hero .container > p:last-of-type {
	max-width: 720px;
	margin-bottom: 0;
	color: var(--etebar-gray);
	font-size: 1.1rem;
}

.page-hero__actions,
.category-page-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
	margin-top: 1.5rem;
}

.category-page-actions--bottom {
	justify-content: center;
	margin-top: 2.5rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 2rem;
}

.catalog-list {
	border-top: 1px solid var(--etebar-border);
}

.catalog-row {
	display: grid;
	grid-template-columns: 50px minmax(220px, 1fr) minmax(240px, 0.8fr) auto;
	align-items: center;
	gap: 1.5rem;
	padding: 2rem 0;
	border-bottom: 1px solid var(--etebar-border);
}

.catalog-row h2 {
	margin-bottom: 0.5rem;
	font-size: 1.45rem;
}

.catalog-row p,
.catalog-row ul {
	margin-bottom: 0;
	color: var(--etebar-gray);
	font-size: 0.87rem;
}

.catalog-row ul {
	padding-left: 1.1rem;
}

.content-note {
	margin-top: 2.5rem;
	border-left: 3px solid var(--etebar-gold);
	background: var(--etebar-paper);
	padding: 1.5rem;
}

.content-note h2 {
	font-size: 1.35rem;
}

.content-note p:last-child {
	margin-bottom: 0;
	color: var(--etebar-gray);
}

.process-list--page h2 {
	font-size: 1.25rem;
}

.two-column,
.proof-page-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(400px, 1.15fr);
	gap: 4rem;
	align-items: start;
}

.prose {
	max-width: 720px;
}

.prose h2 {
	margin: 2.2rem 0 0.8rem;
	font-size: 1.55rem;
}

.prose h2:first-child {
	margin-top: 0;
}

.prose p,
.prose li {
	color: var(--etebar-gray);
}

.prose li + li {
	margin-top: 0.45rem;
}

.special-form-shell {
	padding: 2rem;
}

.form-preview-notice {
	margin-bottom: 1.5rem;
	border-left: 3px solid var(--etebar-gold);
	background: var(--etebar-ivory);
	padding: 1rem;
}

.form-preview-notice strong {
	color: var(--etebar-navy);
}

.form-preview-notice p {
	margin: 0.35rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.82rem;
}

.special-form fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}

.field-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.special-form label {
	display: block;
	margin-bottom: 1rem;
}

.special-form label span {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--etebar-navy);
	font-size: 0.8rem;
	font-weight: 600;
}

.special-form input,
.special-form textarea,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select {
	width: 100%;
	border: 1px solid var(--etebar-border);
	border-radius: 5px;
	background: #fff;
	color: var(--etebar-charcoal);
	padding: 0.75rem 0.8rem;
}

.special-form input,
.woocommerce input.input-text,
.woocommerce select {
	min-height: 46px;
}

.special-form input:disabled,
.special-form textarea:disabled {
	background: color-mix(in srgb, var(--etebar-muted) 55%, #fff);
	opacity: 1;
}

.form-support {
	margin: 1.25rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.82rem;
}

.proof-page-grid {
	grid-template-columns: minmax(0, 1fr) minmax(340px, 0.7fr);
}

.proof-steps--large {
	margin-top: 0;
}

.proof-steps--large h2 {
	margin-bottom: 0.35rem;
	font-size: 1.3rem;
}

.proof-steps--large p {
	margin-bottom: 0;
	color: var(--etebar-gray);
}

.contact-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
}

.contact-grid article {
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 2rem;
}

.contact-grid h2 {
	font-size: 1.6rem;
}

.contact-grid p {
	color: var(--etebar-gray);
}

.contact-email {
	display: block;
	margin-top: 1rem;
}

.setup-note {
	border-left: 3px solid var(--etebar-gold);
	padding-left: 0.75rem;
}

@media (min-width: 1025px) {
	.content-detail-page .page-hero {
		padding: 5.25rem 0;
	}

	.content-detail-hero {
		display: grid;
		grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.62fr);
		gap: 7rem;
		align-items: center;
	}

	.content-detail-hero__intro h1 {
		max-width: 780px;
		font-size: clamp(3.5rem, 5.25vw, 5.25rem);
		line-height: 0.98;
	}

	.content-detail-hero__intro > p:last-child {
		max-width: 680px;
		margin-bottom: 0;
		color: var(--etebar-gray);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.content-detail-hero__record {
		display: grid;
		gap: 0.75rem;
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		background: var(--etebar-ivory);
		padding: 1.75rem;
		box-shadow: 0 22px 55px rgb(7 31 48 / 6%);
	}

	.content-detail-hero__record p,
	.contact-route__label {
		margin: 0;
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.65rem;
		font-weight: 600;
		letter-spacing: 0.1em;
		text-transform: uppercase;
	}

	.content-detail-hero__record strong {
		color: var(--etebar-navy);
		font-family: var(--etebar-serif);
		font-size: 1.55rem;
		line-height: 1.15;
	}

	.content-detail-hero__record span {
		border-top: 1px solid var(--etebar-border);
		padding-top: 0.85rem;
		color: var(--etebar-gray);
		font-size: 0.78rem;
		line-height: 1.6;
	}

	.content-detail-page > .section {
		background: var(--etebar-muted);
		padding: 5.5rem 0 6rem;
	}

	.how-it-works-page .process-list--page {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		margin: 0;
		border-left: 1px solid var(--etebar-border);
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.how-it-works-page .process-list--page li,
	.how-it-works-page .process-list--page li:nth-child(even) {
		display: block;
		min-height: 310px;
		border-right: 1px solid var(--etebar-border);
		border-bottom: 1px solid var(--etebar-border);
		background: var(--etebar-paper);
		padding: 2rem;
	}

	.how-it-works-page .process-list--page > li > span {
		width: auto;
		height: auto;
		margin-bottom: 3.25rem;
		border: 0;
		color: var(--etebar-green);
		letter-spacing: 0.08em;
	}

	.how-it-works-page .process-list--page h2 {
		font-size: 1.45rem;
		line-height: 1.2;
	}

	.how-it-works-page .process-list--page p {
		font-size: 0.85rem;
		line-height: 1.7;
	}

	.content-detail-page__action {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 3rem;
		border: 1px solid var(--etebar-border);
		border-top: 0;
		background: var(--etebar-paper);
		padding: 1.5rem 2rem;
	}

	.content-detail-page__action p {
		max-width: 720px;
		margin: 0;
		color: var(--etebar-gray);
		font-size: 0.82rem;
	}

	.delivery-proof-page .proof-page-grid {
		grid-template-columns: minmax(0, 1.1fr) minmax(380px, 0.72fr);
		gap: 5rem;
	}

	.delivery-proof-page .proof-steps--large {
		border-left: 1px solid var(--etebar-border);
	}

	.delivery-proof-page .proof-steps--large li {
		min-height: 142px;
		align-items: center;
		background: var(--etebar-paper);
		padding: 1.5rem 1.75rem;
		border-right: 1px solid var(--etebar-border);
	}

	.delivery-proof-page .proof-steps--large > li > span {
		width: 32px;
		height: 32px;
		flex-basis: 32px;
		background: transparent;
		border: 1px solid var(--etebar-green);
		color: var(--etebar-green);
	}

	.delivery-proof-page .proof-record {
		border-radius: 0;
		border-top: 3px solid var(--etebar-gold);
		box-shadow: 0 22px 55px rgb(7 31 48 / 6%);
	}

	.faq-page .container--narrow {
		max-width: 980px;
	}

	.faq-page .accordion--page {
		margin-top: 0;
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		background: var(--etebar-paper);
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.faq-page .accordion__item {
		position: relative;
		padding-left: 4.5rem;
	}

	.faq-page .accordion__item::before {
		content: attr(data-index);
		position: absolute;
		top: 1.55rem;
		left: 1.75rem;
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.67rem;
		font-weight: 600;
		letter-spacing: 0.08em;
	}

	.faq-page .accordion__trigger {
		min-height: 82px;
		padding-right: 1.75rem;
		font-size: 1.16rem;
	}

	.faq-page .accordion__panel {
		max-width: 800px;
		padding: 0 4rem 1.5rem 0;
		line-height: 1.7;
	}

	.contact-page .contact-grid {
		gap: 0;
		border-top: 1px solid var(--etebar-border);
		border-left: 1px solid var(--etebar-border);
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.contact-page .contact-grid article {
		display: flex;
		min-height: 390px;
		flex-direction: column;
		border-width: 0 1px 1px 0;
		border-radius: 0;
		padding: 2.5rem;
	}

	.contact-page .contact-route--primary {
		border-top: 3px solid var(--etebar-gold);
	}

	.contact-page .contact-route__label {
		margin-bottom: 2.75rem;
	}

	.contact-page .contact-grid h2 {
		font-size: 2rem;
	}

	.contact-page .contact-grid p:not(.contact-route__label) {
		max-width: 480px;
		line-height: 1.7;
	}

	.contact-page .contact-grid .button {
		align-self: flex-start;
		margin-top: auto;
	}
}

.content-shell {
	padding-top: 5rem;
	padding-bottom: 5rem;
}

.entry {
	max-width: var(--etebar-narrow);
}

.entry__header h1 {
	font-size: 3rem;
}

.entry__content {
	color: var(--etebar-gray);
}

/* Footer */

.site-footer {
	border-top: 1px solid var(--etebar-border);
	background: var(--etebar-navy-dark);
	color: rgb(247 243 234 / 78%);
}

.site-footer__grid {
	display: grid;
	grid-template-columns: 1.2fr 0.7fr 1fr;
	gap: 3.5rem;
	padding-top: 4.5rem;
	padding-bottom: 4rem;
}

.site-footer__brand > p,
.site-footer__grid > div > p {
	max-width: 390px;
	margin: 1rem 0 0;
	color: rgb(247 243 234 / 65%);
	font-size: 0.85rem;
}

.site-footer__heading {
	margin-bottom: 1rem;
	font-size: 1rem;
	color: var(--etebar-ivory);
}

.footer-menu,
.site-footer .site-nav__list {
	flex-direction: column;
	align-items: flex-start;
	gap: 0.6rem;
}

.footer-menu a,
.site-footer .site-nav__list a {
	color: rgb(247 243 234 / 65%);
	font-size: 0.83rem;
	min-height: auto;
	padding: 0;
	text-decoration: none;
}

.footer-menu a:hover {
	color: var(--etebar-gold);
}

.site-footer__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.8rem;
	margin-top: 1.25rem;
}

.site-footer__legal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	border-top: 1px solid rgb(247 243 234 / 14%);
	color: rgb(247 243 234 / 52%);
	font-size: 0.76rem;
}

.site-footer__legal p {
	margin: 0;
}

.site-footer .brand {
	color: var(--etebar-ivory);
}

.site-footer .brand__mark {
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
}

.site-footer .button--primary {
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
}

.site-footer .button--primary:hover {
	background: var(--etebar-gold-light);
}

.site-footer .text-link {
	color: var(--etebar-gold-light);
}

/* WooCommerce */

.woocommerce-main {
	padding: 4rem 0 6rem;
}

@media (min-width: 1025px) {
	.products-hero__layout {
		display: grid;
		grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.65fr);
		gap: 7rem;
		align-items: center;
	}

	.products-hero__intro h1 {
		max-width: 780px;
		font-size: clamp(3.4rem, 5.3vw, 5.4rem);
		line-height: 0.98;
	}

	.products-hero__record {
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		background: var(--etebar-ivory);
		padding: 1.75rem;
		box-shadow: 0 22px 55px rgb(7 31 48 / 6%);
	}

	.products-hero__record-label {
		margin-bottom: 1rem;
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.65rem;
		font-weight: 600;
		letter-spacing: 0.1em;
		text-transform: uppercase;
	}

	.products-hero__record h2 {
		max-width: 320px;
		margin-bottom: 1.5rem;
		font-size: 1.65rem;
	}

	.products-hero__record dl {
		margin: 0;
		border-top: 1px solid var(--etebar-border);
	}

	.products-hero__record dl div {
		display: flex;
		justify-content: space-between;
		gap: 1rem;
		border-bottom: 1px solid var(--etebar-border);
		padding: 0.75rem 0;
	}

	.products-hero__record dt {
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.65rem;
		font-weight: 600;
		text-transform: uppercase;
	}

	.products-hero__record dd {
		margin: 0;
		font-size: 0.78rem;
		text-align: right;
	}

	.products-hero__record-note {
		margin: 1.25rem 0 0;
		border-left: 2px solid var(--etebar-gold);
		padding-left: 0.8rem;
		color: var(--etebar-gray);
		font-size: 0.75rem;
		line-height: 1.55;
	}

	.products-categories {
		background: var(--etebar-muted);
	}

	.products-categories__heading {
		display: grid;
		max-width: none;
		grid-template-columns: 1fr minmax(360px, 0.62fr);
		gap: 6rem;
		align-items: end;
	}

	.products-categories__heading h2,
	.products-categories__heading p {
		margin-bottom: 0;
	}

	.products-categories .category-grid {
		gap: 0;
		margin-top: 3.5rem;
		border-top: 1px solid var(--etebar-border);
		border-left: 1px solid var(--etebar-border);
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.products-categories .category-card {
		min-height: 300px;
		border-width: 0 1px 1px 0;
		border-radius: 0;
		padding: 2rem;
	}

	.products-categories .category-card:last-child {
		background: color-mix(in srgb, var(--etebar-green) 7%, var(--etebar-paper));
	}

	.products-categories .category-card h3 {
		margin-top: 1.35rem;
	}

	.products-categories .category-card > p {
		font-size: 0.84rem;
		line-height: 1.7;
	}

	.products-categories .card-link {
		border: 0;
		border-top: 1px solid var(--etebar-border);
		border-radius: 0;
		padding: 0.85rem 0 0;
		color: var(--etebar-green);
	}

	.products-categories .card-link:hover {
		background: transparent;
		color: var(--etebar-navy);
	}
}

.woocommerce .woocommerce-breadcrumb {
	margin-bottom: 2rem;
	color: var(--etebar-gray);
	font-size: 0.78rem;
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--etebar-green);
}

.woocommerce .page-title,
.woocommerce div.product .product_title {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
}

.woocommerce .page-title {
	max-width: 760px;
	margin-bottom: 3.5rem;
	font-size: clamp(2.5rem, 5vw, 4.25rem);
}

.woocommerce ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

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

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	display: flex;
	width: auto;
	float: none;
	flex-direction: column;
	margin: 0;
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 0;
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: color-mix(in srgb, var(--etebar-green) 45%, var(--etebar-border));
	box-shadow: 0 18px 40px rgb(7 31 48 / 7%);
	transform: translateY(-3px);
}

.woocommerce ul.products li.product .etebar-shop-card__image img {
	width: 100%;
	margin: 0;
	border-bottom: 1px solid var(--etebar-border);
	border-radius: 0;
	background: var(--etebar-muted);
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.etebar-shop-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.5rem 1.5rem 0;
}

.etebar-shop-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 0.8rem;
}

.etebar-shop-card__meta span {
	border: 1px solid var(--etebar-border);
	border-radius: 999px;
	padding: 0.25rem 0.5rem;
	color: var(--etebar-gray);
	font-family: var(--etebar-mono);
	font-size: 0.58rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.etebar-shop-card__type {
	margin: 0;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 0.7rem;
	padding: 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.35rem;
	line-height: 1.25;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title a {
	text-decoration: none;
}

.etebar-shop-card__description {
	margin-bottom: 1rem;
	color: var(--etebar-gray);
	font-size: 0.86rem;
	line-height: 1.55;
}

.etebar-shop-card__description p {
	margin-bottom: 1rem;
}

.etebar-quote-note {
	margin: auto 0 1rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 0.85rem;
	color: var(--etebar-charcoal);
	font-size: 0.8rem;
	line-height: 1.5;
}

.etebar-quote-note span {
	display: block;
	margin-bottom: 0.2rem;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	color: var(--etebar-green);
	font-size: 1rem;
	font-weight: 750;
}

.header-cart {
	display: inline-flex;
	gap: 0.45rem;
	align-items: center;
	color: rgb(247 242 232 / 78%);
	font-size: 0.78rem;
	font-weight: 600;
	text-decoration: none;
}

.header-cart:hover {
	color: #d7ae5f;
}

.header-cart__count {
	display: inline-grid;
	min-width: 1.5rem;
	height: 1.5rem;
	place-items: center;
	border: 1px solid rgb(215 174 95 / 48%);
	border-radius: 999px;
	color: #f7f2e8;
	font-family: var(--etebar-mono);
	font-size: 0.68rem;
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	min-height: 44px;
	border-radius: 5px;
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
	font-weight: 600;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	background: var(--etebar-navy-dark);
	color: var(--etebar-ivory);
}

.woocommerce ul.products li.product .button {
	display: flex;
	justify-content: space-between;
	margin: 0 1.5rem 1.5rem;
	padding-right: 1rem;
	padding-left: 1rem;
}

.woocommerce span.onsale {
	min-width: auto;
	min-height: auto;
	border-radius: 3px;
	background: var(--etebar-green);
	padding: 0.35rem 0.55rem;
	font-size: 0.7rem;
	line-height: 1.2;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-top: 0;
	border-left: 4px solid var(--etebar-green);
	background: var(--etebar-paper);
	color: var(--etebar-charcoal);
}

.woocommerce-error {
	border-left-color: var(--etebar-danger);
}

.etebar-product__layout {
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(480px, 1.05fr);
	gap: clamp(3rem, 5vw, 5rem);
	align-items: start;
}

.etebar-product__intro {
	padding-top: 0.35rem;
}

.etebar-product__media {
	margin: 2rem 0 0;
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	overflow: hidden;
	background: var(--etebar-paper);
	box-shadow: 0 24px 60px rgb(7 31 48 / 7%);
}

.etebar-product__media img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.etebar-product__intro .product_title {
	margin-bottom: 1rem;
	font-size: clamp(3rem, 4.6vw, 4.75rem);
	line-height: 1;
}

.etebar-product__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1rem;
}

.etebar-product__heading .eyebrow {
	margin: 0;
}

.etebar-product__status {
	border: 1px solid color-mix(in srgb, var(--etebar-green) 42%, var(--etebar-border));
	border-radius: 999px;
	background: color-mix(in srgb, var(--etebar-green) 5%, var(--etebar-paper));
	padding: 0.35rem 0.65rem;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.62rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.etebar-product__description {
	max-width: 680px;
	color: var(--etebar-gray);
	font-size: 1rem;
}

.etebar-product__description p {
	margin-bottom: 1.5rem;
}

.etebar-product__request-panel {
	margin: 0;
	border: 1px solid var(--etebar-border);
	border-top: 3px solid var(--etebar-gold);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 1.5rem;
	box-shadow: 0 18px 45px rgb(7 31 48 / 5%);
}

.etebar-product__request-panel > header {
	margin-bottom: 1.25rem;
}

.etebar-product__request-panel > header h2 {
	margin: 0.35rem 0 0.5rem;
	font-size: 1.55rem;
}

.etebar-product__request-panel > header > p:last-child {
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.86rem;
}

.etebar-product__quote-label {
	margin-bottom: 0.3rem !important;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.etebar-product__records {
	margin: 0;
	border-top: 1px solid var(--etebar-border);
}

.etebar-product__records div {
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr);
	gap: 1rem;
	padding: 0.8rem 0;
	border-bottom: 1px solid var(--etebar-border);
}

.etebar-product__records dt {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.etebar-product__records dd {
	margin: 0;
	font-size: 0.86rem;
	line-height: 1.5;
}

.etebar-product__back {
	display: inline-block;
	margin-top: 0.25rem;
}

.etebar-product__request-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
	margin-top: 1.5rem;
}

.etebar-product__safety {
	display: grid;
	gap: 0.25rem;
	margin-top: 1.25rem;
	border-left: 3px solid var(--etebar-green);
	background: color-mix(in srgb, var(--etebar-green) 5%, var(--etebar-ivory));
	padding: 0.9rem 1rem;
}

.etebar-product__safety strong {
	color: var(--etebar-navy);
	font-size: 0.8rem;
}

.etebar-product__safety span {
	color: var(--etebar-gray);
	font-size: 0.75rem;
	line-height: 1.5;
}

.etebar-product__catalog-link {
	display: inline-block;
	margin-top: 1.5rem;
	font-size: 0.86rem;
}

/* Order Request */

.order-request-hero .container {
	max-width: 900px;
}

.order-request-hero__safety {
	display: inline-block;
	margin: 0.25rem 0 0;
	border-left: 2px solid var(--etebar-gold);
	padding-left: 0.85rem;
	color: var(--etebar-navy);
	font-size: 0.88rem;
	font-weight: 600;
}

.order-request-process {
	border-block: 1px solid var(--etebar-border);
	background: var(--etebar-paper);
	padding: 2rem 0;
}

.order-request-process .container {
	display: grid;
	grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.8fr);
	gap: 3rem;
	align-items: end;
}

.order-request-process__heading .eyebrow {
	margin-bottom: 0.4rem;
}

.order-request-process__heading h2 {
	margin: 0;
	font-size: clamp(1.4rem, 2.2vw, 2rem);
}

.order-request-process__steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin: 0;
	padding: 0;
	list-style: none;
}

.order-request-process__steps li {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	gap: 0.65rem;
	min-width: 0;
	border-left: 1px solid var(--etebar-border);
	padding: 0.2rem 1.25rem;
}

.order-request-process__steps li > span {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.68rem;
	font-weight: 600;
}

.order-request-process__steps p {
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.78rem;
	line-height: 1.45;
}

.order-request-process__steps strong {
	display: block;
	margin-bottom: 0.25rem;
	color: var(--etebar-navy);
	font-size: 0.86rem;
}

.order-request-content {
	padding-top: 4rem;
}

.order-request-layout {
	display: grid;
	grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
	gap: 3rem;
	align-items: start;
}

.order-request-summary {
	display: grid;
	gap: 2rem;
}

.order-request-item,
.order-request-panel,
.order-request-empty {
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 2rem;
}

.order-request-item {
	border-top: 3px solid var(--etebar-navy);
}

.order-request-item__label {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.67rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 0.65rem;
}

.order-request-item h2,
.order-request-empty h2 {
	margin-bottom: 0.75rem;
	font-size: 1.8rem;
}

.order-request-item__description,
.order-request-empty > p:not(.eyebrow) {
	color: var(--etebar-gray);
	font-size: 0.92rem;
}

.order-request-item__description p {
	margin-bottom: 1rem;
}

.special-request-guidance ul {
	margin: 1.25rem 0;
	padding-left: 1.2rem;
	color: var(--etebar-gray);
	font-size: 0.88rem;
}

.special-request-guidance li {
	margin-bottom: 0.55rem;
	padding-left: 0.2rem;
}

.special-request-guidance li::marker {
	color: var(--etebar-green);
}

.order-request-item__records {
	margin: 1.25rem 0;
	border-block: 1px solid var(--etebar-border);
}

.order-request-item__records div {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 0.8rem;
	padding: 0.65rem 0;
	border-bottom: 1px solid var(--etebar-border);
}

.order-request-item__records div:last-child {
	border-bottom: 0;
}

.order-request-item__records dt {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.order-request-item__records dd {
	margin: 0;
	font-size: 0.82rem;
	line-height: 1.5;
}

.order-request-terms {
	border-left: 2px solid var(--etebar-gold);
	padding-left: 1.25rem;
}

.order-request-terms h2 {
	margin-bottom: 0.55rem;
	font-size: 1.4rem;
}

.order-request-terms > p:last-child {
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.86rem;
}

.order-request-panel {
	padding: clamp(1.5rem, 3vw, 2.5rem);
}

.order-request-panel__intro {
	margin-bottom: 2rem;
	border-bottom: 1px solid var(--etebar-border);
	padding-bottom: 1.5rem;
}

.order-request-panel__intro h2 {
	margin-bottom: 0.7rem;
	font-size: 1.8rem;
}

.order-request-panel__intro > p:last-child {
	margin-bottom: 0;
	color: var(--etebar-gray);
	font-size: 0.88rem;
}

.order-request-form .order-request-form__group {
	min-width: 0;
	margin: 0;
	border: 0;
	border-bottom: 1px solid var(--etebar-border);
	padding: 0 0 1.5rem;
}

.order-request-form .order-request-form__group + .order-request-form__group {
	padding-top: 1.5rem;
}

.order-request-form .order-request-form__group:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.order-request-form__group legend {
	display: block;
	width: 100%;
	margin-bottom: 0.25rem;
	padding: 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.25;
}

.order-request-form__help {
	margin-bottom: 1rem;
	color: var(--etebar-gray);
	font-size: 0.78rem;
}

.order-request-form__wide {
	grid-column: 1 / -1;
}

.order-request-form label span em {
	margin-left: 0.3rem;
	color: var(--etebar-gray);
	font-size: 0.65rem;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.order-request-form input,
.order-request-form textarea {
	background: #fffefb;
}

.order-request-form textarea {
	resize: vertical;
}

.order-request-form input:focus,
.order-request-form textarea:focus {
	border-color: var(--etebar-green);
	outline: 3px solid color-mix(in srgb, var(--etebar-green) 18%, transparent);
	outline-offset: 1px;
}

.order-request-form [aria-invalid="true"] {
	border-color: var(--etebar-danger);
}

.order-request-errors {
	margin-bottom: 1.25rem;
	border-left: 4px solid var(--etebar-danger);
	background: color-mix(in srgb, var(--etebar-danger) 6%, var(--etebar-paper));
	padding: 0.9rem 1rem;
	color: var(--etebar-charcoal);
}

.order-request-errors strong {
	color: var(--etebar-danger);
}

.order-request-errors p {
	margin: 0.25rem 0 0;
	font-size: 0.82rem;
}

.order-request-field-error {
	display: block;
	margin-top: 0.3rem;
	color: var(--etebar-danger);
	font-size: 0.73rem;
	font-weight: 600;
}

.order-request-consent {
	display: grid !important;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 0.7rem;
	align-items: start;
	margin: 0.5rem 0 1rem !important;
	border: 0;
	padding: 0;
}

.order-request-consent input {
	width: 18px;
	height: 18px;
	min-height: 0;
	margin: 0.15rem 0 0;
	accent-color: var(--etebar-green);
}

.order-request-consent span {
	margin: 0 !important;
	color: var(--etebar-charcoal) !important;
	font-size: 0.83rem !important;
	line-height: 1.5;
}

.order-request-field-error--consent {
	margin: -0.65rem 0 1rem 2.7rem;
}

.order-request-submit {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-top: 1.25rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 1.25rem;
}

.order-request-submit p {
	max-width: 310px;
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.76rem;
	line-height: 1.45;
}

.order-request-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.order-request-panel__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.25rem;
	margin-top: 1.25rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 1rem;
}

.order-request-empty {
	max-width: 760px;
	margin-inline: auto;
	border-top: 3px solid var(--etebar-navy);
}

.order-request-empty .button-row {
	margin-top: 1.5rem;
}

.order-request-success {
	max-width: 760px;
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--etebar-green) 45%, var(--etebar-border));
	border-top: 3px solid var(--etebar-green);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: clamp(1.5rem, 4vw, 2.5rem);
}

.order-request-success h2 {
	margin-bottom: 0.75rem;
	font-size: 2rem;
}

.order-request-success > p:not(.eyebrow) {
	color: var(--etebar-gray);
}

.order-request-success .order-request-success__reference {
	display: inline-block;
	margin-bottom: 1rem;
	border: 1px solid var(--etebar-border);
	background: var(--etebar-ivory);
	padding: 0.45rem 0.65rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-mono);
	font-size: 0.8rem;
	font-weight: 600;
}

.order-request-success .button-row {
	margin-top: 1.5rem;
}

@media (min-width: 1025px) {
	.order-request-page .order-request-hero {
		padding: 5.25rem 0;
	}

	.order-request-page .order-request-hero__layout {
		display: grid;
		max-width: var(--etebar-container);
		grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.62fr);
		gap: 7rem;
		align-items: center;
	}

	.order-request-hero__intro h1 {
		max-width: 760px;
		font-size: clamp(3.6rem, 5.4vw, 5.4rem);
		line-height: 0.98;
	}

	.order-request-hero__intro > p:last-of-type {
		max-width: 680px;
		margin-bottom: 0;
		color: var(--etebar-gray);
		font-size: 1.05rem;
		line-height: 1.7;
	}

	.order-request-hero__record {
		display: grid;
		gap: 0.75rem;
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		background: var(--etebar-ivory);
		padding: 1.75rem;
		box-shadow: 0 22px 55px rgb(7 31 48 / 6%);
	}

	.order-request-hero__record p {
		margin: 0;
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.65rem;
		font-weight: 600;
		letter-spacing: 0.1em;
		text-transform: uppercase;
	}

	.order-request-hero__record strong {
		color: var(--etebar-navy);
		font-family: var(--etebar-serif);
		font-size: 1.55rem;
		line-height: 1.15;
	}

	.order-request-hero__record span {
		border-top: 1px solid var(--etebar-border);
		padding-top: 0.85rem;
		color: var(--etebar-gray);
		font-size: 0.78rem;
		line-height: 1.6;
	}

	.order-request-process {
		padding: 0;
	}

	.order-request-process .container {
		grid-template-columns: minmax(250px, 0.7fr) minmax(0, 1.8fr);
		gap: 4rem;
	}

	.order-request-process__heading {
		padding: 2rem 0;
	}

	.order-request-process__steps li {
		min-height: 138px;
		grid-template-columns: 1fr;
		align-content: center;
		gap: 1rem;
		padding: 1.5rem;
	}

	.order-request-process__steps li > span {
		letter-spacing: 0.08em;
	}

	.order-request-process__steps p {
		font-size: 0.8rem;
		line-height: 1.55;
	}

	.order-request-content {
		background: var(--etebar-muted);
		padding: 5rem 0 6rem;
	}

	.order-request-layout {
		grid-template-columns: minmax(330px, 0.72fr) minmax(0, 1.28fr);
		gap: 2.5rem;
	}

	.order-request-summary {
		gap: 1.5rem;
		position: sticky;
		top: 7rem;
	}

	.order-request-item {
		border-radius: 0;
		border-top-color: var(--etebar-gold);
		padding: 2rem;
		box-shadow: 0 18px 45px rgb(7 31 48 / 5%);
	}

	.order-request-item h2 {
		font-size: 2rem;
		line-height: 1.1;
	}

	.order-request-terms {
		border: 1px solid var(--etebar-border);
		border-left: 3px solid var(--etebar-green);
		background: color-mix(in srgb, var(--etebar-green) 5%, var(--etebar-paper));
		padding: 1.35rem 1.5rem;
	}

	.order-request-panel {
		border-radius: 0;
		border-top: 3px solid var(--etebar-navy);
		padding: 0;
		box-shadow: 0 22px 55px rgb(7 31 48 / 6%);
	}

	.order-request-panel__intro {
		margin: 0;
		background: color-mix(in srgb, var(--etebar-navy) 3%, var(--etebar-paper));
		padding: 2rem 2.25rem 1.75rem;
	}

	.order-request-panel__intro h2 {
		font-size: 2.1rem;
	}

	.order-request-form {
		counter-reset: request-section;
	}

	.order-request-form .order-request-form__group {
		counter-increment: request-section;
		padding: 2rem 2.25rem;
	}

	.order-request-form .order-request-form__group + .order-request-form__group {
		padding-top: 2rem;
	}

	.order-request-form .order-request-form__group:last-child {
		padding-bottom: 2.25rem;
	}

	.order-request-form__group legend::before {
		content: counter(request-section) " · ";
		color: var(--etebar-green);
		font-family: var(--etebar-mono);
		font-size: 0.68rem;
		letter-spacing: 0.08em;
	}

	.order-request-form__help {
		margin: 0.4rem 0 1.35rem;
	}

	.order-request-form .field-grid {
		gap: 1.25rem;
	}

	.order-request-form input,
	.order-request-form textarea {
		border-color: color-mix(in srgb, var(--etebar-border) 88%, var(--etebar-navy));
	}

	.order-request-form__confirmation {
		background: color-mix(in srgb, var(--etebar-green) 4%, var(--etebar-ivory));
	}

	.order-request-consent {
		border-left: 3px solid var(--etebar-green);
		background: var(--etebar-paper);
		padding: 1rem 1.1rem;
	}

	.order-request-submit {
		justify-content: space-between;
	}

	.order-request-panel__links {
		justify-content: space-between;
		margin: 0;
		padding: 1.25rem 2.25rem;
	}

	.special-request-page .order-request-hero__record {
		background: color-mix(in srgb, var(--etebar-green) 4%, var(--etebar-ivory));
	}
}

.woocommerce-cart .cart-empty {
	margin: 0;
	border: 1px solid var(--etebar-border);
	border-left: 4px solid var(--etebar-green);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 1.25rem;
}

.woocommerce-cart .return-to-shop {
	margin-top: 1rem;
}

.woocommerce table.shop_table {
	border-color: var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border-color: var(--etebar-border);
}

.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce-checkout #payment {
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: 1.5rem;
}

.woocommerce-checkout #payment {
	background: var(--etebar-paper);
}

.woocommerce-checkout #payment div.payment_box {
	background: var(--etebar-muted);
	color: var(--etebar-charcoal);
}

.woocommerce-checkout #payment div.payment_box::before {
	border-bottom-color: var(--etebar-muted);
}

.woocommerce form .form-row label {
	color: var(--etebar-navy);
	font-size: 0.82rem;
	font-weight: 600;
}

.woocommerce form .form-row .required {
	color: var(--etebar-danger);
}

.etebar-order-received-note {
	margin: 1.5rem 0;
	border: 1px solid var(--etebar-border);
	border-left: 4px solid var(--etebar-gold);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: clamp(1.25rem, 3vw, 2rem);
}

.etebar-order-received-note h2 {
	margin: 0.25rem 0 0.65rem;
	color: var(--etebar-navy);
}

.etebar-order-received-note p:last-child {
	margin-bottom: 0;
}

.select2-container--default .select2-selection--single {
	height: 46px;
	border-color: var(--etebar-border);
	border-radius: 5px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 44px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 44px;
}

/* Native customer account */

.woocommerce-account .entry__header {
	margin-bottom: clamp(1.5rem, 3vw, 2.25rem);
}

.woocommerce-account article.entry {
	max-width: none;
}

.woocommerce-account .entry__content {
	width: 100%;
	max-width: none;
}

.woocommerce-account .entry__header h1 {
	font-weight: 500;
}

body.logged-in.woocommerce-account .site-main {
	padding-block-start: 68px;
}

.woocommerce-account .entry__content > .woocommerce {
	font-family: var(--etebar-sans);
}

.woocommerce-account .entry__content > .woocommerce > h2,
.woocommerce-account .woocommerce-MyAccount-content h2 {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-weight: 500;
}

.etebar-account-auth-page .site-main {
	padding-block-start: 68px;
}

.etebar-account-auth-page .entry__header {
	width: 100%;
	max-width: 560px;
	margin-bottom: 1.25rem;
	margin-inline: auto;
	text-align: center;
}

.etebar-account-auth-page .entry__content > .woocommerce {
	width: min(100%, 560px);
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--etebar-border) 88%, var(--etebar-gold));
	border-block-start: 3px solid var(--etebar-gold);
	border-radius: 12px;
	background: var(--etebar-paper);
	padding: clamp(1.1rem, 3vw, 1.65rem);
	box-shadow: 0 14px 34px rgb(9 34 52 / 8%);
}

.etebar-account-intro {
	margin-bottom: 1rem;
	text-align: center;
}

.etebar-account-intro .eyebrow {
	justify-content: center;
	margin-bottom: 0.55rem;
}

.etebar-account-intro h2 {
	margin: 0 0 0.35rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: clamp(1.25rem, 3vw, 1.55rem);
	font-weight: 600;
}

.etebar-account-intro p:last-child {
	max-width: 44ch;
	margin: 0;
	margin-inline: auto;
	color: var(--etebar-gray);
}

.etebar-account-tabs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.25rem;
	margin-bottom: 1.1rem;
	border: 1px solid var(--etebar-border);
	border-radius: 9px;
	background: var(--etebar-cream);
	padding: 0.25rem;
}

.etebar-account-tabs__tab {
	min-width: 0;
	min-height: 46px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: var(--etebar-gray-dark);
	font-family: var(--etebar-sans);
	font-size: 0.94rem;
	font-weight: 600;
	line-height: 1.3;
	cursor: pointer;
}

.etebar-account-tabs__tab[aria-selected="true"] {
	background: #fff;
	color: var(--etebar-navy);
	box-shadow: inset 0 -2px var(--etebar-gold), 0 1px 4px rgb(9 34 52 / 8%);
}

.etebar-account-tabs__tab:hover {
	color: var(--etebar-navy);
}

.etebar-account-tabs__tab:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-navy));
	outline-offset: 2px;
}

.etebar-account-social {
	margin-top: 0;
}

.etebar-account-social .nsl-container,
.etebar-account-social .nsl-container-buttons,
.etebar-account-social a[data-plugin="nsl"][data-provider="google"] {
	width: 100%;
	max-width: none;
}

.etebar-account-social .nsl-container {
	margin: 0;
}

.etebar-account-social .nsl-button-label-container {
	font-family: var(--etebar-sans);
	font-weight: 600;
}

.etebar-account-social a[data-plugin="nsl"][data-provider="google"]:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-navy));
	outline-offset: 3px;
}

.etebar-account-email-divider {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0.8rem 0 1rem;
	color: var(--etebar-gray);
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
}

.etebar-account-email-divider::before,
.etebar-account-email-divider::after {
	flex: 1 1 auto;
	border-block-start: 1px solid var(--etebar-border);
	content: "";
}

.etebar-account-email-divider span {
	flex: 0 1 auto;
}

.woocommerce-account #customer_login {
	display: block;
}

.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after {
	display: none;
}

.woocommerce-account #customer_login > div,
.woocommerce-account form.login,
.woocommerce-account form.register,
.woocommerce-account form.lost_reset_password {
	width: 100%;
	margin: 0;
}

.woocommerce-account #customer_login > div {
	float: none;
	padding: 0;
}

.woocommerce-account form.login,
.woocommerce-account form.register {
	border: 0;
	padding: 0;
}

.etebar-account-auth-page #customer_login .form-row {
	margin-bottom: 0.85rem;
}

.woocommerce-account .woocommerce-form-row label,
.woocommerce-account .woocommerce-form__label,
.woocommerce-account .woocommerce-MyAccount-navigation a,
.woocommerce-account .button {
	font-weight: 600 !important;
}

.woocommerce-account .woocommerce-form-row input.input-text {
	min-height: 48px;
	border-color: color-mix(in srgb, var(--etebar-border) 82%, var(--etebar-navy));
	border-radius: 7px;
	background: #fff;
}

.woocommerce-account .woocommerce-form-row input.input-text:focus {
	border-color: var(--etebar-gold);
	box-shadow: 0 0 0 3px rgb(215 174 95 / 18%);
	outline: 0;
}

.woocommerce-account .password-input input.input-text {
	padding-inline-end: 2.5rem !important;
}

.woocommerce-account .password-input .show-password-input {
	right: auto;
	left: auto;
	inset-inline-end: 0.7em;
}

@media (max-width: 800px) {
	.woocommerce-account .password-input input.input-text {
		padding-inline-end: 3.5rem !important;
	}

	.woocommerce-account .password-input .show-password-input {
		inset-inline-end: 2px;
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
	}
}

.woocommerce-account .woocommerce-form-login__rememberme {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	gap: 0.5rem;
	margin-inline-end: 1rem;
}

.woocommerce-account .lost_password {
	margin: 1rem 0 0;
}

.etebar-account-auth-page .lost_password a {
	color: var(--etebar-navy);
	text-underline-offset: 0.18em;
}

/*
 * Account text links only. Without the :not(.button) guard this rule also
 * repainted button links: it out-specifies the `.woocommerce a.button` rule
 * for `color` but not for `background`, so a button kept its navy background
 * while its label was forced to --etebar-green (#173a55, itself redefined to a
 * navy shade further down this file). That produced navy-on-navy at about
 * 1.24:1 on the account Special Requests and Overview buttons. Excluding
 * .button lets each button keep its own label colour; the specificity of this
 * selector is unchanged, so ordinary text links are not affected.
 */
.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
	color: var(--etebar-green);
}

.etebar-account-auth-page .woocommerce-form-login__submit,
.etebar-account-auth-page .woocommerce-form-register__submit {
	width: 100%;
	min-height: 48px;
	margin: 0.45rem 0 0;
}

.woocommerce-account .woocommerce-notices-wrapper:not(:empty) {
	margin-bottom: 1rem;
}

.woocommerce-account :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) {
	margin-block: 0 1rem;
	border: 1px solid color-mix(in srgb, var(--etebar-border) 82%, var(--etebar-gold));
	border-inline-start: 4px solid var(--etebar-gold);
	border-radius: 8px;
	background: color-mix(in srgb, var(--etebar-paper) 92%, var(--etebar-cream));
	padding: 0.85rem 1rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-weight: 500;
	line-height: 1.55;
	list-style: none;
}

.woocommerce-account .woocommerce-error {
	border-inline-start-color: var(--etebar-danger);
}

.woocommerce-account :is(.woocommerce-message, .woocommerce-info, .woocommerce-error)::before {
	display: none;
	content: none;
}

.woocommerce-account .woocommerce-error li {
	margin: 0;
}

body.logged-in.woocommerce-account .entry__content > .woocommerce {
	display: grid;
	grid-template-columns: minmax(210px, 250px) minmax(0, 1fr);
	gap: clamp(1rem, 2.5vw, 2rem);
	align-items: start;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	border: 1px solid var(--etebar-border);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	grid-column: 1;
	grid-row: 1;
	padding: 0.5rem;
}

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

.woocommerce-account .woocommerce-MyAccount-navigation li + li {
	border-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block;
	min-height: 44px;
	border-radius: 7px;
	padding: 0.7rem 0.8rem;
	color: var(--etebar-navy);
	font-weight: 650;
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
	color: var(--etebar-navy);
	text-decoration: none;
}

/* The section the customer is in, marked from WooCommerce's own aria-current
   rather than from the is-active class alone, so what is announced and what is
   shown come from one source. */
.woocommerce-account .woocommerce-MyAccount-navigation a[aria-current="page"] {
	background: color-mix(in srgb, var(--etebar-navy) 8%, var(--etebar-paper));
	box-shadow: inset 3px 0 0 var(--etebar-gold);
	color: var(--etebar-navy);
	font-weight: 750;
}

.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: -1px;
}

/* Sign out is the one destructive-ish entry; it is quieter than the sections. */
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 0.35rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 0.35rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
	color: var(--etebar-gray);
	font-weight: 600;
}

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

   The summary is the only part of this that is mobile-only. On desktop it is
   removed entirely and the list is the sidebar it has always been. */

.etebar-account-nav__summary {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-content {
	min-width: 0;
	grid-column: 2;
	grid-row: 1;
	padding: clamp(1.25rem, 3vw, 2rem);
}

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

/* ==========================================================================
   Account V2 — overview.

   Three short blocks, not a dashboard of cards: who the customer is, what the
   account holds, and where they go next. The summary is a description list
   because that is what it is, and the whole section inherits the account
   content box rather than drawing another one inside it.
   ========================================================================== */

.etebar-account-overview .eyebrow {
	margin-bottom: 0.5rem;
}

.etebar-account-overview h2 {
	margin: 0;
	font-size: clamp(1.5rem, 4.5vw, 1.9rem);
	line-height: 1.2;
}

.etebar-account-overview__intro {
	max-width: 58ch;
	margin: 0.6rem 0 0;
	color: var(--etebar-gray);
	font-size: 1rem;
	line-height: 1.55;
}

.etebar-account-overview__summary {
	display: grid;
	gap: 0.85rem;
	margin: 1.5rem 0 0;
	border-block: 1px solid var(--etebar-border);
	padding-block: 1.1rem;
}

.etebar-account-overview__summary > div {
	margin: 0;
}

.etebar-account-overview__summary dt {
	margin: 0 0 0.2rem;
	color: var(--etebar-gray);
	font-size: 0.85rem;
	font-weight: 650;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.etebar-account-overview__summary dd {
	margin: 0;
	color: var(--etebar-navy);
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

/* A customer with nothing saved gets a sentence, not a zero. */
.etebar-account-overview__none {
	color: var(--etebar-gray);
	font-size: 1rem;
	font-weight: 500;
}

.etebar-account-overview__summary-wide dd {
	font-size: 1.05rem;
}

.etebar-account-overview__order {
	margin-top: 1.35rem;
}

.etebar-account-overview__order-title,
.etebar-account-overview__empty {
	margin: 1.35rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.95rem;
	line-height: 1.55;
}

.etebar-account-overview__order-title {
	margin: 0 0 0.6rem;
	font-weight: 650;
}

.etebar-account-overview__order-row {
	display: grid;
	gap: 0.25rem 1rem;
	border: 1px solid var(--etebar-border);
	border-radius: 10px;
	padding: 0.9rem 1rem;
	background: var(--etebar-ivory);
	text-decoration: none;
}

.etebar-account-overview__order-row:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
	text-decoration: none;
}

.etebar-account-overview__order-row:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 2px;
}

.etebar-account-overview__order-number {
	color: var(--etebar-navy);
	font-weight: 700;
}

.etebar-account-overview__order-meta,
.etebar-account-overview__order-status {
	color: var(--etebar-gray);
	font-size: 0.92rem;
}

.etebar-account-overview__order-total {
	color: var(--etebar-navy);
	font-weight: 700;
}

.etebar-account-overview__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	align-items: center;
	margin-top: 1.5rem;
}

.etebar-account-overview__actions .button {
	flex: 1 1 100%;
}

.etebar-account-overview__shop {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	font-weight: 650;
}

.etebar-saved-cart { margin-top: 1.35rem; padding: 1rem; border: 1px solid var(--etebar-border); border-inline-start: 3px solid var(--etebar-gold); border-radius: 10px; background: var(--etebar-ivory); }
.etebar-saved-cart .eyebrow { margin: 0 0 .35rem; }.etebar-saved-cart h2 { margin: 0; font-size: 1.12rem; }.etebar-saved-cart p { margin: .45rem 0 0; color: var(--etebar-gray); line-height: 1.5; }.etebar-saved-cart > div { display:flex; flex-wrap:wrap; gap:.65rem; align-items:center; margin-top:1rem; }.etebar-saved-cart form { margin:0; }.etebar-saved-cart a,.etebar-saved-cart button { min-height:44px; padding:10px 14px; font:inherit; font-weight:650; }.etebar-saved-cart button { border:1px solid var(--etebar-border); background:transparent; color:var(--etebar-navy); cursor:pointer; }.etebar-saved-cart :is(a,button):focus-visible { outline:3px solid var(--etebar-gold); outline-offset:3px; } html[dir="rtl"] .etebar-saved-cart { letter-spacing:normal; }

.etebar-communication-preferences > header {
	max-width: 680px;
	margin-bottom: 1.5rem;
}

.etebar-communication-preferences > header p:last-child {
	color: var(--etebar-gray);
}

.etebar-communication-preferences form {
	max-width: 680px;
}

.etebar-communication-preferences small,
.etebar-communication-preferences__note {
	display: block;
	margin-top: 0.35rem;
	color: var(--etebar-gray);
	font-size: 0.82rem;
	line-height: 1.55;
}

.etebar-communication-preferences .optional {
	margin-inline-start: 0.35rem;
	color: var(--etebar-gray);
	font-weight: 500;
}

.etebar-communication-preferences__consent {
	display: grid;
	grid-template-columns: 1.15rem minmax(0, 1fr);
	gap: 0.7rem;
	align-items: start;
	margin-block: 1.25rem 0.5rem;
	color: var(--etebar-navy);
	font-weight: 500;
}

.etebar-communication-preferences__consent input {
	width: 1.15rem;
	height: 1.15rem;
	margin-top: 0.15rem;
	accent-color: var(--etebar-navy);
}

.etebar-communication-preferences__note {
	margin-bottom: 1.25rem;
}

/* ==========================================================================
   Account V2 — Orders.

   WooCommerce's orders table stays exactly as it renders: same markup, same
   columns, same native View action, same status text. Only its presentation
   changes, and only below the desktop breakpoint, where five columns squeezed
   into ~330px is unreadable. There the table's own `shop_table_responsive`
   contract is used -- every cell already carries a data-title -- so each order
   becomes a stacked record with its label beside each value. No order
   semantics are altered and nothing is hidden.
   ========================================================================== */

.woocommerce-account .woocommerce-orders-table,
.woocommerce-account .woocommerce-table--order-details {
	font-size: 0.9rem;
}

.woocommerce-account .woocommerce-orders-table {
	width: 100%;
	border-collapse: collapse;
}

.woocommerce-account .woocommerce-orders-table th {
	color: var(--etebar-gray);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-align: start;
	text-transform: uppercase;
}

.woocommerce-account .woocommerce-orders-table td {
	vertical-align: middle;
	overflow-wrap: anywhere;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number {
	font-weight: 400;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a {
	color: var(--etebar-navy);
	font-weight: 700;
}

.woocommerce-account .woocommerce-orders-table__cell-order-status {
	color: var(--etebar-navy);
	font-weight: 650;
}

.etebar-fulfilment-chip {
	display: inline-flex;
	max-width: 100%;
	min-height: 28px;
	align-items: center;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 65%, var(--etebar-border));
	border-radius: 999px;
	padding: 0.2rem 0.65rem;
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-ivory));
	color: var(--etebar-navy);
	font-size: 0.78rem;
	font-weight: 700;
	line-height: 1.35;
	text-align: start;
	white-space: normal;
}

.etebar-fulfilment-chip.is-terminal {
	border-color: color-mix(in srgb, var(--etebar-danger) 45%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-danger) 7%, var(--etebar-ivory));
}

[dir="rtl"] .woocommerce-account .woocommerce-orders-table th,
[dir="rtl"] .woocommerce-account .woocommerce-orders-table td::before,
[dir="rtl"] .etebar-fulfilment-chip {
	letter-spacing: 0;
	text-transform: none;
}

.woocommerce-account .woocommerce-orders-table__cell-order-actions a.button {
	min-height: 40px;
	padding: 0.45rem 0.9rem;
	font-size: 0.85rem;
}

/* Orders empty state: WooCommerce's own notice, wearing the account's clothes. */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
	display: block;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button {
	margin-inline-start: 0;
	margin-block-start: 0.75rem;
}

@media (max-width: 800px) {
	.woocommerce-account .woocommerce-orders-table thead {
		/* Each cell carries its own label below, so the header row would only
		   repeat it. Clipped rather than display:none so the column names stay
		   available to assistive technology. */
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}

	/* The order number is a <th scope="row">, not a cell, so it has to be
	   named here too or it stays a table-cell inside a stacked row. */
	.woocommerce-account .woocommerce-orders-table,
	.woocommerce-account .woocommerce-orders-table tbody,
	.woocommerce-account .woocommerce-orders-table tr,
	.woocommerce-account .woocommerce-orders-table tbody th,
	.woocommerce-account .woocommerce-orders-table td {
		display: block;
		width: auto;
	}

	.woocommerce-account .woocommerce-orders-table tr {
		margin-bottom: 0.85rem;
		border: 1px solid var(--etebar-border);
		border-radius: 10px;
		padding: 0.9rem 1rem;
		background: var(--etebar-ivory);
	}

	.woocommerce-account .woocommerce-orders-table tr:last-child {
		margin-bottom: 0;
	}

	.woocommerce-account .woocommerce-orders-table td {
		display: flex;
		gap: 1rem;
		align-items: baseline;
		justify-content: space-between;
		border: 0;
		padding: 0.3rem 0;
		text-align: end;
	}

	.woocommerce-account .woocommerce-orders-table td::before {
		flex-shrink: 0;
		color: var(--etebar-gray);
		content: attr(data-title);
		font-size: 0.8rem;
		font-weight: 650;
		letter-spacing: 0.04em;
		text-align: start;
		text-transform: uppercase;
	}

	/* The order number leads the record rather than sitting in a label pair. */
	.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-number {
		display: block;
		margin-bottom: 0.35rem;
		border: 0;
		padding: 0 0 0.35rem;
		font-size: 1.05rem;
		text-align: start;
	}

	.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-number::before {
		display: none;
	}

	.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions {
		display: block;
		margin-top: 0.6rem;
		text-align: start;
	}

	.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions::before {
		display: none;
	}

	.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions a.button {
		display: inline-flex;
		width: 100%;
		justify-content: center;
	}
}

/* ==========================================================================
   Account V2 — forms (Account details, Addresses, WhatsApp preferences).

   One treatment for every account form so the three screens read as one area
   rather than three plugins. WooCommerce's own update behaviour, validation
   and nonces are untouched.
   ========================================================================== */

.woocommerce-account .woocommerce-MyAccount-content form.edit-account,
.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-address-fields {
	max-width: 680px;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row {
	margin-bottom: 1.15rem;
}

.woocommerce-account .woocommerce-MyAccount-content label {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--etebar-navy);
	font-size: 0.95rem;
	font-weight: 650;
	line-height: 1.35;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row input.input-text,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields input.input-text {
	width: 100%;
	min-height: 3rem;
	box-sizing: border-box;
	border: 1px solid var(--etebar-border);
	border-radius: 10px;
	padding: 0.8rem 1rem;
	background: var(--etebar-paper);
	font: 400 1rem/1.45 var(--etebar-sans);
}

.woocommerce-account .woocommerce-MyAccount-content input.input-text:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 1px;
}

.woocommerce-account .woocommerce-MyAccount-content em,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row span.optional {
	color: var(--etebar-gray);
	font-size: 0.85rem;
	font-style: normal;
	font-weight: 500;
}

/* The password block is a distinct task inside the same form, so it is given a
   rule and a heading weight instead of running on from the name fields. */
.woocommerce-account .woocommerce-MyAccount-content fieldset {
	margin: 1.75rem 0 1.25rem;
	border: 0;
	border-top: 1px solid var(--etebar-border);
	padding: 1.5rem 0 0;
}

.woocommerce-account .woocommerce-MyAccount-content fieldset legend {
	padding: 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.2rem;
	line-height: 1.3;
}

.woocommerce-account .woocommerce-MyAccount-content form .button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button {
	min-height: 48px;
	border-radius: 8px;
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
	font-weight: 650;
}

.woocommerce-account .woocommerce-MyAccount-content form .button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:hover {
	background: var(--etebar-navy-dark);
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 0.75rem;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2 {
	margin: 0;
}

.woocommerce-account .woocommerce-MyAccount-content address {
	color: var(--etebar-charcoal);
	font-style: normal;
	line-height: 1.6;
}

@media (max-width: 800px) {
	.woocommerce-account .woocommerce-MyAccount-content form .button,
	.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button {
		width: 100%;
	}
}

@media (min-width: 801px) {
	.etebar-account-overview__summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.25rem 2rem;
	}

	.etebar-account-overview__summary-wide {
		grid-column: 1 / -1;
	}

	.etebar-account-overview__order-row {
		grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) auto;
		align-items: center;
	}

	.etebar-account-overview__order-total {
		text-align: end;
	}

	.etebar-account-overview__actions .button {
		flex: 0 0 auto;
	}
}

@media (max-width: 800px) {
	body.logged-in.woocommerce-account .entry__content > .woocommerce {
		grid-template-columns: 1fr;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		grid-column: 1;
		grid-row: auto;
	}

	/* ---------- Account navigation as a disclosure ----------

	   Seven links stood 397px tall above the content of every account page,
	   which is nearly half a phone viewport spent on navigation. Collapsed,
	   the same navigation is one row naming the section the customer is in.
	   The browser owns the toggle, so the keyboard and assistive behaviour are
	   the native ones rather than a reimplementation. */

	.woocommerce-account .woocommerce-MyAccount-navigation {
		padding: 0.35rem;
	}

	.etebar-account-nav__summary {
		display: flex;
		min-height: 52px;
		align-items: center;
		gap: 0.6rem;
		border-radius: 8px;
		padding: 0.6rem 0.8rem;
		color: var(--etebar-navy);
		cursor: pointer;
		font-family: var(--etebar-sans);
		font-weight: 700;
		list-style: none;
	}

	/* Safari draws its own disclosure triangle without this. */
	.etebar-account-nav__summary::-webkit-details-marker {
		display: none;
	}

	.etebar-account-nav__summary:focus-visible {
		outline: 3px solid var(--etebar-gold);
		outline-offset: -1px;
	}

	.etebar-account-nav__summary-label {
		flex-shrink: 0;
		color: var(--etebar-gray);
		font-size: 0.82rem;
		font-weight: 650;
		letter-spacing: 0.04em;
		text-transform: uppercase;
	}

	.etebar-account-nav__summary-section {
		min-width: 0;
		flex: 1 1 auto;
		overflow: hidden;
		font-size: 1rem;
		text-align: end;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.etebar-account-nav__chevron {
		width: 20px;
		height: 20px;
		flex-shrink: 0;
		color: var(--etebar-gray);
		transition: transform 160ms ease;
	}

	.etebar-account-nav__disclosure[open] .etebar-account-nav__chevron {
		transform: rotate(180deg);
	}

	.etebar-account-nav__disclosure[open] .etebar-account-nav__summary {
		margin-bottom: 0.25rem;
		border-bottom: 1px solid var(--etebar-border);
		border-radius: 8px 8px 0 0;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation a {
		display: flex;
		min-height: 48px;
		align-items: center;
	}
}

@media (max-width: 430px) {
	.etebar-account-auth-page .site-main {
		padding-block-start: 50px;
	}

	body.logged-in.woocommerce-account .site-main {
		padding-block-start: 50px;
	}

	.etebar-account-auth-page .entry__header {
		margin-bottom: 1rem;
	}

	.etebar-account-auth-page .entry__content > .woocommerce {
		width: 100%;
		padding: 1.1rem;
	}

	.etebar-account-tabs__tab {
		padding-inline: 0.55rem;
		font-size: 0.88rem;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		padding: 1.1rem;
	}
}

@media (min-width: 801px) {
	.site-header__inner {
		min-height: 86px;
	}

	.site-nav__list {
		gap: clamp(1rem, 1.55vw, 1.65rem);
	}

	.site-nav__list a {
		font-size: 0.84rem;
		letter-spacing: 0.01em;
	}

	.home .hero {
		background:
			radial-gradient(circle at 82% 48%, rgb(36 99 71 / 24%), transparent 30%),
			linear-gradient(115deg, var(--etebar-navy) 0%, var(--etebar-navy-dark) 100%);
	}

	.home .hero__grid-pattern {
		background-image: linear-gradient(rgb(248 244 236 / 4%) 1px, transparent 1px), linear-gradient(90deg, rgb(248 244 236 / 4%) 1px, transparent 1px);
		background-size: 64px 64px;
		mask-image: linear-gradient(90deg, #000 0%, rgb(0 0 0 / 35%) 67%, transparent 100%);
	}

	.home .hero__layout {
		grid-template-columns: minmax(0, 1.12fr) minmax(390px, 0.88fr);
		gap: clamp(4.5rem, 8vw, 8rem);
		padding-top: clamp(5rem, 6vw, 5.75rem);
		padding-bottom: 7.75rem;
	}

	.home .hero__content {
		max-width: 720px;
	}

	.home .hero h1 {
		max-width: 720px;
		margin-bottom: 1.75rem;
		font-size: clamp(3.7rem, 4.8vw, 4.85rem);
		font-weight: 600;
		line-height: 0.99;
	}

	.home .hero__lead {
		max-width: 630px;
		margin-bottom: 2rem;
		font-size: 1.06rem;
		line-height: 1.8;
	}

	.home .hero .button {
		min-height: 51px;
		padding-inline: 1.45rem;
	}

	.home .hero__secondary-links {
		margin-top: 1.4rem;
	}

	.home .hero__assurance {
		gap: 1.5rem;
		margin-top: 3.25rem;
	}

	.home .hero__assurance div {
		padding-left: 1rem;
	}

	.home .hero__assurance dt {
		font-size: 0.76rem;
		letter-spacing: 0.03em;
	}

	.home .hero__assurance dd {
		font-size: 0.7rem;
	}

	.home .section {
		padding-top: 8rem;
		padding-bottom: 8rem;
	}

	.home .section-heading h2 {
		font-size: clamp(2.65rem, 3.6vw, 3.65rem);
	}

	.home .section-heading > p:last-child {
		max-width: 680px;
		font-size: 1.03rem;
		line-height: 1.75;
	}

	.home .order-preview {
		transform: translateY(0.75rem);
	}

	.home #how-it-works {
		background: var(--etebar-paper);
	}

	.home #how-it-works .section-heading {
		display: grid;
		max-width: none;
		grid-template-columns: minmax(0, 0.9fr) minmax(360px, 0.6fr);
		column-gap: 7rem;
		align-items: end;
	}

	.home #how-it-works .section-heading .eyebrow {
		grid-column: 1 / -1;
	}

	.home #how-it-works .section-heading h2 {
		margin-bottom: 0;
	}

	.home .process-list {
		grid-template-columns: repeat(4, 1fr);
		margin-top: 4rem;
		margin-bottom: 2.75rem;
		border-top-color: color-mix(in srgb, var(--etebar-border) 80%, transparent);
	}

	.home .process-list li,
	.home .process-list li:nth-child(even) {
		display: block;
		min-height: 245px;
		padding: 2rem 1.7rem;
		border-right: 1px solid var(--etebar-border);
		background: linear-gradient(180deg, rgb(240 233 220 / 18%), transparent 42%);
	}

	.home .process-list li:first-child {
		padding-left: 0;
		background: transparent;
	}

	.home .process-list li:last-child {
		border-right: 0;
	}

	.home .process-list > li > span {
		width: auto;
		height: auto;
		margin-bottom: 3rem;
		border: 0;
		background: transparent;
		color: var(--etebar-green);
		font-size: 0.66rem;
		letter-spacing: 0.08em;
	}

	.home .process-list h3 {
		font-size: 1.35rem;
		line-height: 1.2;
	}

	.home .process-list p {
		font-size: 0.84rem;
		line-height: 1.7;
	}

	.home #categories {
		background: var(--etebar-muted);
	}

	.home .category-grid {
		gap: 0;
		margin-top: 4rem;
		border-top: 1px solid var(--etebar-border);
		border-left: 1px solid var(--etebar-border);
		box-shadow: 0 22px 55px rgb(7 31 48 / 5%);
	}

	.home .category-card {
		min-height: 305px;
		border-width: 0 1px 1px 0;
		border-radius: 0;
		padding: 2rem;
		transition: background-color 180ms ease, box-shadow 180ms ease;
	}

	.home .category-card:hover {
		border-color: var(--etebar-border);
		background: color-mix(in srgb, var(--etebar-green) 4%, var(--etebar-paper));
		box-shadow: inset 0 3px 0 var(--etebar-gold);
	}

	.home .category-card__number {
		letter-spacing: 0.08em;
	}

	.home .category-card h3,
	.home .category-request h3 {
		margin-top: 1.35rem;
		font-size: 1.42rem;
	}

	.home .category-card > p,
	.home .category-request p {
		font-size: 0.84rem;
		line-height: 1.7;
	}

	.home .category-card .card-link {
		border: 0;
		border-top: 1px solid var(--etebar-border);
		border-radius: 0;
		padding: 0.85rem 0 0;
		color: var(--etebar-green);
	}

	.home .category-card .card-link:hover {
		background: transparent;
		color: var(--etebar-navy);
	}

	.home .category-request {
		border: 0;
		border-right: 1px solid var(--etebar-border);
		border-bottom: 1px solid var(--etebar-border);
		border-radius: 0;
		background: color-mix(in srgb, var(--etebar-green) 7%, var(--etebar-paper));
		padding: 2rem;
	}

	.home .category-grid__footer {
		margin-top: 2.5rem;
	}

	.home #special-request {
		position: relative;
		background: var(--etebar-ivory);
	}

	.home .special-layout {
		grid-template-columns: minmax(0, 0.95fr) minmax(420px, 0.75fr);
		align-items: center;
	}

	.home .special-layout > div > p {
		max-width: 620px;
		margin-top: 2rem;
		border-left: 2px solid var(--etebar-gold);
		padding-left: 1.25rem;
	}

	.home .request-preview {
		border-color: color-mix(in srgb, var(--etebar-border) 80%, transparent);
		border-radius: 16px;
		padding: 2.4rem;
		box-shadow: 0 24px 60px rgb(7 31 48 / 8%);
	}

	.home .request-preview h3 {
		font-size: 1.85rem;
	}

	.home #delivery-proof {
		background:
			linear-gradient(90deg, var(--etebar-paper) 0 62%, color-mix(in srgb, var(--etebar-muted) 62%, var(--etebar-paper)) 62%);
	}

	.home .proof-layout {
		grid-template-columns: minmax(0, 1fr) minmax(390px, 0.72fr);
		align-items: center;
	}

	.home .proof-steps {
		margin-top: 3rem;
	}

	.home .proof-steps li {
		padding-block: 1.15rem;
	}

	.home .proof-record {
		border-radius: 2px;
		padding: 2.4rem;
		box-shadow: 0 20px 50px rgb(7 31 48 / 7%);
	}

	.home .support-section {
		background: var(--etebar-paper);
	}

	.home .support-panel--whatsapp {
		border: 0;
		border-radius: 16px;
		background: var(--etebar-navy);
		padding: 3.5rem;
		color: rgb(248 244 236 / 76%);
		box-shadow: 0 24px 60px rgb(7 31 48 / 12%);
	}

	.home .support-panel h2 {
		color: var(--etebar-paper);
		font-size: 2.45rem;
	}

	.home .support-panel__content > p:not(.eyebrow) {
		color: rgb(248 244 236 / 68%);
	}

	.home .support-panel .eyebrow {
		color: var(--etebar-gold);
	}

	.home .support-panel .button--primary {
		background: var(--etebar-gold);
		color: var(--etebar-navy-dark);
	}

	.home .support-panel .button--outline {
		border-color: rgb(248 244 236 / 55%);
		color: var(--etebar-paper);
	}

	.home .support-panel .button--outline:hover {
		background: var(--etebar-paper);
		color: var(--etebar-navy);
	}

	.home .support-route {
		border-left-color: rgb(248 244 236 / 18%);
	}

	.home .support-route__label {
		color: var(--etebar-gold-light);
	}

	.home .support-route ul {
		color: rgb(248 244 236 / 78%);
	}

	.home .support-route > p:last-child {
		border-top-color: rgb(248 244 236 / 18%);
		color: var(--etebar-paper);
	}

	.home .faq-preview {
		background: var(--etebar-ivory);
	}

	.home .faq-preview .container--narrow {
		max-width: 920px;
	}

	.home .accordion {
		margin-top: 3.5rem;
	}

	.home .accordion__trigger {
		min-height: 78px;
		font-size: 1.14rem;
	}

	.home .accordion__symbol {
		border-radius: 50%;
	}

	.site-footer__grid {
		grid-template-columns: 1.1fr 0.65fr 1fr;
		gap: 5rem;
		padding-top: 5.5rem;
		padding-bottom: 4.5rem;
	}
}

@media (max-width: 1180px) {
	.site-nav {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		display: none;
		border-bottom: 1px solid var(--etebar-border);
		background: var(--etebar-ivory);
		padding: 0.75rem 1rem 1.25rem;
	}

	.site-nav.is-open {
		display: block;
	}

	.site-nav__list {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.site-nav__list a {
		display: block;
		min-height: 44px;
		padding: 0.65rem 0.5rem;
		font-size: 0.9rem;
	}

	.site-nav__mobile-actions {
		display: block;
		border-top: 1px solid var(--etebar-border);
		padding: 0.75rem 0.5rem 0;
	}

	.menu-toggle {
		display: inline-flex;
	}

	.header-support {
		display: none;
	}

	.hero__layout {
		grid-template-columns: 1fr 380px;
		gap: 2.5rem;
	}

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

	.catalog-row {
		grid-template-columns: 40px 1fr auto;
	}

	.catalog-row ul {
		display: none;
	}
}

@media (max-width: 800px) {
	.product-detail-grid {
		grid-template-columns: 1fr;
	}

	.support-panel--whatsapp {
		grid-template-columns: 1fr;
	}

	.support-route {
		border-top: 1px solid var(--etebar-border);
		border-left: 0;
		padding-top: 1.5rem;
		padding-left: 0;
	}
	body.admin-bar .site-header {
		top: 46px;
	}

	.site-header__inner {
		min-height: 62px;
	}

	.brand__text small {
		display: none;
	}

	.hero__layout {
		grid-template-columns: 1fr;
		padding-top: 4rem;
		padding-bottom: 3rem;
	}

	.order-preview {
		max-width: 540px;
	}

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

	.proof-layout,
	.special-layout,
	.two-column,
	.proof-page-grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.support-panel {
		align-items: flex-start;
		flex-direction: column;
	}

	.site-footer__grid {
		grid-template-columns: 1fr 1fr;
		gap: 2.5rem;
	}

	.site-footer__brand {
		grid-column: 1 / -1;
	}

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

	.etebar-product__layout {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.order-request-layout {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.order-request-process .container {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
}

@media (max-width: 600px) {
	.container {
		width: min(calc(100% - 1.5rem), var(--etebar-container));
	}

	.section {
		padding: 3.2rem 0;
	}

	.page-hero {
		padding: 2.5rem 0;
	}

	h1 {
		font-size: clamp(2.25rem, 12vw, 3.4rem);
	}

	h2 {
		font-size: 2rem;
	}

	.brand__mark,
	.brand__custom-logo img {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
	}

	.brand__text strong {
		overflow: visible;
		font-size: 0.9rem;
		text-overflow: clip;
	}

	.site-header .brand__text {
		max-width: none;
	}

	.site-header .brand {
		min-width: 0;
		flex: 1 1 auto;
	}

	.site-header .brand__name-desktop {
		display: none;
	}

	.site-header .brand__name-mobile {
		display: inline;
	}

	.site-header__actions {
		min-width: 0;
		gap: 0.4rem;
	}

	.header-order,
	.woocommerce .site-header .header-order {
		min-height: 40px;
		padding: 0.55rem 0.7rem;
		font-size: 0.76rem;
	}

	.menu-toggle {
		width: 40px;
		height: 40px;
	}

	.hero__layout {
		gap: 2rem;
		padding-top: 2.75rem;
		padding-bottom: 2.75rem;
	}

	.hero__lead {
		font-size: 1rem;
	}

	.hero .button-row .button {
		width: 100%;
	}

	.hero__assurance {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.5rem;
		margin-top: 1.5rem;
	}

	.hero__assurance div {
		padding-left: 0.5rem;
	}

	.hero__assurance dt {
		font-size: 0.68rem;
	}

	.hero__assurance dd {
		font-size: 0.64rem;
		line-height: 1.35;
	}

	.order-preview__items {
		display: none;
	}

	.order-preview__note {
		margin: 1rem 1.1rem 1.1rem;
		padding: 0.7rem 0.8rem;
		font-size: 0.72rem;
	}

	.order-preview__header {
		padding: 1rem 1.1rem;
	}

	.order-preview__header h2 {
		font-size: 1.2rem;
	}

	.order-preview__meta div {
		padding: 0.8rem 1.1rem;
	}

	.category-detail-hero__record,
	.content-detail-hero__record,
	.order-request-hero__record {
		display: grid;
		gap: 0.6rem;
		margin-top: 1.5rem;
	}

	.category-detail-hero__record p,
	.category-detail-hero__record strong,
	.category-detail-hero__record span,
	.content-detail-hero__record p,
	.content-detail-hero__record strong,
	.content-detail-hero__record span,
	.order-request-hero__record p,
	.order-request-hero__record strong,
	.order-request-hero__record span {
		display: block;
		margin: 0;
	}

	.trust-strip__grid {
		gap: 1.25rem;
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}

	.trust-strip span {
		display: none;
	}

	.category-grid {
		grid-template-columns: 1fr;
		margin-top: 2rem;
	}

	.category-grid__footer {
		align-items: flex-start;
		flex-direction: column;
		gap: 1rem;
	}

	.category-card {
		min-height: 0;
		padding: 1.25rem;
	}

	.category-card__desktop-example {
		display: none;
	}

	.category-card__examples {
		grid-template-columns: 1fr 1fr;
	}

	.process-list {
		grid-template-columns: 1fr;
		margin-top: 2rem;
	}

	.process-list li,
	.process-list li:nth-child(even) {
		padding: 1.15rem 0;
		border-right: 0;
	}

	.process-list > li > span {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
	}

	.proof-record,
	.request-preview,
	.support-panel,
	.special-form-shell {
		padding: 1.25rem;
	}

	.proof-record dl div,
	.request-preview dl div {
		flex-direction: column;
		gap: 0.2rem;
	}

	.proof-record dd,
	.request-preview dd {
		text-align: left;
	}

	.support-panel .button-row,
	.support-panel .button {
		width: 100%;
	}

	.accordion__trigger {
		font-size: 1rem;
	}

	.catalog-row {
		grid-template-columns: 32px 1fr;
		gap: 0.75rem;
	}

	.catalog-row .button {
		grid-column: 2;
		justify-self: start;
	}

	.field-grid,
	.contact-grid {
		grid-template-columns: 1fr;
	}

	.product-detail-grid {
		gap: 0.75rem;
	}

	.product-detail-card header {
		padding: 1rem 1.1rem 0.9rem;
	}

	.product-detail-card__type {
		margin-bottom: 0.45rem;
	}

	.product-detail-card h2 {
		margin-bottom: 0.35rem;
		font-size: 1.3rem;
	}

	.product-detail-card header > p:last-child {
		font-size: 0.85rem;
		line-height: 1.45;
	}

	.product-detail-card dl div {
		grid-template-columns: 1fr;
		gap: 0.1rem;
		padding: 0.5rem 1.1rem 0.55rem;
	}

	.product-detail-card dt {
		font-size: 0.65rem;
	}

	.product-detail-card dd {
		font-size: 0.83rem;
		line-height: 1.35;
	}

	.page-hero__actions,
	.category-page-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.page-hero__actions .button,
	.category-page-actions .button {
		width: 100%;
	}

	.category-page-actions .text-link {
		align-self: flex-start;
	}

	.category-page-actions--bottom {
		align-items: center;
		margin-top: 1.75rem;
		padding-top: 1.5rem;
	}

	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 1.25rem;
		padding-top: 1.5rem;
		padding-bottom: 1.25rem;
	}

	.site-footer__brand {
		grid-column: auto;
	}

	.site-footer__brand > p,
	.site-footer__grid > div > p {
		margin-top: 0.45rem;
		line-height: 1.5;
	}

	.site-footer__heading {
		margin-bottom: 0.4rem;
	}

	.footer-menu,
	.site-footer .site-nav__list {
		gap: 0.15rem;
	}

	.footer-menu a,
	.site-footer .site-nav__list a {
		line-height: 1.45;
	}

	.site-footer__actions {
		gap: 0.5rem;
		margin-top: 0.65rem;
	}

	.site-footer__legal {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.2rem;
		padding-top: 0.7rem;
		padding-bottom: 0.7rem;
	}

	.woocommerce ul.products {
		grid-template-columns: 1fr;
	}

	.woocommerce-main {
		padding: 2.5rem 0 3.5rem;
	}

	.woocommerce .page-title {
		margin-bottom: 1.75rem;
		font-size: 2.5rem;
	}

	.etebar-shop-card__body {
		padding: 1.15rem 1.15rem 0;
	}

	.woocommerce ul.products li.product .button {
		margin: 0 1.15rem 1.15rem;
	}

	.etebar-product__summary .product_title {
		font-size: 2.5rem;
	}

	.etebar-product__records div {
		grid-template-columns: 1fr;
		gap: 0.15rem;
		padding: 0.7rem 0;
	}

	.etebar-product__request-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.etebar-product__request-actions .button {
		width: 100%;
	}

	.order-request-item,
	.order-request-panel,
	.order-request-empty,
	.order-request-success {
		padding: 1.25rem;
	}

	.order-request-process__steps {
		grid-template-columns: 1fr;
	}

	.order-request-process__steps li {
		border-left: 0;
		border-top: 1px solid var(--etebar-border);
		padding: 0.9rem 0;
	}

	.order-request-submit {
		align-items: stretch;
		flex-direction: column;
	}

	.order-request-submit .button {
		width: 100%;
	}

	.order-request-panel__links {
		flex-direction: column;
	}
}

/* Checkout and Special Request correction pass */

body.woocommerce-checkout :is(
	.etebar-checkout-step-intro,
	.etebar-checkout-error-summary,
	.wc-block-components-checkout-step,
	.wc-block-components-text-input,
	.wc-blocks-components-select,
	.wc-block-components-checkbox,
	.wc-block-components-totals-coupon
),
.special-request-page :is(
	[data-wizard-step],
	.order-request-field-error,
	input,
	textarea
) {
	scroll-margin-top: var(--etebar-header-clearance);
}

main.special-request-page .special-request-type__choices label {
	height: auto;
	min-height: 64px;
	align-items: center;
	align-content: center;
	padding-block: 0.75rem;
}

main.special-request-page .special-request-type__choices label > span {
	align-self: center;
	overflow-wrap: anywhere;
}

main.special-request-page .special-request-type__choices input[type="radio"] {
	width: 18px !important;
	height: 18px !important;
	min-height: 18px !important;
	transform: translateY(-3px);
}

.special-request-page .field-grid > label {
	align-self: start;
}

.special-request-page .order-request-field-error {
	color: var(--etebar-danger);
}

.special-request-page--received {
	min-height: 0;
	background: var(--etebar-ivory);
}

.special-request-confirmation-intro {
	padding-block: calc(var(--etebar-header-clearance) + 1.2rem) clamp(1.2rem, 3vw, 1.8rem);
	border-bottom: 1px solid var(--etebar-border);
	background: color-mix(in srgb, var(--etebar-muted) 62%, var(--etebar-ivory));
}

.special-request-confirmation-intro .container {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	color: var(--etebar-gray);
	font-size: 0.875rem;
}

.special-request-confirmation-intro a {
	color: var(--etebar-navy);
	font-weight: 600;
}

main.special-request-page.special-request-page--received .order-request-result {
	padding-block: clamp(3rem, 7vw, 6rem);
	background: var(--etebar-ivory);
}

main.special-request-page.special-request-page--received .order-request-success {
	width: min(100%, 620px);
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 60%, var(--etebar-border));
	border-radius: 10px;
	padding: clamp(1.5rem, 5vw, 3rem);
	background: var(--etebar-paper);
	text-align: center;
	box-shadow: 0 16px 36px rgb(7 31 48 / 8%);
}

main.special-request-page.special-request-page--received .order-request-success__indicator {
	display: grid;
	width: 52px;
	height: 52px;
	margin: 0 auto 1.2rem;
	place-items: center;
	border-radius: 50%;
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
	font-size: 1.35rem;
	font-weight: 700;
}

main.special-request-page.special-request-page--received .order-request-success h1 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(2rem, 5vw, 3rem);
	line-height: 1.08;
}

main.special-request-page.special-request-page--received .order-request-success__reference {
	display: inline-flex;
	gap: 0.35rem;
	margin-block: 1.2rem 0;
}

main.special-request-page.special-request-page--received .order-request-success > p:not(.order-request-success__reference) {
	max-width: 48ch;
	margin: 1.25rem auto 0;
}

main.special-request-page.special-request-page--received .order-request-success .button-row {
	justify-content: center;
	margin-block-start: 1.6rem;
}

.etebar-checkout-steps-ready :is(
	.wc-block-checkout__billing-fields,
	.wc-block-checkout__order-fields
) .wc-block-components-address-form {
	align-items: start;
	grid-auto-flow: row;
}

.etebar-checkout-steps-ready :is(
	.wc-block-checkout__billing-fields,
	.wc-block-checkout__order-fields
) .wc-block-components-address-form > * {
	min-width: 0;
	align-self: start;
}

.woocommerce-checkout .wc-block-components-totals-coupon {
	margin-block-start: 1rem;
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	padding: 0.85rem 1rem;
	background: var(--etebar-paper);
}

.woocommerce-checkout .wc-block-components-totals-coupon .wc-block-components-panel__button {
	display: flex;
	min-height: 44px;
	align-items: center;
	color: var(--etebar-navy);
	font-weight: 600;
}

.woocommerce-checkout .wc-block-components-totals-coupon__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: 0.75rem;
	margin-block-start: 0.75rem;
}

.woocommerce-checkout .wc-block-components-totals-coupon__input,
.woocommerce-checkout .wc-block-components-totals-coupon__button {
	margin: 0 !important;
}

.woocommerce-checkout .wc-block-components-totals-coupon__input input,
.woocommerce-checkout .wc-block-components-totals-coupon__button {
	min-height: 52px;
}

.woocommerce-checkout .wc-block-components-totals-coupon__button {
	min-width: 96px;
	height: 52px !important;
}

.woocommerce-checkout .wc-block-components-totals-coupon__button:disabled {
	opacity: 0.55;
}

@media (max-width: 600px) {
	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		display: flex !important;
		min-height: 48px;
		align-items: center;
		justify-content: space-between;
		border-block: 1px solid var(--etebar-border);
	}

	main.special-request-page .special-request-type__choices label {
		height: auto;
		min-height: 64px;
	}

	main.special-request-page.special-request-page--received .order-request-result {
		padding-block: 2.5rem 3rem;
	}

	main.special-request-page.special-request-page--received .order-request-success .button-row {
		display: grid;
		grid-template-columns: 1fr;
	}

	main.special-request-page.special-request-page--received .order-request-success .button {
		width: 100%;
	}

	.woocommerce-checkout .wc-block-components-totals-coupon__form {
		grid-template-columns: minmax(0, 1fr);
	}

	.woocommerce-checkout .wc-block-components-totals-coupon__button {
		width: 100%;
	}
}

/* Product detail sample content and neutral illustration fallbacks */

.etebar-product__media--placeholder,
.etebar-shop-card__image--placeholder {
	background:
		linear-gradient(145deg, rgb(215 174 95 / 10%), transparent 52%),
		color-mix(in srgb, var(--etebar-muted) 38%, var(--etebar-paper));
}

.etebar-product__media--placeholder img {
	display: block;
	padding: clamp(1.5rem, 4vw, 3rem);
	object-fit: contain;
}

.etebar-product__media figcaption {
	border-top: 1px solid var(--etebar-border);
	padding: 0.8rem 1rem;
	color: var(--etebar-gray);
	font-size: 0.78rem;
	line-height: 1.5;
}

.woocommerce ul.products li.product .etebar-shop-card__image--placeholder img {
	padding: clamp(1rem, 2.5vw, 2rem);
	object-fit: contain;
}

.etebar-product__details {
	display: grid;
	grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(2.5rem, 6vw, 6rem);
	margin-top: clamp(4rem, 7vw, 6.5rem);
	border: 1px solid var(--etebar-border);
	border-top: 2px solid var(--etebar-gold);
	border-radius: var(--etebar-radius);
	background: var(--etebar-paper);
	padding: clamp(1.5rem, 4vw, 3rem);
	box-shadow: 0 18px 45px rgb(7 31 48 / 5%);
}

.etebar-product__details-intro .eyebrow {
	margin-bottom: 0.7rem;
	color: var(--etebar-green);
}

.etebar-product__details-intro h2 {
	margin-bottom: 1rem;
	color: var(--etebar-navy);
	font-size: clamp(1.8rem, 3vw, 2.65rem);
}

.etebar-product__details-intro > p:last-child {
	max-width: 34rem;
	margin-bottom: 0;
	color: var(--etebar-gray);
	line-height: 1.65;
}

.etebar-product__details .etebar-product__records div {
	grid-template-columns: minmax(100px, 0.34fr) minmax(0, 1fr);
	padding: 1rem 0;
}

.etebar-product__details .etebar-product__records dd {
	font-size: 0.9rem;
}

@media (max-width: 800px) {
	.single-product .woocommerce-main {
		background:
			linear-gradient(180deg, #061d30 0, #031321 58rem, var(--etebar-ivory) 58rem);
	}

	.etebar-product__details {
		grid-template-columns: 1fr;
		gap: 1.75rem;
		margin-top: 4rem;
	}
}

@media (max-width: 600px) {
	.etebar-product__media--placeholder img {
		padding: 1.25rem;
	}

	.etebar-product__media figcaption {
		font-size: 0.82rem;
	}

	.etebar-product__details {
		margin-top: 3rem;
		padding: 1.25rem;
	}

	.etebar-product__details .etebar-product__records div {
		grid-template-columns: 1fr;
		gap: 0.35rem;
	}

	.etebar-product__details .etebar-product__records dt {
		font-size: 0.75rem;
	}
}

/* Targeted contrast corrections */

.single-product .woocommerce-main div.product .etebar-product__intro h1.product_title {
	color: #f7f2e8;
}

.special-request-page .page-hero .order-request-hero__record {
	border-color: rgb(215 174 95 / 48%);
	border-top-color: #d7ae5f;
	background: rgb(3 19 33 / 82%);
}

.special-request-page .page-hero .order-request-hero__record p {
	color: #d7ae5f;
}

.special-request-page .page-hero .order-request-hero__record strong {
	color: #f7f2e8;
}

.special-request-page .page-hero .order-request-hero__record span {
	border-top-color: rgb(215 174 95 / 24%);
	color: rgb(247 242 232 / 76%);
}

/* Homepage header and real HTML hero */

.home .site-header {
	border-bottom-color: rgb(215 174 95 / 24%);
	background: #031321;
	box-shadow: none;
	backdrop-filter: none;
}

.home .site-header .brand,
.home .site-header .site-nav__list a {
	color: #f7f2e8;
}

.home .site-header .brand__mark {
	border: 1px solid rgb(247 242 232 / 46%);
	background: #061d30;
}

.home .site-header .brand__text small,
.home .site-header .header-support {
	color: rgb(247 242 232 / 64%);
}

.home .site-header .site-nav__list a:hover,
.home .site-header .site-nav__list .current-menu-item > a {
	color: #d7ae5f;
}

.home .site-header .header-order {
	border-color: #d7ae5f;
	background: #d7ae5f;
	color: #061525;
	box-shadow: inset 0 1px rgb(255 255 255 / 30%);
}

.home .site-header .header-order:hover {
	border-color: #e4c47e;
	background: #e4c47e;
	color: #061525;
}

.home .site-header .menu-toggle {
	border-color: rgb(247 242 232 / 35%);
	color: #f7f2e8;
}

.home .hero {
	background:
		radial-gradient(circle at 77% 39%, rgb(45 103 88 / 25%), transparent 24rem),
		linear-gradient(125deg, #061d30 0%, #031321 100%);
}

.home .hero__grid-pattern {
	background-image:
		linear-gradient(rgb(247 242 232 / 4%) 1px, transparent 1px),
		linear-gradient(90deg, rgb(247 242 232 / 4%) 1px, transparent 1px);
	background-size: 64px 64px;
	mask-image: linear-gradient(90deg, #000 0%, rgb(0 0 0 / 60%) 72%, transparent 100%);
}

.home .hero__layout {
	grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.65fr);
	gap: clamp(3rem, 7vw, 7rem);
	align-items: start;
	padding-top: 2rem;
	padding-bottom: 1.75rem;
}

.home .hero__content {
	max-width: 760px;
	padding-top: 3rem;
}

.home .hero__eyebrow {
	display: flex;
	align-items: center;
	gap: 0;
	color: #d7ae5f;
	letter-spacing: 0.15em;
}

.home .hero h1 {
	max-width: 720px;
	margin-bottom: 1.4rem;
	color: #f7f2e8;
	font-size: clamp(4rem, 5.25vw, 5.4rem);
	font-weight: 600;
	letter-spacing: -0.035em;
	line-height: 0.98;
}

.home .hero__lead {
	max-width: 620px;
	margin-bottom: 1.65rem;
	color: rgb(247 242 232 / 80%);
	font-size: 1.06rem;
	line-height: 1.72;
}

.home .hero .button-row {
	gap: 1rem;
}

.home .hero .button {
	min-height: 54px;
	padding-inline: 2rem;
	border-radius: 5px;
}

.home .hero .button--gold {
	border-color: #d7ae5f;
	background: #d7ae5f;
	color: #061525;
	box-shadow: inset 0 1px rgb(255 255 255 / 35%), 0 12px 30px rgb(0 0 0 / 14%);
}

.home .hero .button--gold:hover {
	border-color: #e4c47e;
	background: #e4c47e;
}

.home .hero .button--light-outline {
	border-color: rgb(215 174 95 / 78%);
	color: #f7f2e8;
}

.home .hero .button--light-outline:hover {
	border-color: #d7ae5f;
	background: rgb(215 174 95 / 8%);
	color: #fff;
}

.hero-phone {
	position: relative;
	width: min(100%, 390px);
	margin: -0.5rem auto 0;
}

.hero-phone::before {
	position: absolute;
	z-index: -1;
	inset: 10% -24% 5%;
	border: 1px solid rgb(215 174 95 / 12%);
	border-radius: 50%;
	background: radial-gradient(circle, rgb(215 174 95 / 10%), transparent 62%);
	content: "";
}

.hero-phone__image {
	display: block;
	width: 100%;
	height: auto;
	filter: drop-shadow(0 34px 38px rgb(0 0 0 / 30%));
}

.hero-phone figcaption {
	position: relative;
	margin: -0.15rem 0 0;
	color: rgb(248 244 236 / 45%);
	font-family: var(--etebar-mono);
	font-size: 0.56rem;
	letter-spacing: 0.09em;
	text-align: center;
	text-transform: uppercase;
}

.hero__safety-strip {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 0;
	border: 1px solid rgb(215 174 95 / 30%);
	border-radius: 10px;
	padding: 0;
	background: rgb(3 19 33 / 52%);
	list-style: none;
}

.hero__safety-strip li {
	display: flex;
	min-height: 72px;
	align-items: center;
	gap: 0.75rem;
	padding: 0.9rem 1.15rem;
	color: #f7f2e8;
	font-family: var(--etebar-serif);
	font-size: 0.88rem;
}

.hero__safety-strip li + li {
	border-left: 1px solid rgb(215 174 95 / 24%);
}

.hero__safety-strip span {
	display: inline-flex;
	width: 30px;
	height: 30px;
	flex: 0 0 30px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgb(215 174 95 / 60%);
	border-radius: 50%;
	color: #d7ae5f;
	font-family: var(--etebar-mono);
	font-size: 0.55rem;
}

.home .hero__safety {
	position: relative;
	max-width: none;
	margin: 0.8rem 0 1.25rem;
	border: 0;
	padding: 0;
	color: rgb(247 242 232 / 54%);
	font-size: 0.67rem;
	text-align: center;
}

.hero-process {
	position: relative;
	border-top: 1px solid rgb(215 174 95 / 24%);
	background: rgb(2 15 26 / 62%);
}

.hero-process__list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	list-style: none;
}

.hero-process__list li {
	display: grid;
	grid-template-columns: 44px 1fr;
	gap: 1rem;
	align-items: center;
	padding: 0.5rem clamp(1rem, 2.5vw, 2.25rem);
}

.hero-process__list li + li {
	border-left: 1px solid rgb(215 174 95 / 22%);
}

.hero-process__number {
	display: inline-flex;
	width: 38px;
	height: 38px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #d7ae5f;
	color: #061525;
	font-family: var(--etebar-serif);
	font-weight: 600;
}

.hero-process h2 {
	margin: 0 0 0.2rem;
	color: #d7ae5f;
	font-size: 1.2rem;
}

.hero-process p {
	margin: 0;
	color: rgb(247 242 232 / 72%);
	font-size: 0.73rem;
	line-height: 1.45;
}

@media (max-width: 800px) {
	.home .site-header {
		position: relative;
		top: auto;
	}

	.home .site-nav {
		background: #061d30;
	}

	.home .hero__layout {
		display: block;
		padding-top: 3.3rem;
		padding-bottom: 2.5rem;
	}

	.home .hero__content {
		padding-top: 0;
	}

	.home .hero h1 {
		max-width: 620px;
		font-size: clamp(3.15rem, 13vw, 4.5rem);
	}

	.home .hero-phone {
		display: none;
	}

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

	.hero__safety-strip li:nth-child(3) {
		border-left: 0;
	}

	.hero__safety-strip li:nth-child(n + 3) {
		border-top: 1px solid rgb(215 174 95 / 24%);
	}

	.hero-process__list {
		grid-template-columns: 1fr;
	}

	.hero-process__list li {
		padding: 0.8rem 0;
	}

	.hero-process__list li + li {
		border-top: 1px solid rgb(215 174 95 / 20%);
		border-left: 0;
	}
}

@media (max-width: 600px) {
	.home .site-header .header-order {
		background: #d7ae5f;
		color: #061525;
	}

	.home .hero__layout {
		padding-top: 2.75rem;
		padding-bottom: 2rem;
	}

	.home .hero__eyebrow {
		font-size: 0.68rem;
	}

	.home .hero h1 {
		margin-bottom: 1.25rem;
		font-size: clamp(2.9rem, 12.5vw, 3.75rem);
		line-height: 1.02;
	}

	.home .hero__lead {
		font-size: 0.98rem;
		line-height: 1.65;
	}

	.hero__safety-strip li {
		min-height: 66px;
		gap: 0.55rem;
		padding: 0.7rem;
		font-size: 0.72rem;
	}

	.hero__safety-strip span {
		width: 26px;
		height: 26px;
		flex-basis: 26px;
	}

	.home .hero__safety {
		margin-bottom: 1rem;
		text-align: left;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

/* F3 desktop detail tightening */

@media (min-width: 801px) {
  .category-card a,
  .category-grid a,
  .category-grid__footer .button {
    font-size: 0.95rem;
  }

  .faq-preview .section-heading,
  .faq-section .section-heading {
    max-width: 820px;
  }
}

/* Sitewide public frontend polish */

.site-header {
	border-bottom-color: rgb(215 174 95 / 22%);
	background: #031321;
	box-shadow: none;
	backdrop-filter: none;
}

.site-header .brand,
.site-header .site-nav__list a {
	color: #f7f2e8;
}

.site-header .brand__mark {
	border: 1px solid rgb(247 242 232 / 42%);
	background: #061d30;
	color: #f7f2e8;
}

.site-header .brand__text small,
.site-header .header-support {
	color: rgb(247 242 232 / 62%);
}

.site-header .site-nav__list a:hover,
.site-header .site-nav__list .current-menu-item > a {
	color: #d7ae5f;
}

.site-header .header-order,
.woocommerce .site-header .header-order {
	border-color: #d7ae5f;
	background: #d7ae5f;
	color: #061525;
	box-shadow: inset 0 1px rgb(255 255 255 / 30%);
}

.site-header .header-order:hover,
.woocommerce .site-header .header-order:hover {
	border-color: #e4c47e;
	background: #e4c47e;
	color: #061525;
}

.site-header .menu-toggle {
	border-color: rgb(247 242 232 / 35%);
	color: #f7f2e8;
}

.page-hero {
	position: relative;
	overflow: hidden;
	border-bottom-color: rgb(215 174 95 / 28%);
	background:
		radial-gradient(circle at 82% 45%, rgb(47 107 82 / 25%), transparent 24rem),
		linear-gradient(125deg, #061d30 0%, #031321 100%);
	color: #f7f2e8;
}

.page-hero::before {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgb(247 242 232 / 3.5%) 1px, transparent 1px),
		linear-gradient(90deg, rgb(247 242 232 / 3.5%) 1px, transparent 1px);
	background-size: 64px 64px;
	mask-image: linear-gradient(90deg, #000 0%, rgb(0 0 0 / 45%) 72%, transparent);
	content: "";
	pointer-events: none;
}

.page-hero .container {
	position: relative;
}

.page-hero h1,
.page-hero h2,
.page-hero strong {
	color: #f7f2e8;
}

.page-hero h1 {
	max-width: 820px;
	font-size: clamp(3.35rem, 5.2vw, 5.4rem);
	line-height: 0.98;
}

.page-hero .eyebrow {
	color: #d7ae5f;
}

.page-hero .products-hero__intro > p:last-of-type,
.page-hero .category-detail-hero__intro > p:last-of-type,
.page-hero .content-detail-hero__intro > p:last-child,
.page-hero .order-request-hero__intro > p:last-of-type {
	color: rgb(247 242 232 / 76%);
	font-size: 1.04rem;
	line-height: 1.75;
}

.page-hero .text-link {
	color: #e4c47e;
}

.page-hero .button--primary {
	border-color: #d7ae5f;
	background: #d7ae5f;
	color: #061525;
}

.page-hero .button--primary:hover {
	border-color: #e4c47e;
	background: #e4c47e;
}

.products-hero__record,
.category-detail-hero__record,
.content-detail-hero__record,
.order-request-hero__record {
	border: 1px solid rgb(215 174 95 / 38%);
	border-top: 2px solid #d7ae5f;
	border-radius: 8px;
	background: rgb(3 19 33 / 58%);
	box-shadow: 0 26px 55px rgb(0 0 0 / 18%);
}

.products-hero__record-label,
.products-hero__record dt,
.category-detail-hero__record p,
.content-detail-hero__record p,
.order-request-hero__record p {
	color: #d7ae5f;
}

.products-hero__record dd,
.products-hero__record-note,
.category-detail-hero__record span,
.content-detail-hero__record span,
.order-request-hero__record span {
	color: rgb(247 242 232 / 72%);
}

.products-hero__record dl,
.products-hero__record dl div,
.products-hero__record-note {
	border-color: rgb(215 174 95 / 20%);
}

.section-heading {
	max-width: 780px;
}

.section-heading h2 {
	font-size: clamp(2.55rem, 4vw, 4rem);
	line-height: 1.02;
}

.section-heading > p:last-child {
	max-width: 680px;
	line-height: 1.75;
}

.section-heading--center {
	max-width: 850px;
}

.category-grid,
.home .category-grid {
	gap: 1rem;
	border: 0;
	box-shadow: none;
}

.category-card,
.home .category-card {
	min-height: 280px;
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	background: rgb(255 252 246 / 74%);
	box-shadow: none;
}

.category-card:hover,
.home .category-card:hover {
	top: 0;
	border-color: color-mix(in srgb, var(--etebar-gold) 75%, var(--etebar-border));
	background: var(--etebar-paper);
	box-shadow: 0 10px 28px rgb(7 31 48 / 5%);
}

.category-card .card-link {
	border-top-color: color-mix(in srgb, var(--etebar-border) 82%, transparent);
}

.product-detail-grid {
	gap: 1rem;
}

.product-detail-card {
	overflow: hidden;
	border: 1px solid var(--etebar-border);
	border-top: 2px solid var(--etebar-gold);
	border-radius: 8px;
	background: rgb(255 252 246 / 78%);
	box-shadow: none;
}

.product-detail-card header {
	min-height: 220px;
	background: transparent;
}

.product-detail-card dl {
	background: color-mix(in srgb, var(--etebar-muted) 36%, var(--etebar-paper));
}

.process-list,
.home .process-list {
	gap: 0;
	border-top: 1px solid var(--etebar-border);
	border-bottom: 1px solid var(--etebar-border);
}

.process-list li,
.process-list li:nth-child(even),
.home .process-list li,
.home .process-list li:nth-child(even) {
	border-right: 1px solid var(--etebar-border);
	background: transparent;
}

.process-list li:last-child,
.home .process-list li:last-child {
	border-right: 0;
}

.process-list > li > span,
.proof-steps > li > span {
	border-color: color-mix(in srgb, var(--etebar-gold) 75%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-gold) 14%, var(--etebar-paper));
	color: var(--etebar-navy);
}

.proof-record,
.request-preview,
.support-panel,
.contact-route,
.order-request-item,
.order-request-panel,
.order-request-empty,
.order-request-success,
.etebar-product__request-panel {
	border-radius: 8px;
	box-shadow: 0 18px 45px rgb(7 31 48 / 6%);
}

.proof-record,
.request-preview,
.contact-route,
.order-request-item,
.order-request-panel,
.order-request-empty,
.order-request-success {
	border-top: 2px solid var(--etebar-gold);
}

.proof-steps li {
	border-bottom-color: color-mix(in srgb, var(--etebar-border) 82%, transparent);
}

.support-panel {
	border-color: rgb(215 174 95 / 32%);
	background:
		linear-gradient(120deg, rgb(6 29 48 / 98%), rgb(3 19 33 / 98%));
}

.accordion,
.accordion--page {
	border-top: 1px solid var(--etebar-border);
}

.accordion__item,
.accordion--page .accordion__item {
	border: 0;
	border-bottom: 1px solid var(--etebar-border);
	background: transparent;
}

.accordion__trigger {
	min-height: 70px;
	padding: 1.15rem 0;
	font-family: var(--etebar-serif);
	font-size: 1.08rem;
}

.accordion__symbol {
	border-color: color-mix(in srgb, var(--etebar-gold) 65%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-gold) 10%, transparent);
	color: var(--etebar-navy);
}

.accordion__panel {
	padding: 0 3.5rem 1.4rem 0;
}

.contact-grid {
	gap: 1rem;
}

.contact-route {
	background: var(--etebar-paper);
}

.contact-route--primary {
	background: color-mix(in srgb, var(--etebar-muted) 42%, var(--etebar-paper));
}

.woocommerce-main {
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--etebar-muted) 28%, var(--etebar-ivory)), var(--etebar-ivory) 30rem);
}

.woocommerce .page-title {
	font-size: clamp(3.1rem, 5vw, 5rem);
}

.woocommerce ul.products {
	gap: 1rem;
}

.woocommerce ul.products li.product {
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	background: var(--etebar-paper);
	box-shadow: none;
}

.woocommerce ul.products li.product:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 75%, var(--etebar-border));
	box-shadow: 0 12px 30px rgb(7 31 48 / 6%);
	transform: none;
}

.etebar-shop-card__image {
	background: color-mix(in srgb, var(--etebar-muted) 45%, var(--etebar-paper));
}

.etebar-shop-card__meta span,
.etebar-product__status {
	background: color-mix(in srgb, var(--etebar-gold) 18%, var(--etebar-paper));
	color: var(--etebar-navy);
}

.etebar-product__layout {
	gap: clamp(2rem, 5vw, 5rem);
}

.single-product .woocommerce-main {
	background:
		linear-gradient(180deg, #061d30 0, #031321 42rem, var(--etebar-ivory) 42rem);
}

.single-product .etebar-product__intro .product_title {
	color: #f7f2e8;
}

.single-product .etebar-product__intro .eyebrow,
.single-product .etebar-product__catalog-link {
	color: #d7ae5f;
}

.single-product .etebar-product__description {
	color: rgb(247 242 232 / 76%);
}

.etebar-product__intro .product_title {
	font-size: clamp(3.3rem, 5.4vw, 5.5rem);
	line-height: 0.98;
}

.etebar-product__request-panel {
	border: 1px solid var(--etebar-border);
	border-top: 2px solid var(--etebar-gold);
	background: var(--etebar-paper);
}

.etebar-product__records div {
	border-color: color-mix(in srgb, var(--etebar-border) 84%, transparent);
}

.etebar-product__safety {
	border-left-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
}

.order-request-content,
.special-request-page .order-request-content {
	background: color-mix(in srgb, var(--etebar-muted) 28%, var(--etebar-ivory));
}

.order-request-panel,
.order-request-item {
	background: var(--etebar-paper);
}

.order-request-form .order-request-form__group {
	padding: 2rem 0;
	border: 0;
	border-top: 1px solid var(--etebar-border);
	background: transparent;
}

.order-request-form__group legend {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.28rem;
}

.order-request-form input,
.order-request-form textarea {
	border-color: color-mix(in srgb, var(--etebar-border) 90%, var(--etebar-gray));
	border-radius: 5px;
	background: #fffefb;
}

.order-request-form input:focus,
.order-request-form textarea:focus {
	border-color: var(--etebar-gold);
	box-shadow: 0 0 0 3px rgb(215 174 95 / 16%);
}

.order-request-form__confirmation {
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 65%, var(--etebar-border)) !important;
	border-radius: 7px;
	padding: 1.25rem !important;
	background: color-mix(in srgb, var(--etebar-gold) 9%, var(--etebar-paper)) !important;
}

@media (max-width: 800px) {
	.site-header {
		position: relative;
		top: auto;
	}

	.site-nav {
		background: #061d30;
	}

	.page-hero {
		padding: 3.25rem 0;
	}

	.page-hero h1 {
		font-size: clamp(2.75rem, 13vw, 4.2rem);
	}

	.products-hero__record,
	.category-detail-hero__record,
	.content-detail-hero__record,
	.order-request-hero__record {
		padding: 1.25rem;
		box-shadow: none;
	}

	.category-grid,
	.home .category-grid {
		gap: 0.75rem;
	}

	.process-list li,
	.process-list li:nth-child(even),
	.home .process-list li,
	.home .process-list li:nth-child(even) {
		border-right: 0;
		border-bottom: 1px solid var(--etebar-border);
	}

	.accordion__trigger {
		min-height: 62px;
		padding-block: 1rem;
		font-size: 1rem;
	}

	.accordion__panel {
		padding-right: 0;
	}
}

@media (max-width: 600px) {
	.site-header .header-order,
	.woocommerce .site-header .header-order {
		background: #d7ae5f;
		color: #061525;
	}

	.section {
		padding-block: 4.25rem;
	}

	.section-heading h2 {
		font-size: 2.45rem;
	}

	.category-card,
	.home .category-card,
	.product-detail-card {
		min-height: 0;
	}

	.order-request-panel,
	.order-request-item,
	.order-request-empty,
	.order-request-success {
		padding: 1.25rem;
	}

	.single-product .woocommerce-main {
		background:
			linear-gradient(180deg, #061d30 0, #031321 48rem, var(--etebar-ivory) 48rem);
	}

	.header-cart > span:first-child {
		display: none;
	}
}

.woocommerce div.product form.cart .button.single_add_to_cart_button {
	border-color: var(--etebar-navy);
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
}

.woocommerce div.product form.cart .button.single_add_to_cart_button:hover,
.woocommerce div.product form.cart .button.single_add_to_cart_button:focus-visible {
	border-color: var(--etebar-gold);
	background: var(--etebar-gold);
	color: var(--etebar-navy);
}

/* Focused cart, checkout, form, and mobile readability polish */

.woocommerce-cart article.entry,
.woocommerce-checkout article.entry {
	max-width: none;
}

.woocommerce-cart .wc-block-cart,
.woocommerce-checkout .wc-block-checkout {
	width: 100%;
	color: var(--etebar-charcoal);
}

.woocommerce-cart .wc-block-cart__main,
.woocommerce-checkout .wc-block-checkout__main {
	padding-right: clamp(1.5rem, 4vw, 4rem);
}

.woocommerce-cart .wc-block-cart-items {
	overflow: hidden;
	border: 1px solid var(--etebar-border);
	border-top: 2px solid var(--etebar-gold);
	border-radius: var(--etebar-surface-radius);
	background: var(--etebar-paper);
	box-shadow: var(--etebar-surface-shadow);
}

.woocommerce-cart .wc-block-cart-items th,
.woocommerce-cart .wc-block-cart-items td {
	border-color: color-mix(in srgb, var(--etebar-border) 82%, transparent);
	padding: 1rem;
}

.woocommerce-cart .wc-block-cart-items__header {
	color: var(--etebar-navy);
	font-size: 0.76rem;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.woocommerce-cart .wc-block-components-product-name {
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 1.05rem;
	font-weight: 600;
	text-underline-offset: 3px;
    line-height: 1.35;
    overflow-wrap: anywhere;
    text-wrap: pretty;
    max-width: 38ch;
}

.woocommerce-cart .wc-block-components-product-price,
.woocommerce-cart .wc-block-components-product-metadata,
.woocommerce-checkout .wc-block-components-product-metadata {
	color: var(--etebar-gray);
	font-size: 0.88rem;
	line-height: 1.55;
}

.woocommerce-cart .wc-block-components-quantity-selector {
	overflow: hidden;
	min-height: 42px;
	border-color: var(--etebar-border);
	border-radius: 6px;
	background: #fff;
}

.woocommerce-cart .wc-block-components-quantity-selector__button {
	min-width: 38px;
	color: var(--etebar-navy);
	font-size: 1rem;
}

.woocommerce-cart .wc-block-cart__sidebar,
.woocommerce-checkout .wc-block-checkout__sidebar {
	overflow: hidden;
	border: 1px solid var(--etebar-border);
	border-top: 2px solid var(--etebar-gold);
	border-radius: 8px;
	background: var(--etebar-paper);
	box-shadow: 0 16px 38px rgb(7 31 48 / 5%);
}

.woocommerce-cart .wc-block-cart__sidebar {
	padding: 0 1.25rem 1.25rem;
    width: 100%;
    margin: 0;
    border: 1px solid var(--etebar-border);
    border-top: 2px solid var(--etebar-gold);
    border-radius: var(--etebar-surface-radius);
    background: var(--etebar-paper);
    box-shadow: var(--etebar-surface-shadow);
}

.woocommerce-checkout .wc-block-checkout__sidebar {
	padding: 0;
	    position: sticky;
	    top: var(--etebar-header-clearance);
	    width: 100%;
	    align-self: start;
	    margin: 0;
	    border: 1px solid var(--etebar-border);
	    border-radius: 10px;
	    background: var(--etebar-paper);
	    box-shadow: none;
}

.woocommerce-cart .wc-block-components-totals-wrapper,
.woocommerce-checkout .wc-block-components-totals-wrapper,
.woocommerce-checkout .wc-block-components-order-summary {
	border-color: color-mix(in srgb, var(--etebar-border) 82%, transparent);
}

.woocommerce-cart .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-item__label {
	color: var(--etebar-gray);
	font-weight: 600;
}

.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.45rem;
	font-weight: 600;
}

.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
	min-height: 54px;
	border: 1px solid var(--etebar-navy) !important;
	border-radius: 7px;
	background: var(--etebar-navy) !important;
	color: var(--etebar-ivory) !important;
	box-shadow: none;
	font-size: 0.92rem;
	font-weight: 750;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover {
	border-color: var(--etebar-gold) !important;
	background: var(--etebar-gold) !important;
	color: var(--etebar-navy-dark) !important;
}

.woocommerce-checkout .wc-block-components-checkout-step {
	margin-bottom: 2rem;
}

.woocommerce-checkout .wc-block-components-checkout-step__heading {
	margin-bottom: 1rem;
}

.woocommerce-checkout .wc-block-components-checkout-step__title,
.woocommerce-checkout .wc-block-components-title {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.35rem;
	font-weight: 600;
}

.woocommerce-checkout .wc-block-components-checkout-step__description,
.woocommerce-checkout .wc-block-components-checkout-step__content,
.woocommerce-checkout .wc-block-components-checkout-step__container {
	color: var(--etebar-gray);
}

.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-combobox-control input,
.woocommerce-checkout .wc-block-components-address-form select {
	min-height: 52px;
	border-color: color-mix(in srgb, var(--etebar-border) 82%, var(--etebar-navy));
	border-radius: 6px;
	background: #fffefb;
	color: var(--etebar-charcoal);
}

.woocommerce-checkout .wc-block-components-text-input input:focus,
.woocommerce-checkout .wc-block-components-combobox-control input:focus,
.woocommerce-checkout .wc-block-components-address-form select:focus {
	border-color: var(--etebar-gold);
	box-shadow: 0 0 0 3px rgb(207 174 104 / 18%);
	outline: 0;
}

.woocommerce-checkout .wc-block-components-text-input label,
.woocommerce-checkout .wc-block-components-combobox-control label {
	color: var(--etebar-gray);
	font-size: 0.82rem;
}

.woocommerce-checkout .wc-block-components-radio-control-accordion-option {
	margin-top: 0.75rem;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-border));
	border-radius: 7px;
	background: color-mix(in srgb, var(--etebar-gold) 8%, var(--etebar-paper));
}

.woocommerce-checkout .wc-block-components-radio-control__label,
.woocommerce-checkout .wc-block-components-radio-control-accordion-content {
	color: var(--etebar-charcoal);
	font-size: 0.92rem;
	line-height: 1.55;
}

.woocommerce-checkout .wc-block-components-radio-control__label {
	color: var(--etebar-navy);
	font-weight: 600;
}

.woocommerce-checkout .wc-block-components-order-summary__button-text {
	color: var(--etebar-navy);
	font-size: 1.2rem;
	font-weight: 600;
}

.woocommerce-checkout .wc-block-components-order-summary-item__description,
.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
	font-size: 0.88rem;
	line-height: 1.5;
}

.woocommerce-checkout .wc-block-components-validation-error,
.woocommerce-checkout .wc-block-components-notice-banner,
.woocommerce-cart .wc-block-components-notice-banner {
	border-radius: 7px;
	font-size: 0.9rem;
	line-height: 1.5;
}

@media (max-width: 800px) {
	.woocommerce-cart .wc-block-cart__main,
	.woocommerce-checkout .wc-block-checkout__main {
		padding-right: 0;
	}

	.woocommerce-cart .wc-block-cart__sidebar,
	.woocommerce-checkout .wc-block-checkout__sidebar {
		box-shadow: none;
	}

	.woocommerce-cart .wc-block-cart-items th,
	.woocommerce-cart .wc-block-cart-items td {
		padding: 0.85rem;
	}
}

@media (max-width: 600px) {
	.site-header .brand__text strong {
		font-size: 0.94rem;
	}

	.site-header .header-order,
	.woocommerce .site-header .header-order {
		min-height: 42px;
		font-size: 0.8rem;
	}

	.eyebrow,
	.contact-route__label,
	.product-detail-card__type,
	.order-request-item__label {
		font-size: 0.72rem;
		line-height: 1.45;
	}

	.category-card p,
	.category-card .card-link,
	.product-detail-card header > p:last-child,
	.product-detail-card dd,
	.process-list p,
	.proof-steps p {
		font-size: 0.94rem;
		line-height: 1.6;
	}

	.site-footer__brand > p,
	.site-footer__grid > div > p {
		font-size: 0.9rem;
		line-height: 1.6;
	}

	.site-footer__heading {
		font-size: 1.05rem;
	}

	.footer-menu a,
	.site-footer .site-nav__list a {
		font-size: 0.9rem;
		line-height: 1.55;
	}

	.site-footer__legal {
		font-size: 0.78rem;
		line-height: 1.5;
	}

	.special-request-page .order-request-panel__intro > p:last-child,
	.special-request-page .order-request-form__help,
	.special-request-page .order-request-submit p {
		font-size: 0.9rem;
		line-height: 1.6;
	}

	.special-request-page .order-request-form__group legend {
		font-size: 1.35rem;
		line-height: 1.3;
	}

	.special-request-page .order-request-form label span {
		font-size: 0.9rem;
		line-height: 1.45;
	}

	.special-request-page .order-request-form label span em {
		font-size: 0.7rem;
	}

	.special-request-page .order-request-form input,
	.special-request-page .order-request-form textarea {
		min-height: 50px;
		font-size: 1rem;
	}

	.special-request-page .order-request-consent span {
		font-size: 0.9rem !important;
		line-height: 1.55;
	}

	.woocommerce-cart .wc-block-components-product-name {
		font-size: 1.05rem;
	}

	.woocommerce-cart .wc-block-components-product-price,
	.woocommerce-cart .wc-block-components-product-metadata,
	.woocommerce-checkout .wc-block-components-product-metadata,
	.woocommerce-checkout .wc-block-components-checkout-step__description,
	.woocommerce-checkout .wc-block-components-radio-control__label,
	.woocommerce-checkout .wc-block-components-radio-control-accordion-content,
	.woocommerce-checkout .wc-block-components-order-summary-item__description,
	.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
		font-size: 0.94rem;
	}

	.woocommerce-checkout .wc-block-components-text-input label,
	.woocommerce-checkout .wc-block-components-combobox-control label {
		font-size: 0.88rem;
	}

	.woocommerce-cart .wc-block-cart__submit-button,
	.woocommerce-checkout .wc-block-components-checkout-place-order-button {
		font-size: 0.95rem;
	}
}

/* Focused homepage hierarchy and length polish */

.home .hero-order-record {
	align-self: center;
	overflow: hidden;
	border: 1px solid rgb(215 174 95 / 42%);
	border-top: 2px solid #d7ae5f;
	border-radius: 8px;
	background: rgb(3 19 33 / 64%);
	box-shadow: 0 24px 55px rgb(0 0 0 / 18%);
	padding: clamp(1.5rem, 3vw, 2.25rem);
	color: rgb(247 242 232 / 76%);
}

.home .hero-order-record__label {
	margin-bottom: 0.8rem;
	color: #d7ae5f;
	font-family: var(--etebar-mono);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.home .hero-order-record h2 {
	margin-bottom: 1.25rem;
	color: #f7f2e8;
	font-size: clamp(1.7rem, 2.3vw, 2.25rem);
	line-height: 1.12;
}

.home .hero-order-record dl {
	margin: 0 0 1.1rem;
	border-top: 1px solid rgb(215 174 95 / 24%);
}

.home .hero-order-record dl div {
	display: grid;
	grid-template-columns: minmax(90px, 0.7fr) minmax(0, 1fr);
	gap: 1rem;
	padding: 0.85rem 0;
	border-bottom: 1px solid rgb(215 174 95 / 18%);
}

.home .hero-order-record dt {
	color: rgb(247 242 232 / 58%);
	font-family: var(--etebar-mono);
	font-size: 0.66rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.home .hero-order-record dd {
	margin: 0;
	color: #f7f2e8;
	font-size: 0.88rem;
	font-weight: 600;
	text-align: right;
}

.home .hero-order-record > p:last-child {
	margin-bottom: 0;
	color: rgb(247 242 232 / 68%);
	font-size: 0.82rem;
	line-height: 1.6;
}

.home .home-trust {
	background: var(--etebar-paper);
}

.home .home-trust__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.75fr);
	gap: clamp(2rem, 5vw, 5rem);
	align-items: center;
}

.home .home-trust__proof .section-heading {
	max-width: 680px;
}

.home .home-trust__proof .proof-steps {
	margin: 2rem 0 1.5rem;
}

.home .home-trust__support {
	border: 1px solid rgb(215 174 95 / 34%);
	border-top: 2px solid var(--etebar-gold);
	border-radius: 8px;
	background: var(--etebar-navy);
	padding: clamp(1.75rem, 4vw, 2.75rem);
	color: rgb(248 244 236 / 76%);
	box-shadow: 0 20px 45px rgb(7 31 48 / 10%);
}

.home .home-trust__support .eyebrow {
	color: var(--etebar-gold-light);
}

.home .home-trust__support h2 {
	margin-bottom: 1rem;
	color: var(--etebar-paper);
	font-size: clamp(1.8rem, 2.8vw, 2.5rem);
}

.home .home-trust__support > p:not(.eyebrow) {
	margin-bottom: 1.4rem;
	color: rgb(248 244 236 / 72%);
	line-height: 1.7;
}

@media (min-width: 801px) {
	.home .hero__layout {
		grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.7fr);
		align-items: center;
		padding-top: 3.25rem;
		padding-bottom: 3rem;
	}

	.home .hero__content {
		padding-top: 0;
	}

	.home .section {
		padding-top: 5.5rem;
		padding-bottom: 5.5rem;
	}

	.home #categories {
		padding-top: 6rem;
	}

	.home .category-grid {
		grid-template-columns: repeat(6, minmax(0, 1fr));
		margin-top: 3rem;
	}

	.home .category-card {
		grid-column: span 2;
		min-height: 255px;
		padding: 1.6rem;
	}

	.home .category-card:nth-child(n + 4) {
		grid-column: span 3;
	}

	.home .category-card h3 {
		margin-top: 1rem;
	}

	.home .category-grid__footer {
		margin-top: 2rem;
	}

	.home #how-it-works .section-heading {
		column-gap: 4rem;
	}

	.home .process-list {
		margin-top: 2.75rem;
		margin-bottom: 1.75rem;
	}

	.home .process-list li,
	.home .process-list li:nth-child(even) {
		min-height: 185px;
		padding: 1.5rem;
	}

	.home .process-list li:first-child {
		padding-left: 0;
	}

	.home .process-list > li > span {
		margin-bottom: 1.65rem;
	}

	.home .special-layout {
		grid-template-columns: minmax(0, 1fr) minmax(360px, 0.65fr);
		gap: clamp(3rem, 7vw, 7rem);
	}

	.home .special-layout > div > p {
		margin-top: 1.5rem;
	}

	.home .request-preview {
		border-radius: 8px;
		padding: 2rem;
	}

	.home .faq-preview {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}

	.home .accordion {
		margin-top: 2.5rem;
	}

	.home .accordion__trigger {
		min-height: 66px;
	}
}

@media (max-width: 800px) {
	.home .hero-order-record {
		margin-top: 2rem;
		box-shadow: none;
	}

	.home .home-trust__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.home .category-card {
		grid-column: auto;
	}
}

@media (max-width: 600px) {
	.home .hero__layout {
		padding-top: 2.5rem;
		padding-bottom: 1.75rem;
	}

	.home .hero-order-record {
		padding: 1.25rem;
	}

	.home .hero-order-record h2 {
		font-size: 1.55rem;
	}

	.home .hero-order-record dd,
	.home .hero-order-record > p:last-child {
		font-size: 0.9rem;
	}

	.home .hero__safety {
		font-size: 0.78rem;
		line-height: 1.55;
	}

	.home .section {
		padding-top: 3.75rem;
		padding-bottom: 3.75rem;
	}

	.home .category-grid {
		margin-top: 2rem;
	}

	.home .category-card {
		padding: 1.25rem;
	}

	.home .category-grid__footer {
		margin-top: 1.5rem;
	}

	.home .process-list {
		margin-top: 2rem;
		margin-bottom: 1.25rem;
	}

	.home .request-preview {
		padding: 1.35rem;
	}

	.home .home-trust__support {
		padding: 1.5rem;
		box-shadow: none;
	}

	.home .home-trust__support .button {
		width: 100%;
	}

	.home .faq-preview {
		padding-top: 3.5rem;
		padding-bottom: 3.5rem;
	}

	.home .accordion {
		margin-top: 2rem;
	}
}

/* Small post-homepage visual QA fixes */

.woocommerce-cart .wc-block-components-quantity-selector__button {
	position: relative;
	color: transparent;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 0;
}

.woocommerce-cart .wc-block-components-quantity-selector__button::before {
	display: block;
	color: var(--etebar-navy);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1;
}

.woocommerce-cart .wc-block-components-quantity-selector__button--minus::before {
	content: "−";
}

.woocommerce-cart .wc-block-components-quantity-selector__button--plus::before {
	content: "+";
}

.woocommerce img[src*="woocommerce-placeholder"],
.wc-block-cart img[src*="woocommerce-placeholder"],
.wc-block-checkout img[src*="woocommerce-placeholder"] {
	border: 1px solid color-mix(in srgb, var(--etebar-border) 85%, var(--etebar-gold));
	border-radius: 6px;
	background:
		linear-gradient(135deg, rgb(207 174 104 / 8%), transparent 55%),
		var(--etebar-paper);
	padding: 0.45rem;
	opacity: 0.72;
}

@media (min-width: 801px) {
	body.single-product .site-footer__grid,
	body.woocommerce-cart .site-footer__grid,
	body.page-template-page-contact .site-footer__grid {
		padding-top: 3.75rem;
		padding-bottom: 3.25rem;
	}

	body.single-product .woocommerce-main,
	body.woocommerce-cart .woocommerce-main {
		padding-bottom: 4.5rem;
	}

	body.page-template-page-contact .contact-page .section {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
}

@media (max-width: 600px) {
	.header-cart__count,
	.eyebrow,
	.order-request-item__label,
	.special-request-page .order-request-process__steps > li > span,
	.etebar-product__quote-label,
	.etebar-product__status,
	.etebar-shop-card__type,
	.etebar-quote-note span,
	.home .hero-order-record__label,
	.home .hero-order-record dt {
		font-size: 0.75rem;
		line-height: 1.45;
	}

	.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		margin-top: 0;
		border-top: 0;
	}

	.special-request-page .order-request-content {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}

	.special-request-page .order-request-layout {
		gap: 1.5rem;
	}

	.special-request-page .order-request-panel {
		padding: 1.25rem;
	}

	.special-request-page .order-request-panel__intro {
		margin-bottom: 1.5rem;
		padding-bottom: 1.25rem;
	}

	.special-request-page .order-request-form .order-request-form__group {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}

	.special-request-page .order-request-form .order-request-form__group + .order-request-form__group {
		padding-top: 1.5rem;
	}

	.special-request-page .order-request-form .field-grid {
		gap: 0.75rem;
	}

	.special-request-page .order-request-form label {
		margin-bottom: 0.75rem;
	}

	.special-request-page .order-request-form__help {
		margin-bottom: 0.85rem;
	}

	.special-request-page .order-request-submit {
		gap: 0.75rem;
		margin-top: 1rem;
		padding-top: 1rem;
	}

	body.single-product .site-footer__grid,
	body.woocommerce-cart .site-footer__grid,
	body.page-template-page-contact .site-footer__grid {
		gap: 1rem;
		padding-top: 1.25rem;
		padding-bottom: 1rem;
	}
}

/* Public storefront premium composition */

:root {
	--etebar-shadow-soft: 0 22px 60px rgb(7 31 48 / 8%);
	--etebar-shadow-card: 0 14px 34px rgb(7 31 48 / 7%);
	--etebar-rule-gold: color-mix(in srgb, var(--etebar-gold) 62%, var(--etebar-border));
}

.site-header {
	border-bottom-color: rgb(215 174 95 / 24%);
	background: rgb(3 19 33 / 96%);
	box-shadow: 0 8px 30px rgb(3 19 33 / 14%);
}

.site-header__inner {
	min-height: 82px;
	gap: clamp(1.25rem, 3vw, 3rem);
}

.site-header .brand {
	flex: 0 0 auto;
	color: var(--etebar-paper);
}

.brand__mark {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border: 1px solid rgb(215 174 95 / 62%);
	background: #0a3048;
	box-shadow: inset 0 0 0 3px #061d30;
}

.brand__mark::before,
.brand__mark::after {
	position: absolute;
	z-index: -1;
	background: rgb(215 174 95 / 16%);
	content: "";
	transform: rotate(-35deg);
}

.brand__mark::before {
	width: 52px;
	height: 1px;
}

.brand__mark::after {
	width: 1px;
	height: 52px;
}

.brand__mark span {
	position: relative;
}

.site-header .brand__text strong {
	color: var(--etebar-paper);
	font-size: 0.96rem;
	letter-spacing: 0.015em;
}

.site-header .brand__text small {
	color: rgb(247 242 232 / 55%);
	letter-spacing: 0.025em;
}

.site-header .site-nav__list {
	gap: clamp(0.2rem, 1vw, 0.8rem);
}

.site-header .site-nav__list a {
	position: relative;
	color: rgb(247 242 232 / 72%);
	font-size: 0.76rem;
	letter-spacing: 0.02em;
}

.site-header .site-nav__list a::after {
	position: absolute;
	right: 0.7rem;
	bottom: 0.35rem;
	left: 0.7rem;
	height: 1px;
	background: var(--etebar-gold);
	content: "";
	opacity: 0;
	transform: scaleX(0.35);
	transition: opacity 180ms ease, transform 180ms ease;
}

.site-header .site-nav__list a:hover::after,
.site-header .site-nav__list .current-menu-item > a::after {
	opacity: 1;
	transform: scaleX(1);
}

.site-header .header-support {
	color: rgb(247 242 232 / 60%);
	font-size: 0.7rem;
	letter-spacing: 0.025em;
}

.site-header .header-order,
.woocommerce .site-header .header-order {
	min-height: 42px;
	border-color: var(--etebar-gold);
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
	box-shadow: inset 0 1px rgb(255 255 255 / 34%);
}

.site-header .header-order:hover,
.woocommerce .site-header .header-order:hover {
	border-color: var(--etebar-gold-light);
	background: var(--etebar-gold-light);
	color: var(--etebar-navy-dark);
}

.home .hero {
	border-bottom: 1px solid rgb(215 174 95 / 34%);
	background:
		radial-gradient(circle at 76% 24%, rgb(36 99 71 / 32%), transparent 25rem),
		linear-gradient(122deg, #082940 0%, #031321 72%);
}

.home .hero__grid-pattern {
	background-size: 72px 72px;
	opacity: 0.8;
}

.home .hero__layout {
	min-height: 640px;
	padding-top: clamp(4rem, 7vw, 6.5rem);
	padding-bottom: clamp(3.5rem, 6vw, 5.5rem);
}

.home .hero h1 {
	max-width: 780px;
	font-size: clamp(4.25rem, 6.1vw, 6.5rem);
	font-weight: 600;
	letter-spacing: -0.048em;
	line-height: 0.92;
	text-wrap: balance;
}

.home .hero__lead {
	max-width: 650px;
	margin-bottom: 1.4rem;
	font-size: 1.08rem;
	line-height: 1.75;
}

.hero__route-summary {
	display: grid;
	max-width: 620px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 0 1.75rem;
	border-top: 1px solid rgb(215 174 95 / 27%);
	border-bottom: 1px solid rgb(215 174 95 / 27%);
}

.hero__route-summary div {
	padding: 0.85rem 1rem 0.9rem 0;
}

.hero__route-summary div + div {
	border-left: 1px solid rgb(215 174 95 / 22%);
	padding-left: 1.25rem;
}

.hero__route-summary dt {
	color: rgb(247 242 232 / 50%);
	font-family: var(--etebar-mono);
	font-size: 0.61rem;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.hero__route-summary dd {
	margin: 0.2rem 0 0;
	color: var(--etebar-paper);
	font-family: var(--etebar-serif);
	font-size: 1rem;
}

.home .hero-order-record {
	position: relative;
	border: 1px solid rgb(215 174 95 / 48%);
	border-radius: 2px;
	background:
		linear-gradient(145deg, rgb(255 255 255 / 5%), transparent 42%),
		rgb(3 19 33 / 76%);
	box-shadow: 0 34px 80px rgb(0 0 0 / 24%);
}

.home .hero-order-record::before {
	position: absolute;
	top: -1px;
	right: 2rem;
	left: 2rem;
	height: 3px;
	background: var(--etebar-gold);
	content: "";
}

.home .hero-order-record h2 {
	font-size: clamp(2rem, 2.6vw, 2.7rem);
}

.home .hero-order-record dl div {
	padding-block: 1rem;
}

.home .hero__safety {
	margin: 0;
	border-top: 1px solid rgb(215 174 95 / 20%);
	padding: 1rem 0 1.15rem;
	font-size: 0.7rem;
	letter-spacing: 0.015em;
}

.home .section {
	position: relative;
}

.home .section--muted {
	background:
		linear-gradient(90deg, transparent, rgb(207 174 104 / 8%) 50%, transparent) top / 100% 1px no-repeat,
		var(--etebar-muted);
}

.home .section-heading {
	max-width: 800px;
}

.home .section-heading h2 {
	font-size: clamp(2.75rem, 4.4vw, 4.6rem);
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.home .section-heading > p:last-child {
	max-width: 680px;
	font-size: 0.98rem;
	line-height: 1.75;
}

.category-card {
	position: relative;
	overflow: hidden;
	border-color: color-mix(in srgb, var(--etebar-border) 88%, var(--etebar-gold));
	border-radius: 3px;
	box-shadow: 0 1px 0 rgb(255 255 255 / 70%);
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.category-card::after {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 52px;
	height: 52px;
	border-right: 1px solid rgb(207 174 104 / 24%);
	border-bottom: 1px solid rgb(207 174 104 / 24%);
	content: "";
	pointer-events: none;
}

.category-card:hover {
	border-color: var(--etebar-rule-gold);
	box-shadow: var(--etebar-shadow-card);
	transform: translateY(-2px);
}

.category-card__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	border-bottom: 1px solid var(--etebar-border);
	padding-bottom: 0.8rem;
}

.category-card__top > span {
	color: var(--etebar-gray);
	font-family: var(--etebar-mono);
	font-size: 0.58rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.category-card h3 {
	font-size: clamp(1.45rem, 2vw, 1.8rem);
	line-height: 1.12;
}

.category-card > p {
	line-height: 1.7;
}

.category-card .card-link {
	border-color: color-mix(in srgb, var(--etebar-navy) 76%, var(--etebar-border));
	border-radius: 2px;
	font-weight: 600;
}

.home .process-list {
	border-top: 2px solid var(--etebar-navy);
}

.home .process-list li {
	background: color-mix(in srgb, var(--etebar-paper) 70%, transparent);
}

.home .process-list > li > span {
	border-radius: 50%;
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.home .request-preview {
	border-radius: 3px;
	border-top: 3px solid var(--etebar-gold);
	box-shadow: var(--etebar-shadow-soft);
}

.home .home-trust__support {
	border-radius: 3px;
	background:
		linear-gradient(145deg, rgb(255 255 255 / 4%), transparent 42%),
		var(--etebar-navy);
}

.page-template-page-products .page-hero {
	padding-block: clamp(5rem, 8vw, 8rem);
}

.page-template-page-products .products-hero__layout {
	align-items: stretch;
}

.page-template-page-products .products-hero__intro {
	align-self: center;
}

.page-template-page-products .products-hero__intro h1 {
	font-size: clamp(4rem, 6.2vw, 6.6rem);
	letter-spacing: -0.05em;
	line-height: 0.92;
	text-wrap: balance;
}

.products-hero__principles {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin: 1.6rem 0 0;
	padding: 0;
	list-style: none;
}

.products-hero__principles li {
	border: 1px solid rgb(215 174 95 / 36%);
	border-radius: 999px;
	padding: 0.35rem 0.7rem;
	color: rgb(247 242 232 / 72%);
	font-size: 0.71rem;
}

.page-template-page-products .products-hero__record {
	position: relative;
	align-self: stretch;
	border-radius: 2px;
	padding: clamp(2rem, 3vw, 2.75rem);
}

.page-template-page-products .products-hero__record::before {
	position: absolute;
	top: -1px;
	right: 2rem;
	left: 2rem;
	height: 3px;
	background: var(--etebar-gold);
	content: "";
}

.page-template-page-products .products-hero__record h2 {
	max-width: 380px;
	font-size: clamp(2rem, 2.8vw, 2.75rem);
}

.products-categories {
	padding-block: clamp(5rem, 8vw, 8rem);
}

.products-categories__heading {
	padding-bottom: 2rem;
	border-bottom: 1px solid var(--etebar-border);
}

.products-categories__heading h2 {
	font-size: clamp(2.8rem, 4.4vw, 4.5rem);
}

.products-categories .category-grid {
	border-top: 2px solid var(--etebar-navy);
	box-shadow: var(--etebar-shadow-soft);
}

.products-categories .category-card {
	min-height: 330px;
}

.products-categories .category-card--request {
	background:
		linear-gradient(145deg, rgb(207 174 104 / 9%), transparent 48%),
		var(--etebar-paper);
}

.woocommerce-main {
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--etebar-muted) 40%, var(--etebar-ivory)), var(--etebar-ivory) 34rem);
	padding-top: clamp(4rem, 7vw, 6.5rem);
}

.woocommerce .woocommerce-breadcrumb {
	margin-bottom: 2.25rem;
	font-family: var(--etebar-mono);
	font-size: 0.66rem;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.woocommerce .page-title {
	max-width: 900px;
	margin-bottom: clamp(3rem, 5vw, 5rem);
	font-size: clamp(3.4rem, 6.2vw, 6.25rem);
	letter-spacing: -0.048em;
	line-height: 0.94;
}

.woocommerce ul.products {
	gap: clamp(1rem, 2vw, 1.75rem);
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	overflow: visible;
	border-radius: 3px;
	box-shadow: 0 1px 0 rgb(255 255 255 / 80%);
}

.woocommerce ul.products li.product::before {
	position: absolute;
	z-index: 2;
	top: -1px;
	right: 1.25rem;
	left: 1.25rem;
	height: 3px;
	background: var(--etebar-gold);
	content: "";
	opacity: 0;
	transition: opacity 180ms ease;
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: var(--etebar-rule-gold);
	box-shadow: var(--etebar-shadow-card);
	transform: translateY(-3px);
}

.woocommerce ul.products li.product:hover::before {
	opacity: 1;
}

.etebar-shop-card__image {
	position: relative;
	display: block;
	overflow: hidden;
	border-bottom: 1px solid var(--etebar-border);
	background:
		linear-gradient(135deg, rgb(207 174 104 / 10%), transparent 54%),
		color-mix(in srgb, var(--etebar-muted) 54%, var(--etebar-paper));
}

.woocommerce ul.products li.product .etebar-shop-card__image img {
	aspect-ratio: 1 / 0.82;
	border-bottom: 0;
	transition: transform 320ms ease;
}

.woocommerce ul.products li.product:hover .etebar-shop-card__image img {
	transform: scale(1.025);
}

.etebar-shop-card__image-label,
.etebar-product__media-label {
	position: absolute;
	z-index: 2;
	top: 0.85rem;
	left: 0.85rem;
	border: 1px solid rgb(255 255 255 / 70%);
	border-radius: 999px;
	background: rgb(255 252 246 / 88%);
	padding: 0.25rem 0.55rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-mono);
	font-size: 0.55rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	backdrop-filter: blur(8px);
}

.etebar-shop-card__body {
	padding: 1.6rem 1.6rem 0;
}

.etebar-shop-card__meta {
	margin-bottom: 1rem;
}

.etebar-shop-card__meta span {
	border-color: var(--etebar-rule-gold);
	background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin-bottom: 0.8rem;
	font-size: clamp(1.45rem, 2vw, 1.75rem);
	line-height: 1.14;
}

.etebar-shop-card__description {
	min-height: 4.5em;
	font-size: 0.86rem;
	line-height: 1.65;
}

.woocommerce ul.products li.product .price {
	margin: 0.2rem 0 1rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.28rem;
}

.etebar-quote-note {
	margin-bottom: 0;
	padding-bottom: 1rem;
	font-size: 0.76rem;
}

.etebar-shop-card__footer {
	padding: 0 1.6rem 1.6rem;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button {
	width: 100%;
	min-height: 48px;
	justify-content: center;
	margin: 0;
	border-radius: 2px;
	background: var(--etebar-navy);
	letter-spacing: 0.01em;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover {
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
}

.single-product .woocommerce-main {
	background:
		linear-gradient(180deg, #061d30 0, #031321 50rem, var(--etebar-ivory) 50rem);
	padding-top: clamp(3.5rem, 6vw, 5.5rem);
}

.single-product .etebar-product__layout {
	grid-template-columns: minmax(0, 1.08fr) minmax(420px, 0.82fr);
	gap: clamp(2.5rem, 5vw, 5.5rem);
}

.single-product .etebar-product__heading {
	margin-bottom: 1.35rem;
}

.single-product .etebar-product__intro .product_title {
	max-width: 760px;
	font-size: clamp(3.8rem, 6.2vw, 6.6rem);
	letter-spacing: -0.048em;
	line-height: 0.91;
	text-wrap: balance;
}

.single-product .etebar-product__description {
	max-width: 650px;
	font-size: 1rem;
	line-height: 1.75;
}

.etebar-product__media {
	position: relative;
	overflow: hidden;
	margin-top: 2.25rem;
	border: 1px solid rgb(215 174 95 / 42%);
	border-radius: 2px;
	background:
		linear-gradient(145deg, rgb(215 174 95 / 13%), transparent 55%),
		#f3ede2;
	box-shadow: 0 28px 65px rgb(0 0 0 / 18%);
}

.etebar-product__media::after {
	position: absolute;
	top: 1rem;
	right: 1rem;
	width: 58px;
	height: 58px;
	border-top: 1px solid rgb(11 43 64 / 20%);
	border-right: 1px solid rgb(11 43 64 / 20%);
	content: "";
	pointer-events: none;
}

.etebar-product__media--placeholder img {
	min-height: 420px;
	padding: clamp(2.5rem, 6vw, 5rem);
}

.etebar-product__media figcaption {
	background: rgb(255 252 246 / 78%);
	font-size: 0.72rem;
}

.etebar-product__media-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.9rem 0 0;
	color: rgb(247 242 232 / 55%);
	font-family: var(--etebar-mono);
	font-size: 0.63rem;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

.single-product .etebar-product__catalog-link {
	margin: 0;
}

.etebar-product__request-panel {
	position: sticky;
	top: 118px;
	overflow: hidden;
	border: 1px solid var(--etebar-rule-gold);
	border-radius: 3px;
	padding: clamp(2rem, 3vw, 2.8rem);
	box-shadow: 0 32px 75px rgb(0 0 0 / 22%);
}

.etebar-product__request-panel::before {
	position: absolute;
	top: 0;
	right: 2rem;
	left: 2rem;
	height: 3px;
	background: var(--etebar-gold);
	content: "";
}

.etebar-product__request-panel h2 {
	font-size: clamp(2rem, 3vw, 2.8rem);
	line-height: 1.05;
}

.woocommerce div.product .etebar-product__request-panel p.price {
	margin: 1.4rem 0 1.6rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(2rem, 3vw, 2.7rem);
}

.etebar-product__purchase {
	border-top: 1px solid var(--etebar-border);
	border-bottom: 1px solid var(--etebar-border);
	padding: 1.4rem 0;
}

.woocommerce div.product form.cart {
	display: grid;
	grid-template-columns: auto minmax(180px, 1fr);
	gap: 0.75rem;
	margin: 0;
}

.woocommerce div.product form.cart .quantity .qty {
	height: 52px;
	border-radius: 2px;
}

.woocommerce div.product form.cart .button.single_add_to_cart_button {
	min-height: 52px;
	border-radius: 2px;
}

.etebar-product__safety {
	margin-top: 1.4rem;
	border: 0;
	border-left: 3px solid var(--etebar-gold);
	padding: 1rem 1.1rem;
}

.etebar-product__request-actions {
	margin-top: 1.25rem;
}

.etebar-product__details {
	position: relative;
	grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
	margin-top: clamp(5rem, 9vw, 8rem);
	border-radius: 3px;
	padding: clamp(2rem, 5vw, 4.5rem);
	box-shadow: var(--etebar-shadow-soft);
}

.etebar-product__details::before {
	position: absolute;
	top: -1px;
	right: 3rem;
	left: 3rem;
	height: 3px;
	background: var(--etebar-gold);
	content: "";
}

.etebar-product__details-intro h2 {
	font-size: clamp(2.35rem, 4vw, 3.8rem);
	letter-spacing: -0.03em;
	line-height: 1;
}

.etebar-product__details .etebar-product__records {
	border-top: 2px solid var(--etebar-navy);
}

.etebar-product__details .etebar-product__records div {
	padding: 1.15rem 0;
}

.site-footer {
	position: relative;
	border-top: 0;
	background:
		linear-gradient(145deg, rgb(255 255 255 / 3%), transparent 42%),
		var(--etebar-navy-dark);
}

.site-footer__order-callout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(2rem, 5vw, 5rem);
	align-items: center;
	border-bottom: 1px solid rgb(215 174 95 / 22%);
	padding-top: clamp(3rem, 5vw, 4.5rem);
	padding-bottom: clamp(3rem, 5vw, 4.5rem);
}

.site-footer__order-callout > div:first-child {
	max-width: 760px;
}

.site-footer__kicker {
	margin-bottom: 0.65rem;
	color: var(--etebar-gold);
	font-family: var(--etebar-mono);
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.site-footer__order-callout h2 {
	margin-bottom: 0.75rem;
	color: var(--etebar-paper);
	font-size: clamp(2.25rem, 4vw, 4rem);
	letter-spacing: -0.03em;
	line-height: 1;
}

.site-footer__order-callout > div:first-child > p:last-child {
	max-width: 650px;
	margin: 0;
	color: rgb(247 243 234 / 62%);
	font-size: 0.88rem;
}

.site-footer__callout-actions {
	display: flex;
	align-items: center;
	gap: 1.25rem;
}

.site-footer__callout-actions .button {
	min-height: 48px;
	border-radius: 2px;
}

.site-footer__grid {
	grid-template-columns: 1.35fr 0.7fr 1fr;
	padding-top: 3.5rem;
	padding-bottom: 3.5rem;
}

.site-footer__heading {
	padding-bottom: 0.65rem;
	border-bottom: 1px solid rgb(215 174 95 / 18%);
	color: var(--etebar-gold-light);
	font-family: var(--etebar-mono);
	font-size: 0.64rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.site-footer .footer-menu {
	display: grid;
	gap: 0;
}

.site-footer .footer-menu a {
	display: inline-block;
	padding-block: 0.35rem;
}

@media (prefers-reduced-motion: reduce) {
	.category-card,
	.woocommerce ul.products li.product,
	.woocommerce ul.products li.product .etebar-shop-card__image img,
	.site-header .site-nav__list a::after {
		transition: none;
	}
}

@media (max-width: 1024px) {
	.site-header__inner {
		min-height: 76px;
	}

	.site-header .site-nav__list {
		gap: 0;
	}

	.site-header .site-nav__list a {
		padding-inline: 0.5rem;
	}

	.site-header .brand__text small,
	.site-header .header-support {
		display: none;
	}

	.home .hero h1 {
		font-size: clamp(3.8rem, 7vw, 5.5rem);
	}

	.single-product .etebar-product__layout {
		grid-template-columns: minmax(0, 1fr) minmax(360px, 0.8fr);
	}

	.etebar-product__request-panel {
		top: 98px;
	}
}

@media (max-width: 800px) {
	.site-header {
		box-shadow: none;
	}

	.site-header__inner {
		min-height: 72px;
	}

	.site-header .site-nav__list a::after {
		display: none;
	}

	.home .hero__layout {
		min-height: 0;
		padding-top: 4rem;
		padding-bottom: 3rem;
	}

	.home .hero h1 {
		font-size: clamp(3.3rem, 12vw, 5.2rem);
	}

	.hero__route-summary {
		max-width: 100%;
	}

	.products-hero__principles {
		margin-bottom: 1.5rem;
	}

	.page-template-page-products .products-hero__intro h1 {
		font-size: clamp(3.2rem, 12vw, 5rem);
	}

	.products-categories__heading {
		padding-bottom: 1.5rem;
	}

	.woocommerce .page-title {
		font-size: clamp(3rem, 11vw, 5rem);
	}

	.woocommerce ul.products li.product:hover,
	.woocommerce-page ul.products li.product:hover,
	.category-card:hover {
		transform: none;
	}

	.single-product .woocommerce-main {
		background:
			linear-gradient(180deg, #061d30 0, #031321 61rem, var(--etebar-ivory) 61rem);
	}

	.single-product .etebar-product__layout {
		grid-template-columns: 1fr;
	}

	.single-product .etebar-product__intro .product_title {
		font-size: clamp(3.2rem, 12vw, 5rem);
	}

	.etebar-product__media--placeholder img {
		min-height: 320px;
	}

	.etebar-product__request-panel {
		position: relative;
		top: auto;
		box-shadow: var(--etebar-shadow-soft);
	}

	.site-footer__order-callout {
		grid-template-columns: 1fr;
	}

	.site-footer__callout-actions {
		justify-content: flex-start;
	}
}

@media (max-width: 600px) {
	.site-header__inner {
		gap: 0.4rem;
	}

	.site-header .brand {
		min-width: 0;
		flex: 1 1 auto;
	}

	.site-header .brand__mark {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
	}

	.home .hero__layout {
		padding-top: 3.25rem;
		padding-bottom: 2.5rem;
	}

	.home .hero h1 {
		font-size: clamp(2.9rem, 13.5vw, 4rem);
		line-height: 0.98;
	}

	.hero__route-summary {
		grid-template-columns: 1fr;
	}

	.hero__route-summary div + div {
		border-top: 1px solid rgb(215 174 95 / 22%);
		border-left: 0;
		padding-left: 0;
	}

	.home .hero .button-row {
		align-items: stretch;
		flex-direction: column;
	}

	.home .hero .button {
		width: 100%;
	}

	.home .section-heading h2,
	.products-categories__heading h2 {
		font-size: clamp(2.4rem, 11vw, 3.25rem);
	}

	.category-card__top > span {
		font-size: 0.62rem;
	}

	.products-hero__principles {
		display: grid;
	}

	.products-hero__principles li {
		border-radius: 2px;
	}

	.woocommerce ul.products {
		gap: 1.25rem;
	}

	.woocommerce ul.products[class*="columns-"] li.product,
	.woocommerce-page ul.products[class*="columns-"] li.product {
		width: 100%;
		margin: 0;
	}

	.etebar-shop-card__description {
		min-height: 0;
	}

	.single-product .woocommerce-main {
		background:
			linear-gradient(180deg, #061d30 0, #031321 54rem, var(--etebar-ivory) 54rem);
	}

	.etebar-product__media--placeholder img {
		min-height: 260px;
		padding: 2rem;
	}

	.etebar-product__media-footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.etebar-product__request-panel {
		padding: 1.5rem;
	}

	.woocommerce div.product form.cart {
		grid-template-columns: 1fr;
	}

	.woocommerce div.product form.cart .quantity,
	.woocommerce div.product form.cart .quantity .qty {
		width: 100%;
	}

	.etebar-product__details {
		grid-template-columns: 1fr;
		gap: 1.75rem;
		margin-top: 4rem;
		padding: 1.5rem;
	}

	.etebar-product__details::before {
		right: 1.5rem;
		left: 1.5rem;
	}

	.site-footer__order-callout {
		gap: 1.5rem;
		padding-top: 2.75rem;
		padding-bottom: 2.75rem;
	}

	.site-footer__order-callout h2 {
		font-size: 2.4rem;
	}

	.site-footer__callout-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.site-footer__callout-actions .button,
	.site-footer__callout-actions .text-link {
		width: 100%;
		text-align: center;
	}

	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 2rem;
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
	}

	.site-footer__brand,
	.site-footer__brand > p,
	.site-footer__grid > div > p {
		max-width: none;
	}

	.site-footer__legal {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* Homepage smartphone order-review visual */

.home .hero__layout {
	grid-template-columns: minmax(0, 1.08fr) minmax(520px, 0.92fr);
	gap: clamp(2.5rem, 4vw, 4.5rem);
}

.hero__visual {
	display: grid;
	grid-template-columns: 292px minmax(0, 1fr);
	gap: 1.1rem;
	align-items: center;
}

.hero-phone-mockup {
	position: relative;
	z-index: 2;
	width: 292px;
	border: 1px solid rgb(247 242 232 / 30%);
	border-radius: 47px;
	background:
		linear-gradient(145deg, #183e55 0%, #061525 36%, #020c14 100%);
	padding: 9px;
	box-shadow:
		0 42px 85px rgb(0 0 0 / 38%),
		inset 0 1px rgb(255 255 255 / 24%),
		inset 0 -1px rgb(0 0 0 / 80%);
}

.hero-phone-mockup::before,
.hero-phone-mockup::after {
	position: absolute;
	left: -4px;
	width: 3px;
	border-radius: 3px 0 0 3px;
	background: #1f465b;
	content: "";
}

.hero-phone-mockup::before {
	top: 112px;
	height: 58px;
	box-shadow: 0 72px #1f465b;
}

.hero-phone-mockup::after {
	top: 84px;
	height: 25px;
}

.hero-phone-mockup__hardware {
	position: absolute;
	z-index: 4;
	top: 18px;
	left: 50%;
	width: 91px;
	height: 25px;
	border-radius: 999px;
	background: #02070b;
	box-shadow: inset 0 -1px rgb(255 255 255 / 8%);
	transform: translateX(-50%);
}

.hero-phone-mockup__hardware::before {
	position: absolute;
	top: 9px;
	left: 21px;
	width: 34px;
	height: 5px;
	border-radius: 999px;
	background: #101a21;
	content: "";
}

.hero-phone-mockup__hardware span {
	position: absolute;
	top: 8px;
	right: 15px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #102c3d;
	box-shadow: inset 0 0 0 2px #06131c;
}

.hero-phone-mockup__screen {
	position: relative;
	overflow: hidden;
	min-height: 568px;
	border: 1px solid rgb(255 255 255 / 12%);
	border-radius: 38px;
	background:
		linear-gradient(180deg, #fffcf6 0%, #f4ecdf 100%);
	color: var(--etebar-charcoal);
}

.hero-phone-mockup__header {
	display: grid;
	grid-template-columns: 30px 1fr 20px;
	gap: 0.6rem;
	align-items: center;
	border-bottom: 1px solid var(--etebar-border);
	background: #082940;
	padding: 2.8rem 1.15rem 0.9rem;
	color: var(--etebar-paper);
}

.hero-phone-mockup__brand-mark {
	display: inline-grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border: 1px solid rgb(215 174 95 / 62%);
	border-radius: 3px;
	color: var(--etebar-gold-light);
	font-family: var(--etebar-serif);
	font-size: 0.9rem;
	font-weight: 600;
}

.hero-phone-mockup__header div {
	display: grid;
	gap: 0.1rem;
}

.hero-phone-mockup__header strong {
	font-family: var(--etebar-serif);
	font-size: 0.85rem;
	line-height: 1;
}

.hero-phone-mockup__header small {
	color: rgb(247 242 232 / 52%);
	font-family: var(--etebar-mono);
	font-size: 0.45rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.hero-phone-mockup__menu,
.hero-phone-mockup__menu::before,
.hero-phone-mockup__menu::after {
	display: block;
	width: 17px;
	height: 1px;
	background: rgb(247 242 232 / 65%);
	content: "";
}

.hero-phone-mockup__menu::before {
	transform: translateY(-5px);
}

.hero-phone-mockup__menu::after {
	transform: translateY(4px);
}

.hero-phone-mockup__content {
	padding: 1.2rem 1.15rem 1.4rem;
}

.hero-phone-mockup__eyebrow {
	margin-bottom: 0.5rem;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.48rem;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.hero-phone-mockup__title-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
}

.hero-phone-mockup__title-row h2 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: 1.65rem;
	letter-spacing: -0.025em;
}

.hero-phone-mockup__title-row > span {
	margin-top: 0.15rem;
	border: 1px solid var(--etebar-rule-gold);
	border-radius: 999px;
	padding: 0.18rem 0.45rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-mono);
	font-size: 0.48rem;
	font-weight: 600;
	text-transform: uppercase;
}

.hero-phone-mockup__items {
	display: grid;
	gap: 0;
	margin: 1rem 0;
	padding: 0;
	border-top: 1px solid var(--etebar-border);
	list-style: none;
}

.hero-phone-mockup__items li {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr) auto;
	gap: 0.65rem;
	align-items: center;
	border-bottom: 1px solid var(--etebar-border);
	padding: 0.7rem 0;
}

.hero-phone-mockup__item-mark {
	display: inline-grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
	border-radius: 3px;
	background:
		linear-gradient(145deg, rgb(207 174 104 / 18%), transparent),
		var(--etebar-paper);
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.53rem;
	font-weight: 600;
}

.hero-phone-mockup__items li > div {
	display: grid;
	gap: 0.12rem;
}

.hero-phone-mockup__items strong {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 0.78rem;
	line-height: 1.1;
}

.hero-phone-mockup__items small {
	color: var(--etebar-gray);
	font-size: 0.53rem;
	line-height: 1.2;
}

.hero-phone-mockup__items li > span:last-child {
	color: color-mix(in srgb, var(--etebar-gray) 72%, transparent);
	font-family: var(--etebar-mono);
	font-size: 0.47rem;
}

.hero-phone-mockup__review {
	border: 1px solid var(--etebar-border);
	border-top: 2px solid var(--etebar-gold);
	border-radius: 3px;
	background: rgb(255 252 246 / 72%);
	padding: 0.75rem;
}

.hero-phone-mockup__review > div {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 0.75rem;
}

.hero-phone-mockup__review > div span {
	color: var(--etebar-gray);
	font-family: var(--etebar-mono);
	font-size: 0.46rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.hero-phone-mockup__review > div strong {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 0.78rem;
}

.hero-phone-mockup__review p {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0.55rem 0 0;
	border-top: 1px solid var(--etebar-border);
	padding-top: 0.5rem;
	color: var(--etebar-green-dark);
	font-size: 0.58rem;
	font-weight: 600;
}

.hero-phone-mockup__review p span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--etebar-green);
	box-shadow: 0 0 0 3px rgb(36 99 71 / 11%);
}

.hero-phone-mockup__routes {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 0.8rem;
	border-radius: 3px;
	background: var(--etebar-navy);
	padding: 0.65rem 0.75rem;
	color: rgb(247 242 232 / 62%);
	font-size: 0.53rem;
}

.hero-phone-mockup__routes strong {
	color: var(--etebar-gold-light);
}

.hero-phone-mockup__home-indicator {
	position: absolute;
	bottom: 7px;
	left: 50%;
	width: 92px;
	height: 4px;
	border-radius: 999px;
	background: rgb(11 43 64 / 38%);
	transform: translateX(-50%);
}

.hero__visual .hero-order-record {
	align-self: center;
	padding: 1.35rem;
	box-shadow: 0 25px 55px rgb(0 0 0 / 18%);
}

.hero__visual .hero-order-record::before {
	right: 1.2rem;
	left: 1.2rem;
}

.hero__visual .hero-order-record h2 {
	font-size: 1.55rem;
}

.hero__visual .hero-order-record dl div {
	grid-template-columns: 1fr;
	gap: 0.15rem;
	padding-block: 0.65rem;
}

.hero__visual .hero-order-record dd {
	text-align: left;
}

.hero__visual .hero-order-record > p:last-child {
	font-size: 0.7rem;
}

@media (max-width: 1100px) and (min-width: 801px) {
	.home .hero__layout {
		grid-template-columns: minmax(0, 1fr) 320px;
	}

	.hero__visual {
		display: block;
	}

	.hero-phone-mockup {
		margin-inline: auto;
	}

	.hero__visual .hero-order-record {
		display: none;
	}
}

@media (max-width: 800px) {
	.home .hero__layout {
		display: block;
	}

	.hero__visual {
		display: block;
		margin-top: 2.75rem;
	}

	.hero-phone-mockup {
		width: 264px;
		margin-inline: auto;
	}

	.hero-phone-mockup__screen {
		min-height: 530px;
	}

	.hero__visual .hero-order-record {
		display: none;
	}
}

@media (max-width: 600px) {
	.hero__visual {
		margin-top: 2.25rem;
	}

	.hero-phone-mockup {
		width: 252px;
		border-radius: 41px;
		padding: 8px;
	}

	.hero-phone-mockup__screen {
		min-height: 510px;
		border-radius: 33px;
	}

	.hero-phone-mockup__header {
		padding-top: 2.55rem;
	}

	.hero-phone-mockup__content {
		padding: 1rem;
	}

	.hero-phone-mockup__items {
		margin-block: 0.8rem;
	}

	.hero-phone-mockup__items li {
		padding-block: 0.55rem;
	}
}

/* Frontend stabilization v1 after screenshot review */

@media (max-width: 720px) {
	.site-header__inner {
		min-height: 58px;
		gap: 0.45rem;
		padding-block: 0.35rem;
	}

	.site-header .brand {
		min-width: 0;
		flex: 1 1 auto;
		gap: 0.45rem;
	}

	.site-header .brand__mark {
		width: 30px;
		height: 30px;
		flex-basis: 30px;
		font-size: 0.95rem;
	}

	.site-header .brand__text strong {
		max-width: 118px;
		font-size: 0.88rem;
	}

	.site-header .brand__text small,
	.site-header .header-cart {
		display: none;
	}

	.site-header .header-order {
		min-height: 38px;
		padding-inline: 0.78rem;
		font-size: 0.76rem;
	}

	.menu-toggle {
		width: 38px;
		height: 38px;
		flex: 0 0 38px;
	}
}

@media (max-width: 390px) {
	.site-header .brand__text strong {
		max-width: 96px;
	}

	.site-header .header-order {
		padding-inline: 0.62rem;
		font-size: 0.72rem;
	}
}

.site-footer__order-callout {
	padding-top: clamp(2rem, 4vw, 3rem);
	padding-bottom: clamp(2rem, 4vw, 3rem);
}

.site-footer__order-callout h2 {
	font-size: clamp(2rem, 3vw, 3.15rem);
}

.site-footer__grid {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.woocommerce-cart .site-footer__order-callout,
.woocommerce-checkout .site-footer__order-callout {
	padding-top: 2rem;
	padding-bottom: 2rem;
}

@media (max-width: 600px) {
	.site-footer__order-callout {
		gap: 1.1rem;
		padding-top: 2rem;
		padding-bottom: 2rem;
	}

	.site-footer__order-callout h2 {
		font-size: 2rem;
	}

	.site-footer__grid {
		gap: 1.5rem;
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
}

@media (max-width: 600px) {
	.home .hero__layout {
		padding-top: 2.5rem;
		padding-bottom: 2.25rem;
	}

	.home .hero h1 {
		font-size: clamp(2.45rem, 11vw, 3.25rem);
	}

	.home .hero__lead {
		margin-bottom: 1.2rem;
		font-size: 0.94rem;
		line-height: 1.55;
	}

	.home .hero__route-summary {
		display: none;
	}

	.hero__visual {
		margin-top: 1.55rem;
	}

	.hero-phone-mockup {
		width: 218px;
	}

	.hero-phone-mockup__screen {
		min-height: 430px;
	}

	.hero-phone-mockup__title-row h2 {
		font-size: 1.25rem;
	}

	.hero-phone-mockup__items li:nth-child(3) {
		display: none;
	}
}

.single-product .etebar-product__details {
	margin-top: clamp(3rem, 5vw, 4.5rem);
}

.single-product .woocommerce-main {
	background:
		linear-gradient(180deg, #061d30 0, #031321 46rem, var(--etebar-ivory) 46rem);
}

.woocommerce-cart .woocommerce ul.products,
.woocommerce-checkout .woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1.25rem;
	align-items: stretch;
}

.woocommerce-cart .woocommerce ul.products li.product,
.woocommerce-checkout .woocommerce ul.products li.product {
	width: auto !important;
	margin: 0 !important;
	border: 1px solid var(--etebar-border);
	border-radius: 3px;
	background: var(--etebar-paper);
	padding: 1rem;
	text-align: left;
}

.woocommerce-cart .woocommerce ul.products li.product img,
.woocommerce-checkout .woocommerce ul.products li.product img {
	width: 100%;
	max-height: 170px;
	aspect-ratio: 1 / 0.62;
	object-fit: contain;
	background:
		linear-gradient(145deg, rgb(207 174 104 / 10%), transparent 54%),
		color-mix(in srgb, var(--etebar-muted) 54%, var(--etebar-paper));
	padding: 1.2rem;
}

.woocommerce-cart .woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-checkout .woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 1.05rem;
	line-height: 1.2;
}

.woocommerce-cart .woocommerce ul.products li.product .button,
.woocommerce-checkout .woocommerce ul.products li.product .button {
	border-radius: 2px;
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
}

@media (max-width: 600px) {
	.woocommerce-cart .woocommerce ul.products,
	.woocommerce-checkout .woocommerce ul.products {
		max-width: 330px;
		margin-inline: auto;
	}
}

/* WooCommerce block cart stabilization */

.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
.woocommerce-checkout .wp-block-woocommerce-empty-cart-block {
	max-width: 1120px;
	margin-inline: auto;
	padding: clamp(2.5rem, 5vw, 4.5rem) var(--etebar-container-pad);
	text-align: center;
}

.woocommerce-cart .wp-block-woocommerce-empty-cart-block h2,
.woocommerce-checkout .wp-block-woocommerce-empty-cart-block h2,
.woocommerce-cart .wc-block-cart__empty-cart__title,
.woocommerce-checkout .wc-block-cart__empty-cart__title {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.05;
}

.woocommerce-cart .wc-block-grid,
.woocommerce-checkout .wc-block-grid {
	margin-top: 2rem;
}

.woocommerce-cart .wc-block-grid__products,
.woocommerce-checkout .wc-block-grid__products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.woocommerce-cart .wc-block-grid__product,
.woocommerce-checkout .wc-block-grid__product {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	border: 1px solid var(--etebar-border);
	border-radius: 4px;
	background: var(--etebar-paper);
	box-shadow: 0 18px 45px rgb(7 29 48 / 7%);
	text-align: left;
	overflow: hidden;
}

.woocommerce-cart .wc-block-grid__product-image,
.woocommerce-checkout .wc-block-grid__product-image {
	display: grid;
	place-items: center;
	aspect-ratio: 1 / 0.78;
	margin: 0;
	background:
		linear-gradient(145deg, rgb(207 174 104 / 13%), transparent 56%),
		color-mix(in srgb, var(--etebar-muted) 60%, var(--etebar-paper));
}

.woocommerce-cart .wc-block-grid__product-image img,
.woocommerce-checkout .wc-block-grid__product-image img {
	width: 72%;
	height: 72%;
	object-fit: contain;
	margin: 0;
	padding: 0.8rem;
}

.woocommerce-cart .wc-block-grid__product-title,
.woocommerce-checkout .wc-block-grid__product-title {
	display: block;
	padding: 1rem 1rem 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.12rem;
	line-height: 1.15;
	text-decoration: none;
}

.woocommerce-cart .wc-block-grid__product-price,
.woocommerce-checkout .wc-block-grid__product-price {
	display: block;
	padding: 0.6rem 1rem 0;
	color: var(--etebar-ink);
	font-weight: 600;
}

.woocommerce-cart .wc-block-grid__product-add-to-cart,
.woocommerce-checkout .wc-block-grid__product-add-to-cart {
	padding: 1rem;
}

.woocommerce-cart .wc-block-grid__product-add-to-cart .wp-block-button__link,
.woocommerce-checkout .wc-block-grid__product-add-to-cart .wp-block-button__link,
.woocommerce-cart .wc-block-grid__product-add-to-cart a,
.woocommerce-checkout .wc-block-grid__product-add-to-cart a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	width: 100%;
	border-radius: 2px;
	background: var(--etebar-navy);
	color: var(--etebar-ivory);
	font-family: var(--etebar-sans);
	font-size: 0.82rem;
	font-weight: 600;
	text-decoration: none;
}

@media (max-width: 900px) {
	.woocommerce-cart .wc-block-grid__products,
	.woocommerce-checkout .wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
	.woocommerce-checkout .wp-block-woocommerce-empty-cart-block {
		padding-top: 2rem;
		padding-bottom: 2.5rem;
	}

	.woocommerce-cart .wc-block-grid__products,
	.woocommerce-checkout .wc-block-grid__products {
		grid-template-columns: 1fr;
		max-width: 310px;
		margin-inline: auto;
		gap: 1rem;
	}

	.woocommerce-cart .wc-block-grid__product-image,
	.woocommerce-checkout .wc-block-grid__product-image {
		aspect-ratio: 1 / 0.72;
	}

	.woocommerce-cart .wc-block-grid__product-title,
	.woocommerce-checkout .wc-block-grid__product-title {
		font-size: 1.05rem;
	}
}

/* Replace generic WooCommerce cart-block missing image visuals */

.woocommerce-cart .wc-block-grid__product-image,
.woocommerce-checkout .wc-block-grid__product-image {
	position: relative;
	overflow: hidden;
}

.woocommerce-cart .wc-block-grid__product-image img,
.woocommerce-checkout .wc-block-grid__product-image img {
	opacity: 0;
}

.woocommerce-cart .wc-block-grid__product-image::before,
.woocommerce-checkout .wc-block-grid__product-image::before {
	content: "";
	position: absolute;
	inset: 12%;
	background-image: url("../images/product-placeholders/pantry-goods.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.woocommerce-cart .wc-block-grid__product-image::after,
.woocommerce-checkout .wc-block-grid__product-image::after {
	content: "Catalog illustration";
	position: absolute;
	top: 0.65rem;
	left: 0.65rem;
	border-radius: 999px;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	padding: 0.28rem 0.48rem;
	font-size: 0.55rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Homepage stabilization v4: simplify hero density while keeping the phone concept */

.home .hero__layout {
	grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.75fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	padding-top: clamp(4.5rem, 7vw, 6.25rem);
	padding-bottom: clamp(4rem, 7vw, 5.75rem);
}

.home .hero__content {
	max-width: 590px;
}

.home .hero h1 {
	max-width: 620px;
	font-size: clamp(3.15rem, 4.65vw, 4.75rem);
	line-height: 0.95;
}

.home .hero__lead {
	max-width: 560px;
	margin-bottom: 1.35rem;
	font-size: 1.02rem;
	line-height: 1.6;
}

.home .hero__visual {
	display: grid;
	place-items: center;
}

.home .hero-order-record {
	display: none;
}

.home .hero-phone-mockup {
	width: min(310px, 100%);
	transform: rotate(0deg);
}

.home .hero-phone-mockup__screen {
	min-height: 560px;
}

.home .hero-phone-mockup__content {
	padding: 1rem;
}

.home .hero-phone-mockup__items li {
	padding-block: 0.62rem;
}

.home .hero-phone-mockup__review {
	margin-top: 0.75rem;
}

.home .hero__safety {
	max-width: 100%;
	margin-top: 0;
	padding: 0.75rem var(--etebar-container-pad);
	border-top: 1px solid rgb(247 243 234 / 14%);
	text-align: center;
	font-size: 0.72rem;
}

.home .categories-section,
.home .process-section,
.home .special-request-preview,
.home .proof-section,
.home .faq-preview {
	padding-top: clamp(3rem, 6vw, 5rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
}

.home .section-heading {
	margin-bottom: 2rem;
}

.home .category-grid {
	gap: 0;
}

.home .category-card {
	min-height: 230px;
}

.home .process-steps {
	gap: 0;
}

@media (max-width: 900px) {
	.home .hero__layout {
		grid-template-columns: 1fr;
		gap: 2rem;
		padding-top: 3.25rem;
		padding-bottom: 2.75rem;
	}

	.home .hero__content {
		max-width: 680px;
	}

	.home .hero h1 {
		max-width: 680px;
		font-size: clamp(3rem, 9vw, 4.35rem);
	}

	.home .hero__visual {
		justify-content: start;
	}

	.home .hero-phone-mockup {
		width: min(280px, 100%);
	}
}

@media (max-width: 640px) {
	.home .hero {
		min-height: auto;
	}

	.home .hero__layout {
		padding-top: 2.4rem;
		padding-bottom: 2.2rem;
	}

	.home .hero__eyebrow {
		margin-bottom: 0.85rem;
	}

	.home .hero h1 {
		font-size: clamp(2.45rem, 11vw, 3.15rem);
		line-height: 0.98;
		margin-bottom: 1rem;
	}

	.home .hero__lead {
		margin-bottom: 1.15rem;
		font-size: 0.94rem;
		line-height: 1.5;
	}

	.home .hero .button-row {
		gap: 0.75rem;
	}

	.home .hero .button-row .button {
		width: 100%;
		min-height: 44px;
	}

	.home .hero__visual {
		display: none;
	}

	.home .hero__safety {
		padding-top: 0.7rem;
		padding-bottom: 0.7rem;
		font-size: 0.66rem;
		line-height: 1.4;
	}

	.home .categories-section,
	.home .process-section,
	.home .special-request-preview,
	.home .proof-section,
	.home .faq-preview {
		padding-top: 2.6rem;
		padding-bottom: 2.6rem;
	}

	.home .section-heading {
		margin-bottom: 1.35rem;
	}

	.home .category-card {
		min-height: auto;
		padding: 1.15rem;
	}

	.home .category-card h3 {
		font-size: 1.28rem;
	}

	.home .category-card p {
		font-size: 0.86rem;
		line-height: 1.5;
	}

	.home .process-steps {
		gap: 0.8rem;
	}

	.home .process-step {
		padding-block: 0.85rem;
	}

	.home .special-request-card,
	.home .support-card {
		box-shadow: none;
	}
}

/* Homepage editorial still-life hero */

.home .hero__layout {
	grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.78fr);
	gap: clamp(3rem, 6vw, 6.5rem);
	align-items: center;
}

.home .hero__visual {
	display: block;
}

.hero-editorial {
	position: relative;
	width: min(100%, 470px);
	aspect-ratio: 4 / 4.6;
	margin: 0 0 0 auto;
	border: 1px solid rgb(215 174 95 / 38%);
	background: #e7ddcb;
	box-shadow: 0 34px 80px rgb(0 0 0 / 25%);
	overflow: hidden;
}

.hero-editorial::before {
	position: absolute;
	z-index: 2;
	top: -1px;
	right: 2rem;
	left: 2rem;
	height: 3px;
	background: var(--etebar-gold);
	content: "";
}

.hero-editorial::after {
	position: absolute;
	top: 1rem;
	right: 1rem;
	width: 62px;
	height: 62px;
	border-top: 1px solid rgb(11 43 64 / 24%);
	border-right: 1px solid rgb(11 43 64 / 24%);
	content: "";
	pointer-events: none;
}

.hero-editorial img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-editorial--empty {
	background:
		linear-gradient(145deg, rgb(247 242 232 / 6%), transparent 52%),
		rgb(3 19 33 / 36%);
	box-shadow: inset 0 0 0 1px rgb(247 242 232 / 3%);
}

.hero-editorial figcaption {
	position: absolute;
	right: clamp(1rem, 3vw, 1.5rem);
	bottom: clamp(1rem, 3vw, 1.5rem);
	display: inline-flex;
	max-width: calc(100% - 2rem);
	align-items: center;
	gap: 0.6rem;
	border: 1px solid rgb(11 43 64 / 14%);
	background: rgb(255 252 246 / 94%);
	padding: 0.65rem 0.8rem;
	color: var(--etebar-navy);
	box-shadow: 0 10px 28px rgb(7 31 48 / 12%);
	font-family: var(--etebar-serif);
	font-size: 0.78rem;
	font-weight: 600;
	line-height: 1.25;
}

.hero-editorial figcaption span {
	width: 8px;
	height: 8px;
	flex: 0 0 8px;
	border-radius: 50%;
	background: var(--etebar-green);
	box-shadow: 0 0 0 4px rgb(36 99 71 / 12%);
}

@media (max-width: 1000px) and (min-width: 641px) {
	.home .hero__layout {
		grid-template-columns: minmax(0, 1fr) minmax(300px, 0.65fr);
		gap: 2.5rem;
	}

	.hero-editorial {
		width: min(100%, 380px);
	}
}

@media (max-width: 640px) {
	.home .hero__visual {
		display: none;
	}
}

/* Final homepage hero and process direction */

.home .hero {
	overflow: hidden;
	background:
		radial-gradient(circle at 86% 38%, rgb(215 174 95 / 16%), transparent 27rem),
		linear-gradient(104deg, #061d30 0%, #061d30 47%, rgb(6 29 48 / 94%) 58%, rgb(6 29 48 / 36%) 72%, transparent 100%),
		#061d30;
}

.home .hero::after {
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		linear-gradient(90deg, rgb(6 29 48 / 0%) 43%, rgb(6 29 48 / 14%) 64%, rgb(6 29 48 / 58%) 100%),
		linear-gradient(180deg, rgb(6 29 48 / 0%) 72%, #061d30 100%);
	content: "";
	pointer-events: none;
}

.home .hero > * {
	position: relative;
	z-index: 1;
}

.home .hero__layout {
	grid-template-columns: minmax(0, 0.96fr) minmax(410px, 1.04fr);
	gap: clamp(2rem, 4vw, 4.8rem);
	min-height: clamp(560px, 70vh, 720px);
}

.home .hero__content {
	max-width: 690px;
}

.home .hero--no-image .hero__layout {
	grid-template-columns: minmax(0, 720px);
	min-height: clamp(500px, 62vh, 640px);
}

.home .hero--no-image .hero__visual {
	display: none;
}

.home .hero__visual {
	position: relative;
	align-self: stretch;
	min-height: 520px;
	overflow: hidden;
}

.home .hero__visual::before {
	position: absolute;
	inset: 0;
	z-index: 2;
	background:
		linear-gradient(90deg, #061d30 0%, rgb(6 29 48 / 58%) 10%, rgb(6 29 48 / 8%) 32%, rgb(6 29 48 / 0%) 100%),
		linear-gradient(180deg, #061d30 0%, rgb(6 29 48 / 0%) 15%, rgb(6 29 48 / 0%) 80%, #061d30 100%),
		radial-gradient(ellipse at 66% 48%, rgb(6 29 48 / 0%) 42%, rgb(6 29 48 / 26%) 84%, #061d30 100%);
	content: "";
	pointer-events: none;
}

.hero-editorial {
	position: absolute;
	inset: -2.2rem -2.6rem -2rem -1.4rem;
	width: auto;
	max-width: none;
	height: auto;
	aspect-ratio: auto;
	margin: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	overflow: hidden;
	transform: none;
	-webkit-mask-image:
		linear-gradient(90deg, transparent 0%, #000 15%, #000 84%, transparent 100%),
		linear-gradient(180deg, transparent 0%, #000 22%, #000 82%, transparent 100%);
	-webkit-mask-composite: source-in;
	mask-image:
		linear-gradient(90deg, transparent 0%, #000 15%, #000 84%, transparent 100%),
		linear-gradient(180deg, transparent 0%, #000 22%, #000 82%, transparent 100%);
	mask-composite: intersect;
}

.hero-editorial::before,
.hero-editorial::after {
	display: none;
}

.hero-editorial img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 54% 50%;
	filter: saturate(0.98) contrast(1.04) brightness(1.03);
}

.hero-editorial--empty {
	display: none;
}

.hero-editorial figcaption {
	display: none;
}

.hero-editorial--empty figcaption {
	display: none;
}

.home .homepage-process {
	background: color-mix(in srgb, var(--etebar-ivory) 92%, var(--etebar-muted));
	padding-top: clamp(2rem, 2.4vw, 2.5rem);
	padding-bottom: clamp(2.25rem, 3vw, 3rem);
}

.home .homepage-process__heading {
	display: block;
	max-width: 760px;
	margin: 0 auto 1.6rem;
	text-align: center;
}

.home .homepage-process__heading .eyebrow {
	justify-content: center;
	margin-bottom: 0.5rem;
	color: var(--etebar-gold-dark);
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.home .homepage-process__heading h2 {
	max-width: none;
	margin-bottom: 0.55rem;
	color: var(--etebar-navy);
	font-size: clamp(2rem, 3.1vw, 3rem);
	line-height: 1.02;
}

.home .homepage-process__heading > p:last-child {
	max-width: 620px;
	margin: 0 auto;
	font-size: 0.92rem;
	line-height: 1.55;
}

.homepage-process__flow {
	display: grid;
	grid-template-columns: minmax(0, 4fr) minmax(230px, 1.18fr);
	border-block: 1px solid color-mix(in srgb, var(--etebar-gold) 32%, var(--etebar-border));
	background: rgb(255 252 246 / 62%);
}

.home .homepage-process .process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	border: 0;
	background: transparent;
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even) {
	display: flex;
	min-width: 0;
	min-height: 188px;
	flex-direction: column;
	gap: 0.85rem;
	border: 0;
	border-inline-end: 1px solid color-mix(in srgb, var(--etebar-gold) 22%, var(--etebar-border));
	background: transparent;
	padding: 1rem clamp(0.9rem, 1.25vw, 1.2rem);
}

.homepage-process__step-mark {
	display: flex;
	align-items: center;
	gap: 0.7rem;
}

.homepage-process__step-mark > span {
	display: inline-flex;
	width: 34px;
	height: 34px;
	flex: 0 0 34px;
	align-items: center;
	justify-content: center;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 82%, var(--etebar-border));
	border-radius: 50%;
	background: var(--etebar-gold-light);
	color: var(--etebar-navy);
	font-family: var(--etebar-mono);
	font-size: 0.72rem;
	font-weight: 600;
}

.homepage-process__step-mark svg {
	width: 25px;
	height: 25px;
	color: var(--etebar-charcoal);
}

.home .homepage-process .process-list h3 {
	margin-bottom: 0.4rem;
	color: var(--etebar-navy);
	font-size: clamp(0.98rem, 1.15vw, 1.12rem);
	line-height: 1.18;
}

.home .homepage-process .process-list p {
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.8rem;
	line-height: 1.5;
}

.homepage-process__footer {
	display: flex;
	justify-content: flex-end;
	margin-top: 0.65rem;
}

.homepage-process__request {
	display: grid;
	min-width: 0;
	min-height: 188px;
	grid-template-columns: 36px minmax(0, 1fr);
	grid-template-rows: auto auto 1fr auto;
	column-gap: 0.7rem;
	align-content: start;
	border: 0;
	background: color-mix(in srgb, var(--etebar-green) 7%, var(--etebar-paper));
	padding: 1rem clamp(1rem, 1.4vw, 1.35rem);
	box-shadow: none;
	text-align: start;
}

.homepage-process__request-icon {
	display: inline-flex;
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
	align-items: center;
	justify-content: center;
	grid-column: 1;
	grid-row: 1 / span 2;
	border-radius: 50%;
	background: var(--etebar-green);
	color: var(--etebar-paper);
}

.homepage-process__request-icon svg {
	width: 21px;
	height: 21px;
}

.homepage-process__request .eyebrow {
	grid-column: 2;
	grid-row: 1;
	margin: 0 0 0.3rem;
	color: var(--etebar-green-dark);
	font-size: 0.62rem;
	letter-spacing: 0.12em;
}

.homepage-process__request h3 {
	grid-column: 2;
	grid-row: 2;
	margin: 0 0 0.38rem;
	color: var(--etebar-navy);
	font-size: clamp(1rem, 1.2vw, 1.15rem);
	line-height: 1.18;
}

.homepage-process__request p:not(.eyebrow) {
	grid-column: 1 / -1;
	grid-row: 3;
	margin: 0.55rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.76rem;
	line-height: 1.45;
}

.homepage-process__request-link {
	display: inline-flex;
	grid-column: 1 / -1;
	grid-row: 4;
	align-items: center;
	gap: 0.4rem;
	margin-top: 0.5rem;
	font-size: 0.74rem;
}

.homepage-process__link {
	font-size: 0.75rem;
	white-space: nowrap;
}

@media (max-width: 1080px) {
	.home .hero__layout {
		grid-template-columns: minmax(0, 1.02fr) minmax(280px, 0.72fr);
		min-height: 570px;
	}

	.home .hero__visual {
		min-height: 400px;
	}

	.hero-editorial {
		inset: 1rem 0 1rem 0;
	}

	.home .homepage-process {
		padding-top: 2.25rem;
		padding-bottom: 2.75rem;
	}

	.homepage-process__flow {
		grid-template-columns: 1fr;
	}

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

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even) {
		min-height: 158px;
	}

	.home .homepage-process .process-list li:nth-child(2n) {
		border-inline-end: 0;
	}

	.home .homepage-process .process-list li:nth-child(-n + 2) {
		border-bottom: 1px solid color-mix(in srgb, var(--etebar-gold) 18%, var(--etebar-border));
	}

	.homepage-process__request {
		min-height: 150px;
		border-top: 1px solid color-mix(in srgb, var(--etebar-green) 20%, var(--etebar-border));
		padding: 1.15rem;
	}

	.homepage-process__link {
		margin-inline-start: auto;
	}
}

@media (max-width: 640px) {
	.home .hero {
		background: #061d30;
	}

	.home .hero::after,
	.home .hero__visual {
		display: none;
	}

	.home .hero__layout {
		display: block;
		min-height: 0;
	}

	.home .homepage-process {
		padding-top: 2rem;
		padding-bottom: 2.5rem;
	}

	.home .homepage-process__heading {
		margin-bottom: 1.35rem;
	}

	.home .homepage-process__heading h2 {
		font-size: clamp(1.9rem, 9vw, 2.35rem);
	}

	.home .homepage-process__heading > p:last-child {
		font-size: 0.88rem;
	}

	.home .homepage-process .process-list {
		grid-template-columns: 1fr;
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		min-height: auto;
		flex-direction: row;
		gap: 1rem;
		border-inline-end: 0;
		border-bottom: 1px solid color-mix(in srgb, var(--etebar-gold) 18%, var(--etebar-border));
		padding: 1rem 0.75rem;
	}

	.home .homepage-process .process-list li:last-child {
		border-bottom: 0;
	}

	.homepage-process__step-mark {
		flex-direction: column;
		gap: 0.55rem;
	}

	.home .homepage-process .process-list p {
		font-size: 0.86rem;
	}

	.homepage-process__request {
		min-height: auto;
		padding: 1rem;
	}

	.homepage-process__link {
		white-space: normal;
	}
}

/* Product catalog polish: intentional local-test illustrations without dev-facing labels */

.woocommerce ul.products {
	gap: clamp(1.15rem, 2.2vw, 2rem);
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	border-color: color-mix(in srgb, var(--etebar-gold) 18%, var(--etebar-border));
	background:
		linear-gradient(180deg, rgb(255 252 246 / 92%), var(--etebar-paper) 58%),
		var(--etebar-paper);
	box-shadow: 0 1px 0 rgb(255 255 255 / 80%), 0 18px 38px rgb(7 31 48 / 4%);
}

.woocommerce ul.products li.product::before {
	right: 1.35rem;
	left: 1.35rem;
	opacity: 1;
	background: linear-gradient(90deg, transparent, var(--etebar-gold), transparent);
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 56%, var(--etebar-border));
	box-shadow: 0 28px 62px rgb(7 31 48 / 11%);
}

.etebar-shop-card__image {
	margin: clamp(0.8rem, 1.6vw, 1.05rem) clamp(0.8rem, 1.6vw, 1.05rem) 0;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 16%, var(--etebar-border));
	border-radius: 3px;
	background:
		radial-gradient(circle at 74% 22%, rgb(215 174 95 / 18%) 0 12%, transparent 13%),
		linear-gradient(165deg, rgb(255 252 246 / 88%) 0 42%, rgb(238 230 213 / 75%) 43% 100%);
}

.etebar-shop-card__image::before {
	position: absolute;
	inset: 0.8rem;
	border: 1px solid rgb(11 43 64 / 8%);
	border-bottom: 0;
	content: "";
	pointer-events: none;
}

.etebar-shop-card__image-label,
.etebar-product__media-label {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.woocommerce ul.products li.product .etebar-shop-card__image img,
.woocommerce ul.products li.product .etebar-shop-card__image--placeholder img {
	aspect-ratio: 1 / 0.74;
	border-bottom: 0;
	background: transparent;
	padding: clamp(1.25rem, 3vw, 2.35rem);
	object-fit: contain;
}

.etebar-shop-card__body {
	padding: 1.45rem 1.45rem 0;
}

.etebar-shop-card__meta {
	align-items: flex-start;
	margin-bottom: 0.95rem;
}

.etebar-shop-card__meta span {
	flex: 0 0 auto;
	border-color: color-mix(in srgb, var(--etebar-gold) 42%, var(--etebar-border));
	background: rgb(255 252 246 / 75%);
	color: color-mix(in srgb, var(--etebar-navy) 74%, var(--etebar-gray));
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin-bottom: 0.65rem;
	font-size: clamp(1.35rem, 1.9vw, 1.62rem);
}

.etebar-shop-card__description {
	color: color-mix(in srgb, var(--etebar-gray) 88%, var(--etebar-navy));
}

.etebar-quote-note {
	border-top-color: color-mix(in srgb, var(--etebar-gold) 20%, var(--etebar-border));
	color: color-mix(in srgb, var(--etebar-gray) 88%, var(--etebar-navy));
}

.etebar-shop-card__footer {
	padding: 0 1.45rem 1.45rem;
}

.single-product .etebar-product__layout {
	align-items: start;
}

.etebar-product__media {
	border-color: color-mix(in srgb, var(--etebar-gold) 36%, var(--etebar-border));
	background:
		radial-gradient(circle at 76% 23%, rgb(215 174 95 / 18%) 0 11%, transparent 12%),
		linear-gradient(160deg, rgb(255 252 246 / 92%) 0 44%, rgb(238 230 213 / 75%) 45% 100%);
	box-shadow: 0 28px 65px rgb(0 0 0 / 16%);
}

.etebar-product__media::before {
	position: absolute;
	inset: clamp(1.1rem, 2.5vw, 1.8rem);
	border: 1px solid rgb(11 43 64 / 8%);
	content: "";
	pointer-events: none;
}

.etebar-product__media--placeholder img {
	min-height: clamp(360px, 38vw, 500px);
	padding: clamp(2.4rem, 5vw, 4.6rem);
	filter: drop-shadow(0 14px 18px rgb(7 31 48 / 10%));
}

.etebar-product__media figcaption {
	position: relative;
	border-top-color: color-mix(in srgb, var(--etebar-gold) 18%, var(--etebar-border));
	background: rgb(255 252 246 / 86%);
	color: color-mix(in srgb, var(--etebar-gray) 86%, var(--etebar-navy));
	font-size: 0.74rem;
}

.single-product .etebar-product__details {
	margin-top: clamp(3.25rem, 6vw, 5.5rem);
}

.single-product .etebar-product__details-intro .eyebrow {
	color: var(--etebar-green);
}

.woocommerce-cart .wc-block-grid__product-image::after,
.woocommerce-checkout .wc-block-grid__product-image::after {
	content: "Catalog illustration";
}

@media (max-width: 700px) {
	.etebar-shop-card__image {
		margin: 0.75rem 0.75rem 0;
	}

	.woocommerce ul.products li.product .etebar-shop-card__image img,
	.woocommerce ul.products li.product .etebar-shop-card__image--placeholder img {
		aspect-ratio: 1 / 0.7;
		padding: 1.5rem;
	}

	.etebar-shop-card__body,
	.etebar-shop-card__footer {
		padding-right: 1.1rem;
		padding-left: 1.1rem;
	}

	.etebar-shop-card__meta {
		gap: 0.65rem;
	}

	.etebar-shop-card__meta span {
		font-size: 0.52rem;
	}

	.etebar-product__media--placeholder img {
		min-height: 260px;
		padding: 2rem;
	}

	.etebar-product__media figcaption {
		font-size: 0.72rem;
	}
}

/* Visual audit repair V001-V023: restrained type, commerce hierarchy and responsive states. */

:root {
	--etebar-content-h1: clamp(3rem, 4vw, 4rem);
	--etebar-content-h2: clamp(2rem, 3vw, 2.75rem);
	--etebar-content-h3: clamp(1.375rem, 2vw, 1.75rem);
}

[dir="rtl"] body {
	line-height: 1.72;
}

.page-hero--compact {
	padding-block: clamp(3.75rem, 7vw, 5.75rem);
}

.page-hero--compact h1,
.woocommerce-main > .page-title,
.woocommerce-main > h1,
.etebar-product h1.product_title,
.etebar-empty-cart h2 {
	font-size: var(--etebar-content-h1);
	line-height: 1.06;
	letter-spacing: -0.035em;
}

[dir="rtl"] .page-hero--compact h1,
[dir="rtl"] .woocommerce-main > .page-title,
[dir="rtl"] .etebar-product h1.product_title {
	letter-spacing: 0;
	line-height: 1.2;
}

.page-hero--compact p,
.catalog-empty > p,
.content-detail-page .section p {
	max-width: 66ch;
}

.page-hero--compact + .section {
	padding-top: clamp(3rem, 5vw, 4.5rem);
}

.site-header__search-backdrop {
	display: none;
}

.etebar-product__description,
.etebar-product__description p {
	color: #29323d !important;
	line-height: 1.65;
}

.etebar-product__description:empty,
.etebar-product__description p:empty {
	display: none;
}

.etebar-product__order-path {
	padding: 1rem 0 0;
	border: 0;
	border-top: 1px solid rgba(178, 146, 68, 0.35);
	background: transparent;
}

.etebar-product__order-path h3 {
	margin-bottom: 0.35rem;
	font-size: 1.05rem;
}

.etebar-product__order-path p {
	margin: 0 0 0.35rem;
	font-size: 0.94rem;
}

.etebar-product__special-link {
	margin: 1rem 0 0;
	text-align: end;
	font-size: 0.9rem;
}

.products-special-note {
	display: flex;
	align-items: baseline;
	gap: 0.75rem 1.25rem;
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(178, 146, 68, 0.38);
}

.products-special-note span {
	flex: 1;
	color: var(--color-muted, #626b73);
}

.faq-page__content {
	padding-block: clamp(3.5rem, 6vw, 5.5rem);
    background: var(--etebar-ivory);
}

.faq-topic + .faq-topic,
.faq-topic__repair {
	margin-top: 2.5rem;
}

.faq-topic > h2 {
	margin: 0 0 0.75rem;
	font-size: clamp(1.55rem, 2.4vw, 2rem);
}

.faq-topic .accordion__trigger {
	min-height: 54px;
	padding-block: 0.8rem;
	font-size: 1rem;
}

.faq-topic .accordion__panel p {
	line-height: 1.6;
}

.etebar-empty-cart {
	display: grid;
	max-width: 620px;
	min-height: 0;
	place-items: center;
	align-content: center;
	gap: 0;
	margin-inline: auto;
	border: 1px solid color-mix(in srgb, var(--etebar-navy) 14%, var(--etebar-border));
	border-radius: 12px;
	background: var(--etebar-paper);
	padding: clamp(2.25rem, 5vw, 3.5rem) clamp(1.25rem, 4vw, 3rem);
	box-shadow: 0 14px 34px rgb(7 31 48 / 6%);
	text-align: center;
}

.etebar-empty-cart h1 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.08;
}

.etebar-empty-cart p {
	margin: 0.85rem auto 1.35rem;
	max-width: 48ch;
	color: var(--etebar-gray);
	line-height: 1.6;
}

.woocommerce-cart article.entry:has(.etebar-empty-cart) {
	padding-block-start: clamp(1.25rem, 3vw, 2rem);
}

.woocommerce-cart article.entry:has(.etebar-empty-cart) > .entry__header,
.woocommerce-cart .etebar-cart-shell:has(.etebar-empty-cart) > :is(.etebar-cart-intro, .etebar-cart-summary-proof, .etebar-cart-special-request) {
	display: none;
}

.woocommerce-cart .etebar-cart-shell:has(.etebar-empty-cart) {
	display: block;
}

.woocommerce-cart .woocommerce-main {
	min-height: 0 !important;
	padding-bottom: clamp(4rem, 7vw, 5rem) !important;
}

.woocommerce-pagination {
	margin: 1.75rem 0 0 !important;
}

.woocommerce-pagination .page-numbers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.35rem;
	border: 0 !important;
}

.woocommerce-pagination .page-numbers li {
	border: 0 !important;
}

.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
	display: grid !important;
	min-width: 44px !important;
	min-height: 44px;
	place-items: center;
	padding: 0.5rem 0.7rem !important;
	border: 1px solid rgba(11, 31, 51, 0.18);
}

.woocommerce-pagination .page-numbers .current {
	border-color: var(--color-gold, #b29244);
	background: var(--color-navy, #0b1f33);
	color: #fff;
}

.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2vw, 1.5rem) !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
	display: none !important;
}

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card {
	display: flex !important;
	float: none !important;
	width: auto !important;
	min-width: 0 !important;
	height: 100%;
	margin: 0 !important;
	transform: none !important;
}

.etebar-shop-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
}

.etebar-shop-card__body .price {
	margin-top: auto;
}

.etebar-shop-card__footer .button,
.etebar-shop-card__footer .add_to_cart_button {
	min-height: 44px;
}

.catalog-empty {
	max-width: 900px;
	min-height: 0 !important;
	padding-block: clamp(2.5rem, 5vw, 4rem) !important;
}

.catalog-empty h2 {
	font-size: var(--etebar-content-h2);
	line-height: 1.1;
}

.search-no-results .woocommerce-main > .page-title,
.search-no-results .woocommerce-main > h1 {
	max-width: 18ch;
	overflow-wrap: anywhere;
}

.etebar-search-results-summary {
	margin: 0;
	color: var(--etebar-gray);
	font-weight: 650;
}

html[dir="rtl"] .etebar-search-results-summary {
	letter-spacing: normal;
}

.order-request-layout {
	grid-template-columns: 1fr !important;
	max-width: 980px;
	gap: 1.5rem !important;
}

.order-request-summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.order-request-summary > * {
	margin: 0 !important;
	padding: 1.25rem !important;
	box-shadow: none !important;
}

.order-request-panel {
	padding: clamp(1.25rem, 3vw, 2.25rem) !important;
	box-shadow: none !important;
}

.order-request-form__group {
	padding: 1.25rem 0 !important;
	border-width: 1px 0 0 !important;
	border-radius: 0 !important;
}

.site-footer__actions .button {
	display: none;
}

.wc-block-components-text-input.etebar-checkout-field--labelled,
.wc-block-components-combobox.etebar-checkout-field--labelled {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	padding-top: 0;
}

.wc-block-components-text-input.etebar-checkout-field--labelled label,
.wc-block-components-combobox.etebar-checkout-field--labelled label {
	position: static !important;
	order: -1;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: none !important;
	clip: auto !important;
	opacity: 1 !important;
	color: var(--color-navy, #0b1f33) !important;
	font-size: 0.875rem !important;
	font-weight: 600;
	line-height: 1.4 !important;
}

.wc-block-components-text-input.etebar-checkout-field--labelled input,
.wc-block-components-combobox.etebar-checkout-field--labelled input {
	padding: 0.75rem 0.85rem !important;
}

.woocommerce-order-received .etebar-order-received-note {
	margin-top: 0;
}

.woocommerce-order-received .woocommerce-customer-details,
.woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper {
	clear: both;
	display: flow-root;
	margin-block-start: 2rem;
}

.woocommerce-order-received .woocommerce-customer-details + .wc-block-order-confirmation-additional-fields-wrapper {
	margin-block-start: 2.5rem;
}

/*
 * "Additional information" on the order confirmation, narrow screens only.
 *
 * WooCommerce's classic stylesheet lays this list out as
 * `grid-template-columns: 1fr max-content`. The value column is a `max-content`
 * track, so it cannot shrink below the longest value it holds: a landmark
 * sentence or a long email makes the two tracks wider than the phone, and the
 * whole document scrolls sideways.
 *
 * WooCommerce does ship a stacked mobile treatment for this list, but it is
 * scoped to `.wc-block-order-confirmation-additional-fields`, and the
 * order-received template renders the list inside
 * `.wc-block-order-confirmation-additional-fields-wrapper` instead — so that
 * override never matches here and the two-column grid survives to 360px.
 *
 * Stacking the label above its value, at the same 768px breakpoint WooCommerce
 * itself uses, gives every value the full width to wrap into. Nothing is
 * hidden, clipped or shrunk, and the desktop two-column grid is untouched.
 */
@media (max-width: 768px) {
	.woocommerce .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-additional-fields-list {
		display: block;
	}

	.woocommerce .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-additional-fields-list dt {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.woocommerce .wc-block-order-confirmation-additional-fields-wrapper .wc-block-components-additional-fields-list dd {
		padding-top: 0.35rem;
		/* `start`, not `left`, so Dari and Pashto stay right-aligned. */
		text-align: start;
		overflow-wrap: anywhere;
	}
}

@media (max-width: 1000px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 1180px) {
	body.search-is-open {
		overflow: hidden;
	}

	.site-header__search-backdrop {
		position: fixed;
		inset: 0;
		display: block;
		z-index: 998;
		border: 0;
		background: rgba(5, 18, 31, 0.62);
	}

	.site-header__search-backdrop[hidden] {
		display: none;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden] {
		position: fixed !important;
		inset: 64px 0 auto !important;
		display: none !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 1.1rem clamp(1rem, 4vw, 2rem) 1.35rem !important;
		z-index: 999 !important;
		background: #fffaf0 !important;
		box-shadow: 0 18px 40px rgba(5, 18, 31, 0.18) !important;
	}

	.site-header__search-panel:not([hidden]) {
		display: block !important;
	}

	.site-header__search-inner {
		max-width: 760px;
		margin-inline: auto;
	}
}

@media (max-width: 700px) {
	:root {
		--etebar-content-h1: clamp(2.25rem, 10vw, 2.625rem);
		--etebar-content-h2: clamp(1.75rem, 8vw, 2.125rem);
		--etebar-content-h3: clamp(1.25rem, 6vw, 1.5rem);
        --etebar-header-overlap: 92px;
	}

	.page-hero--compact {
		padding-block: 3rem;
	}

	.products-special-note,
	.order-request-summary {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}

	.commerce-category-nav--home,
	.commerce-category-nav--shop {
		position: relative;
		overflow: hidden;
	}

	.commerce-category-nav--home::after,
	.commerce-category-nav--shop::after {
		position: absolute;
		inset-block: 0;
		inset-inline-end: 0;
		width: 34px;
		content: "";
		pointer-events: none;
		background: linear-gradient(to right, transparent, #fffaf0);
	}

	[dir="rtl"] .commerce-category-nav--home::after,
	[dir="rtl"] .commerce-category-nav--shop::after {
		background: linear-gradient(to left, transparent, #fffaf0);
	}

	.commerce-category-nav--home ul,
	.commerce-category-nav--shop ul {
		scroll-snap-type: inline mandatory;
		padding-inline-end: 18vw !important;
	}

	.commerce-category-nav--home li,
	.commerce-category-nav--shop li {
		flex: 0 0 78% !important;
		scroll-snap-align: start;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		display: none !important;
	}

	.site-footer__order-callout {
		padding-block: 1.75rem;
	}

	.site-footer__callout-actions .text-link {
		display: inline-flex;
	}

	.site-footer__grid {
		gap: 1.15rem;
		padding-block: 1.5rem;
	}

	.site-footer__brand p,
	.site-footer__grid p,
	.footer-menu a,
	.site-footer__legal {
		font-size: max(13px, 0.8125rem);
	}

	.site-footer__legal {
		gap: 0.4rem;
		padding-block: 0.8rem 1rem;
        min-height: 0;
	}
}

/* Homepage hero image integration: full essentials still-life with protected copy space. */

.home .hero {
	overflow: hidden;
	background: #031525;
}

.home .hero::before {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgb(6 29 48 / 96%) 0%, rgb(6 29 48 / 82%) 30%, rgb(6 29 48 / 30%) 46%, rgb(6 29 48 / 0%) 60%),
		linear-gradient(180deg, rgb(6 29 48 / 12%) 0%, rgb(6 29 48 / 0%) 28%, rgb(6 29 48 / 0%) 82%, rgb(6 29 48 / 30%) 100%);
	content: "";
	pointer-events: none;
}

.home .hero::after {
	display: none;
}

.home .hero > * {
	position: relative;
	z-index: 2;
}

.home .hero__layout {
	position: static;
	grid-template-columns: minmax(0, 42%) minmax(0, 58%);
	gap: 0;
	min-height: clamp(510px, 54vh, 535px);
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
}

.home .hero__content {
	position: relative;
	z-index: 3;
	max-width: 570px;
	text-align: left;
}

.home .hero h1 {
	max-width: 570px;
	font-size: clamp(3.25rem, 4vw, 4.4rem);
}

.home .hero__visual {
	position: absolute;
	inset: 0;
	z-index: 0;
	display: block;
	min-height: 0;
	margin: 0;
	overflow: hidden;
	pointer-events: none;
}

.home .hero__visual::before,
.home .hero__visual::after {
	display: none;
}

.home .hero .hero-editorial {
	position: absolute;
	inset: 0;
	width: auto;
	max-width: none;
	height: auto;
	aspect-ratio: auto;
	margin: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
	transform: none;
	-webkit-mask-image: none;
	mask-image: none;
}

.home .hero .hero-editorial::before,
.home .hero .hero-editorial::after {
	display: none;
}

.home .hero .hero-editorial img {
	position: absolute;
	top: -6%;
	right: 0;
	bottom: auto;
	left: auto;
	display: none;
	width: auto;
	height: 110%;
	max-width: none;
	max-height: none;
	margin: 0;
	object-fit: contain;
	object-position: right center;
	filter: none;
	transform: none;
}

html[data-etebar-language^="en"] .home .hero .hero-editorial__image--ltr,
html[data-etebar-language^="fa"] .home .hero .hero-editorial__image--rtl,
html[data-etebar-language^="ps"] .home .hero .hero-editorial__image--rtl {
	display: block;
}

html[data-etebar-language^="fa"] .home .hero::before,
html[data-etebar-language^="ps"] .home .hero::before {
	background:
		linear-gradient(270deg, rgb(6 29 48 / 96%) 0%, rgb(6 29 48 / 82%) 30%, rgb(6 29 48 / 30%) 46%, rgb(6 29 48 / 0%) 60%),
		linear-gradient(180deg, rgb(6 29 48 / 12%) 0%, rgb(6 29 48 / 0%) 28%, rgb(6 29 48 / 0%) 82%, rgb(6 29 48 / 30%) 100%);
}

html[data-etebar-language^="fa"] .home .hero__layout,
html[data-etebar-language^="ps"] .home .hero__layout {
	grid-template-columns: minmax(0, 58%) minmax(0, 42%);
}

html[data-etebar-language^="fa"] .home .hero__content,
html[data-etebar-language^="ps"] .home .hero__content {
	grid-column: 2;
	justify-self: end;
	direction: rtl;
	text-align: right;
}

html[data-etebar-language^="fa"] .home .hero .button-row,
html[data-etebar-language^="fa"] .home .hero__route-summary,
html[data-etebar-language^="ps"] .home .hero .button-row,
html[data-etebar-language^="ps"] .home .hero__route-summary {
	direction: rtl;
}

html[data-etebar-language^="fa"] .home .hero .hero-editorial__image--rtl,
html[data-etebar-language^="ps"] .home .hero .hero-editorial__image--rtl {
	top: -4%;
	right: auto;
	left: -6%;
	height: 116%;
	object-position: left center;
	-webkit-mask-image: linear-gradient(90deg, #000 0%, #000 88%, transparent 100%);
	mask-image: linear-gradient(90deg, #000 0%, #000 88%, transparent 100%);
}

@media (min-width: 1081px) {
	html[data-etebar-language^="en"] .home .hero__content {
		transform: translateX(-24px);
	}

	html[data-etebar-language^="en"] .home .hero .hero-editorial__image--ltr {
		top: -10%;
		right: -4%;
		height: 118%;
		-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 12%, #000 100%);
		mask-image: linear-gradient(90deg, transparent 0%, #000 12%, #000 100%);
	}
}

.special-request-type {
	margin: 0 0 1.5rem;
	padding: 0;
	border: 0;
}

.special-request-page .special-request-type legend {
	margin-bottom: 0.65rem;
	font-family: var(--etebar-sans);
	font-size: 1rem !important;
	font-weight: 600;
}

.special-request-type__choices {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.65rem;
}

.special-request-page .special-request-type__choices label {
	display: flex;
	min-height: 52px;
	align-items: center;
	gap: 0.6rem;
	margin: 0;
	padding: 0.75rem;
	border: 1px solid #c8c2b7;
	border-radius: 4px;
	cursor: pointer;
}

.special-request-page .special-request-type__choices input {
	width: 20px;
	min-height: 20px;
	flex: 0 0 20px;
}

@media (max-width: 640px) {
	.special-request-type__choices {
		grid-template-columns: 1fr;
	}
}

.home .hero .hero-editorial--empty,
.home .hero .hero-editorial figcaption,
.home .hero .hero-editorial--empty figcaption {
	display: none;
}

@media (min-width: 641px) {
	.homepage-process {
		padding-top: clamp(2.5rem, 4vw, 3.5rem);
	}

	.homepage-process__heading {
		margin-bottom: clamp(1.75rem, 2.5vw, 2.4rem);
	}
}

@media (min-width: 1500px) {
	.home .hero__layout {
		grid-template-columns: minmax(0, 42%) minmax(0, 58%);
		min-height: 535px;
	}
}

@media (max-width: 1080px) and (min-width: 641px) {
	.home .hero__layout {
		grid-template-columns: minmax(0, 46%) minmax(0, 54%);
		min-height: 620px;
	}

	.home .hero::before {
		background:
			linear-gradient(90deg, rgb(6 29 48 / 96%) 0%, rgb(6 29 48 / 84%) 38%, rgb(6 29 48 / 30%) 58%, rgb(6 29 48 / 0%) 76%),
			linear-gradient(180deg, rgb(6 29 48 / 12%) 0%, rgb(6 29 48 / 0%) 24%, rgb(6 29 48 / 0%) 78%, rgb(6 29 48 / 34%) 100%);
	}

	.home .hero .hero-editorial img {
		inset: 0;
		width: 100%;
		height: 100%;
		object-position: 58% center;
	}

	html[data-etebar-language^="en"] .home .hero .hero-editorial__image--ltr {
		-webkit-mask-image: none;
		mask-image: none;
	}

	html[data-etebar-language^="fa"] .home .hero__layout,
	html[data-etebar-language^="ps"] .home .hero__layout {
		grid-template-columns: minmax(0, 54%) minmax(0, 46%);
	}

	html[data-etebar-language^="fa"] .home .hero .hero-editorial__image--rtl,
	html[data-etebar-language^="ps"] .home .hero .hero-editorial__image--rtl {
		inset: 0;
		width: 100%;
		height: 100%;
		object-position: 42% center;
		-webkit-mask-image: none;
		mask-image: none;
	}
}

@media (max-width: 640px) {
	.home .hero {
		background: #061d30;
	}

	.home .hero::before {
		background:
			linear-gradient(180deg, rgb(6 29 48 / 96%) 0%, rgb(6 29 48 / 86%) 44%, rgb(6 29 48 / 14%) 72%, rgb(6 29 48 / 22%) 100%),
			linear-gradient(90deg, rgb(6 29 48 / 86%) 0%, rgb(6 29 48 / 42%) 52%, rgb(6 29 48 / 0%) 100%);
	}

	html[data-etebar-language^="fa"] .home .hero::before,
	html[data-etebar-language^="ps"] .home .hero::before {
		background:
			linear-gradient(180deg, rgb(6 29 48 / 96%) 0%, rgb(6 29 48 / 86%) 44%, rgb(6 29 48 / 14%) 72%, rgb(6 29 48 / 22%) 100%),
			linear-gradient(270deg, rgb(6 29 48 / 86%) 0%, rgb(6 29 48 / 42%) 52%, rgb(6 29 48 / 0%) 100%);
	}

	.home .hero__layout {
		display: block;
		min-height: 880px;
		padding-top: 2.4rem;
		padding-bottom: 2.2rem;
	}

	.home .hero__visual {
		display: block;
	}

	.home .hero .hero-editorial img {
		position: absolute;
		top: auto;
		right: -10.5rem;
		bottom: 0;
		left: auto;
		width: 680px;
		height: auto;
		object-fit: contain;
		object-position: right bottom;
	}

	html[data-etebar-language^="en"] .home .hero .hero-editorial__image--ltr {
		-webkit-mask-image: none;
		mask-image: none;
	}

	html[data-etebar-language^="fa"] .home .hero .hero-editorial__image--rtl,
	html[data-etebar-language^="ps"] .home .hero .hero-editorial__image--rtl {
		top: auto;
		right: auto;
		bottom: 0;
		left: -10.5rem;
		height: auto;
		object-position: left bottom;
		-webkit-mask-image: none;
		mask-image: none;
	}
}

/* Header language, logo and cart refinement */

:root {
	--etebar-sans: Montserrat, "Avenir Next", Avenir, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
	--etebar-arabic: "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif;
    --etebar-header-overlap: 100px;
    --etebar-surface-radius: 11px;
    --etebar-surface-shadow: 0 14px 34px rgb(7 31 48 / 7%);
    --etebar-green: #173a55;
    --etebar-green-dark: #031321;
    --etebar-header-height: 84px;
    --etebar-header-clearance: 112px;
}

.site-header {
	background: rgb(3 19 33 / 98%);
}

.site-header__inner {
	position: relative;
	min-height: 84px;
	gap: clamp(1rem, 2vw, 1.8rem);
}

.site-logo {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.site-logo img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.site-logo--header {
	width: 180px;
}

.site-logo--footer {
	width: min(145px, 100%);
}

.site-header__nav-group {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	gap: clamp(1.15rem, 2.2vw, 2rem);
}

.language-switcher {
	position: relative;
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.38rem;
	margin-right: clamp(0.35rem, 1vw, 0.8rem);
}

.language-switcher__group {
	position: relative;
}

.language-switcher__button,
.language-switcher__menu button {
	display: inline-flex;
	align-items: center;
	gap: 0.38rem;
	border: 1px solid rgb(247 242 232 / 16%);
	border-radius: 7px;
	background: rgb(247 242 232 / 5%);
	color: rgb(247 242 232 / 80%);
	cursor: pointer;
	font-size: 0.72rem;
	font-weight: 600;
	line-height: 1.1;
	white-space: nowrap;
}

.language-switcher__button {
	min-height: 36px;
	padding: 0.45rem 0.58rem;
}

.language-switcher__button:hover,
.language-switcher__button.is-active,
.language-switcher__menu button:hover,
.language-switcher__menu button.is-active {
	border-color: rgb(215 174 95 / 58%);
	color: var(--etebar-paper);
	background: rgb(215 174 95 / 10%);
}

.language-switcher__flag {
	font-size: 0.9rem;
	line-height: 1;
}

.language-switcher__native,
.language-modal__native {
	font-family: var(--etebar-arabic);
	font-weight: 300;
}

.language-switcher__menu {
	position: absolute;
	top: calc(100% + 0.45rem);
	right: 0;
	z-index: 120;
	min-width: 168px;
	border: 1px solid rgb(215 174 95 / 30%);
	border-radius: 8px;
	background: #061d30;
	padding: 0.35rem;
	box-shadow: 0 20px 44px rgb(0 0 0 / 24%);
}

.language-switcher__menu button {
	width: 100%;
	justify-content: space-between;
	border-color: transparent;
	background: transparent;
	padding: 0.62rem 0.7rem;
}

.language-switcher__menu .language-switcher__native {
	font-size: 1.1rem;
}

.language-switcher__menu button span:last-child {
	color: rgb(247 242 232 / 56%);
	font-size: 0.7rem;
}

.site-header .site-nav__list {
	gap: clamp(0.48rem, 0.9vw, 0.9rem);
}

.site-header .site-nav__list a {
	font-size: clamp(0.72rem, 0.78vw, 0.82rem);
	padding: 0.55rem 0.16rem;
}

.site-header__actions {
	gap: clamp(0.75rem, 1.3vw, 1.05rem);
}

.header-cart {
	position: relative;
	min-height: 40px;
	border: 1px solid rgb(247 242 232 / 16%);
	border-radius: 7px;
	padding: 0.52rem 0.74rem;
	color: rgb(247 242 232 / 82%);
}

.header-cart__icon {
	width: 1.12rem;
	height: 1.12rem;
	flex: 0 0 auto;
}

.header-cart__count {
	position: absolute;
	top: -0.42rem;
	right: -0.42rem;
	display: inline-grid;
	min-width: 1.12rem;
	height: 1.12rem;
	border: 2px solid #031321;
	background: var(--etebar-danger);
	color: #fff;
	font-family: var(--etebar-sans);
	font-size: 0.62rem;
	font-weight: 600;
	line-height: 1;
	padding-inline: 0.22rem;
}

.site-header .header-order,
.woocommerce .site-header .header-order {
	min-height: 40px;
	padding-inline: 1.05rem;
}

.language-modal {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: grid;
	place-items: center;
	padding: 1rem;
}

.language-modal[hidden] {
	display: none;
}

.language-modal__backdrop {
	position: absolute;
	inset: 0;
	background: rgb(3 19 33 / 72%);
	backdrop-filter: blur(8px);
}

.language-modal__panel {
	position: relative;
	width: min(100%, 560px);
	border: 1px solid rgb(215 174 95 / 34%);
	border-radius: 10px;
	background: var(--etebar-paper);
	padding: clamp(1.4rem, 4vw, 2.25rem);
	box-shadow: 0 30px 80px rgb(0 0 0 / 28%);
	text-align: center;
}

.language-modal__close {
	position: absolute;
	top: 0.8rem;
	right: 0.8rem;
	width: 2.25rem;
	height: 2.25rem;
	border: 1px solid var(--etebar-border);
	border-radius: 7px;
	background: transparent;
	color: var(--etebar-navy);
	cursor: pointer;
	font-size: 1.25rem;
	line-height: 1;
}

.language-modal h2 {
	margin-bottom: 0.55rem;
	font-family: var(--etebar-sans);
	font-size: clamp(1.45rem, 3vw, 2rem);
	font-weight: 600;
	letter-spacing: 0;
}

.language-modal p {
	margin-bottom: 0.2rem;
	color: var(--etebar-gray);
	font-size: 1.18rem;
	line-height: 1.45;
}

.language-modal__choices {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.language-modal__choices button {
	display: flex;
	min-height: 132px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	background: #fff;
	color: var(--etebar-navy);
	cursor: pointer;
	font-family: var(--etebar-sans);
}

.language-modal__choices button:hover,
.language-modal__choices button.is-active {
	border-color: var(--etebar-gold);
	box-shadow: 0 10px 24px rgb(7 31 48 / 8%);
}

.language-modal__choices button > span {
	font-size: 1.45rem;
}

.language-modal__choices strong {
	font-size: 1rem;
}

.language-modal__choices .language-modal__native {
	font-size: 1.55rem;
	font-weight: 300;
}

.language-modal__choices small {
	color: var(--etebar-gray);
	font-size: 0.78rem;
	font-weight: 600;
}

body.language-modal-is-open {
	overflow: hidden;
}

@media (max-width: 1320px) {
	.site-header__inner {
		gap: 0.85rem;
	}

	.site-logo--header {
		width: 160px;
	}

	.site-header__nav-group {
		gap: 0.85rem;
	}
}

@media (max-width: 1180px) {
	.site-header__nav-group {
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		display: none;
		align-items: stretch;
		justify-content: flex-start;
		border-bottom: 1px solid rgb(215 174 95 / 22%);
		background: #061d30;
		padding: 0.9rem 1rem 1.15rem;
	}

	.site-header__nav-group.is-open {
		display: flex;
		flex-direction: column;
	}

	.language-switcher {
		margin-right: 0;
		padding-bottom: 0.75rem;
		border-bottom: 1px solid rgb(247 242 232 / 12%);
	}

	.language-switcher__menu {
		right: auto;
		left: 0;
	}

	.site-nav {
		position: static;
		display: block;
		border-bottom: 0;
		background: transparent;
		padding: 0;
	}

	.site-nav__mobile-actions {
		border-top-color: rgb(247 242 232 / 12%);
	}
}

@media (max-width: 720px) {
	.site-header__inner {
		min-height: 64px;
	}

	.site-logo--header {
		width: 136px;
	}

	.site-header .header-cart {
		display: inline-flex;
		padding-inline: 0.62rem;
	}

	.header-cart > span:not(.header-cart__count) {
		display: none;
	}

	.site-header .header-order,
	.woocommerce .site-header .header-order {
		min-height: 38px;
		padding-inline: 0.7rem;
		font-size: 0.72rem;
	}

	.language-modal__choices {
		grid-template-columns: 1fr;
	}

	.language-modal__choices button {
		min-height: 88px;
	}
}

@media (max-width: 430px) {
	.site-logo--header {
		width: 116px;
	}

	.site-header__actions {
		gap: 0.42rem;
	}

	.site-header .header-order,
	.woocommerce .site-header .header-order {
		max-width: 88px;
		padding-inline: 0.55rem;
		white-space: normal;
	}
}

/* Trust, shop and bundle merchandising pass — DRAFT_PREVIEW_ONLY data stays guarded in PHP. */

.home .home-products.woocommerce ul.products.home-products__grid,
.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(0.9rem, 1.6vw, 1.35rem) !important;
}

.home-products__catalog-cta {
	margin-top: clamp(1.35rem, 2.5vw, 2rem);
}

.home-trust__benefits {
	margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

.home-trust__benefits li,
.home-trust__benefits li:nth-child(n) {
	min-height: 172px;
	align-items: flex-start;
	padding: clamp(1.35rem, 2.6vw, 2rem);
}

.home-trust__benefits h3 {
	margin-top: 0.05rem;
}

.home-trust__benefits p {
	max-width: 48ch;
	font-size: 1rem;
	line-height: 1.55;
}

.etebar-shop-card__type {
	order: -1;
	margin: 0 0 0.35rem;
	color: var(--etebar-green);
	font-size: 0.8125rem;
	font-weight: 750;
	line-height: 1.3;
}

.etebar-bundle-contents {
	margin: 1rem 0 1.1rem;
	border-block: 1px solid color-mix(in srgb, var(--etebar-navy) 18%, var(--etebar-border));
}

.etebar-bundle-contents summary {
	display: flex;
	min-height: 52px;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	cursor: pointer;
	font-weight: 600;
	list-style-position: inside;
}

.etebar-bundle-contents summary small {
	color: var(--etebar-gray);
	font-family: var(--etebar-sans);
	font-size: 0.8125rem;
	font-weight: 650;
}

.etebar-bundle-contents ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0 0 0.75rem;
	list-style: none;
}

.etebar-bundle-contents li {
	display: flex;
	min-width: 0;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.75rem;
	border-top: 1px solid color-mix(in srgb, var(--etebar-border) 70%, transparent);
	padding: 0.65rem 0;
	font-size: 0.9375rem;
}

.etebar-bundle-contents li:nth-child(odd) {
	padding-inline-end: 1rem;
}

.etebar-bundle-contents li:nth-child(even) {
	padding-inline-start: 1rem;
}

.etebar-bundle-contents li strong {
	flex: 0 0 auto;
	color: var(--etebar-green);
	font-family: var(--etebar-sans);
}

.etebar-bundle-compare {
	display: grid;
	gap: 0.25rem;
	margin: 0 0 1rem;
	border-inline-start: 3px solid var(--etebar-gold);
	padding-inline-start: 0.9rem;
	font-size: 0.9375rem;
	line-height: 1.5;
}

.etebar-bundle-compare strong {
	color: var(--etebar-navy);
}

.etebar-bundle-purchase-note {
	margin: 0.75rem 0 1rem;
	color: var(--etebar-gray);
	font-size: 0.875rem;
	line-height: 1.5;
}

@media (min-width: 701px) and (max-width: 1050px) {
	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 700px) {
	.home-trust__benefits li,
	.home-trust__benefits li:nth-child(n),
	.home-trust__benefits #delivery-proof {
		min-height: 0;
		padding-block: 0.85rem;
	}

	.home-trust__benefits p {
		font-size: 0.9375rem;
	}

	.etebar-bundle-contents ul {
		grid-template-columns: 1fr;
	}

	.etebar-bundle-contents li:nth-child(n) {
		padding-inline: 0;
	}
}

@media (max-width: 559px) {
	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: 1fr !important;
	}

	.etebar-shop-card__type {
		margin-bottom: 0.25rem;
		font-size: 0.75rem;
	}
}

/* Commerce foundation pass: one restrained system from discovery to checkout. */

.header-search-toggle,
.site-header__search-close {
	display: inline-flex;
	min-width: 40px;
	min-height: 40px;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	border: 1px solid rgb(247 242 232 / 16%);
	border-radius: 7px;
	background: transparent;
	color: rgb(247 242 232 / 86%);
	cursor: pointer;
}

.header-search-toggle:hover,
.header-search-toggle[aria-expanded="true"],
.site-header__search-close:hover {
	border-color: rgb(215 174 95 / 64%);
	color: var(--etebar-paper);
}

.header-search-toggle svg,
.etebar-product-search svg {
	width: 1.1rem;
	height: 1.1rem;
	flex: 0 0 auto;
}

.header-search-toggle__label {
	font-size: 0.75rem;
	font-weight: 750;
}

.site-header__search-panel {
	position: absolute;
	top: 100%;
	inset-inline: 0;
	border-top: 1px solid rgb(247 242 232 / 10%);
	border-bottom: 1px solid rgb(215 174 95 / 30%);
	background: #061d30;
	box-shadow: 0 22px 45px rgb(3 19 33 / 24%);
}

.site-header__search-panel[hidden] {
	display: none;
}

.site-header__search-inner {
	display: grid;
	grid-template-columns: minmax(220px, 0.72fr) minmax(340px, 1.28fr) 40px;
	align-items: center;
	gap: clamp(1rem, 2vw, 2rem);
	min-height: 108px;
	padding-block: 1rem;
}

.site-header__search-label {
	margin: 0 0 0.15rem;
	color: var(--etebar-gold-light);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.site-header__search-inner > div > p:last-child {
	margin: 0;
	color: rgb(247 242 232 / 68%);
	font-size: 0.75rem;
	line-height: 1.45;
}

.site-header__search-close {
	font-size: 1.25rem;
	line-height: 1;
}

.etebar-product-search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.5rem;
}

.etebar-product-search input[type="search"] {
	width: 100%;
	min-height: 48px;
	border: 1px solid rgb(215 174 95 / 42%);
	border-radius: 7px;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	padding: 0.7rem 0.9rem;
}

.etebar-product-search button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	border: 1px solid var(--etebar-gold);
	border-radius: 7px;
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
	cursor: pointer;
	padding-inline: 1rem;
	font-size: 0.78rem;
	font-weight: 600;
}

.site-nav__primary > a {
	color: var(--etebar-paper) !important;
}

.site-nav__primary > a::after {
	display: inline-block;
	margin-inline-start: 0.38rem;
	color: var(--etebar-gold);
	content: "→";
}

.site-nav__secondary > a {
	color: rgb(247 242 232 / 64%) !important;
}

.commerce-category-nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.commerce-category-nav--home {
	margin-top: clamp(2rem, 4vw, 3.25rem);
	border-block: 1px solid var(--etebar-border);
}

.commerce-category-nav--home li + li {
	border-top: 1px solid color-mix(in srgb, var(--etebar-border) 72%, transparent);
}

.commerce-category-nav--home a {
	display: grid;
	grid-template-columns: 48px minmax(220px, 0.55fr) minmax(0, 1fr);
	align-items: center;
	gap: clamp(0.9rem, 2vw, 1.8rem);
	min-height: 86px;
	padding: 1rem 0.25rem;
	text-decoration: none;
}

.commerce-category-nav--home a:hover,
.commerce-category-nav--home a:focus-visible {
	background: color-mix(in srgb, var(--etebar-paper) 72%, transparent);
}

.commerce-category-nav--home a > span {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.commerce-category-nav--home strong {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.15rem, 1.8vw, 1.45rem);
	line-height: 1.2;
}

.commerce-category-nav--home small {
	color: var(--etebar-gray);
	font-size: 0.82rem;
	line-height: 1.5;
}

.catalog-discovery {
	margin: 1.25rem 0 2rem;
	border-block: 1px solid var(--etebar-border);
	padding-block: clamp(1.4rem, 3vw, 2rem);
}

.catalog-discovery__intro {
	display: grid;
	grid-template-columns: minmax(240px, 0.7fr) minmax(0, 1.3fr);
	align-items: end;
	gap: 0.5rem 2rem;
	margin-bottom: 1.35rem;
}

.catalog-discovery__intro .eyebrow {
	grid-column: 1 / -1;
	margin-bottom: 0.2rem;
}

.catalog-discovery__intro h2,
.catalog-discovery__intro p {
	margin: 0;
}

.catalog-discovery__intro h2 {
	font-size: clamp(1.65rem, 2.8vw, 2.45rem);
}

.catalog-discovery__intro p {
	max-width: 620px;
	color: var(--etebar-gray);
	font-size: 0.9rem;
}

.commerce-category-nav--shop ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.commerce-category-nav--shop a {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	gap: 0.55rem;
	border: 1px solid var(--etebar-border);
	border-radius: 7px;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	padding: 0.55rem 0.8rem;
	font-size: 0.75rem;
	font-weight: 750;
	text-decoration: none;
}

.commerce-category-nav--shop a > span {
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.62rem;
}

.commerce-category-nav--shop a:hover,
.commerce-category-nav--shop a[aria-current="page"] {
	border-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
}

.catalog-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin: 0 0 1.35rem;
	border-block: 1px solid var(--etebar-border);
	padding-block: 0.75rem;
}

.woocommerce .catalog-toolbar .woocommerce-result-count,
.woocommerce .catalog-toolbar .woocommerce-ordering {
	float: none;
	margin: 0;
}

.woocommerce .catalog-toolbar .woocommerce-result-count {
	color: var(--etebar-gray);
	font-size: 0.78rem;
	font-weight: 600;
}

.woocommerce .catalog-toolbar .woocommerce-ordering select {
	min-height: 44px;
	max-width: 100%;
	border: 1px solid var(--etebar-border);
	border-radius: 7px;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	padding: 0.55rem 2.2rem 0.55rem 0.7rem;
}

.catalog-empty {
	max-width: 720px;
	margin: 2rem auto;
	border-block: 1px solid var(--etebar-border);
	padding: clamp(2rem, 5vw, 3.5rem) 0;
	text-align: center;
}

.catalog-empty .eyebrow {
	justify-content: center;
}

.catalog-empty p:not(.eyebrow) {
	color: var(--etebar-gray);
}

.catalog-empty__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 1rem;
}

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	border-color: color-mix(in srgb, var(--etebar-gold) 20%, var(--etebar-border));
	background: var(--etebar-paper);
	box-shadow: 0 14px 34px rgb(7 31 48 / 5%);
}

.woocommerce ul.products li.product.etebar-shop-card:hover,
.woocommerce-page ul.products li.product.etebar-shop-card:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 52%, var(--etebar-border));
	box-shadow: 0 20px 42px rgb(7 31 48 / 9%);
}

.etebar-shop-card__body {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
	flex-direction: column;
}

.etebar-shop-card__type {
	margin: 0 0 0.7rem;
	color: var(--etebar-green);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.etebar-shop-card__unit,
.etebar-shop-card__status {
	margin: 0 0 0.75rem;
	color: var(--etebar-gray);
	font-size: 0.76rem;
	font-weight: 650;
}

.etebar-shop-card__description {
	margin-bottom: 1rem;
}

.etebar-shop-card__body .price {
	margin-top: auto !important;
	padding-top: 0.4rem;
}

.etebar-shop-card__footer {
	display: flex;
	align-items: center;
	gap: 0.8rem;
}

.etebar-shop-card__footer .button {
	flex: 1 1 auto;
}

.etebar-shop-card__details {
	flex: 0 0 auto;
	color: var(--etebar-green);
	font-size: 0.76rem;
	font-weight: 750;
	text-underline-offset: 4px;
}

.etebar-product__breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 1rem;
	color: var(--etebar-gray);
	font-size: 0.74rem;
}

.etebar-product__breadcrumb a {
	color: var(--etebar-green);
	font-weight: 600;
	text-underline-offset: 3px;
}

.etebar-product__order-path {
	margin-top: 1.25rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 1.15rem;
}

.etebar-product__order-path h3 {
	margin-bottom: 0.85rem;
	font-family: var(--etebar-sans);
	font-size: 0.9rem;
	font-weight: 600;
}

.etebar-product__order-path ol {
	display: grid;
	gap: 0.45rem;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: order-path;
}

.etebar-product__order-path li {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	gap: 0.6rem;
	align-items: start;
	color: var(--etebar-charcoal);
	font-size: 0.78rem;
	counter-increment: order-path;
}

.etebar-product__order-path li::before {
	display: grid;
	width: 22px;
	height: 22px;
	place-items: center;
	border: 1px solid var(--etebar-gold);
	border-radius: 50%;
	color: var(--etebar-green-dark);
	content: counter(order-path);
	font-family: var(--etebar-mono);
	font-size: 0.58rem;
	font-weight: 600;
}

.etebar-product__order-path p {
	margin: 0.85rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.72rem;
	line-height: 1.5;
}

.etebar-commerce-guidance,
.etebar-checkout-orientation {
	margin-bottom: clamp(1.4rem, 3vw, 2.2rem);
	border-block: 1px solid var(--etebar-border);
	background: color-mix(in srgb, var(--etebar-paper) 84%, var(--etebar-muted));
	padding: clamp(1.25rem, 3vw, 1.8rem);
}

.etebar-commerce-guidance {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1.25rem;
}

.etebar-commerce-guidance .eyebrow,
.etebar-checkout-orientation .eyebrow {
	margin-bottom: 0.45rem;
}

.etebar-commerce-guidance h2,
.etebar-checkout-orientation h2 {
	margin-bottom: 0.5rem;
	font-size: clamp(1.45rem, 2.4vw, 2rem);
}

.etebar-commerce-guidance p,
.etebar-checkout-orientation header > p:last-child {
	max-width: 720px;
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.86rem;
}

.etebar-commerce-guidance__actions {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.4rem;
}

.etebar-commerce-guidance__secondary {
	color: var(--etebar-gray);
	font-size: 0.72rem;
}

.etebar-checkout-orientation ol {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 1.25rem 0 0;
	padding: 0;
	border-top: 1px solid var(--etebar-border);
	list-style: none;
}

.etebar-checkout-orientation li {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.15rem 0.65rem;
	border-inline-end: 1px solid var(--etebar-border);
	padding: 1rem;
}

.etebar-checkout-orientation li:last-child {
	border-inline-end: 0;
}

.etebar-checkout-orientation li > span {
	grid-row: 1 / span 2;
	color: var(--etebar-green);
	font-family: var(--etebar-mono);
	font-size: 0.64rem;
	font-weight: 600;
}

.etebar-checkout-orientation strong {
	color: var(--etebar-navy);
	font-size: 0.8rem;
}

.etebar-checkout-orientation small {
	color: var(--etebar-gray);
	font-size: 0.68rem;
	line-height: 1.35;
}

.etebar-checkout-confirmation {
	margin: 0 0 1rem;
	border-inline-start: 3px solid var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 8%, var(--etebar-paper));
	padding: 0.9rem 1rem;
}

.etebar-checkout-confirmation h3 {
	margin-bottom: 0.35rem;
	font-family: var(--etebar-sans);
	font-size: 0.86rem;
	font-weight: 600;
}

.etebar-checkout-confirmation p {
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.76rem;
	line-height: 1.5;
}

.order-request-errors ul {
	margin: 0.65rem 0 0;
	padding-inline-start: 1.2rem;
}

.order-request-errors li + li {
	margin-top: 0.25rem;
}

.order-request-errors a {
	color: var(--etebar-danger);
	font-size: 0.78rem;
	font-weight: 750;
	text-underline-offset: 3px;
}

.order-request-errors:focus {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

@media (max-width: 1180px) {
	.site-nav__primary > a,
	.site-nav__secondary > a {
		color: var(--etebar-paper) !important;
	}

	.site-nav__list a {
		min-height: 44px;
		padding-block: 0.65rem;
	}
}

@media (max-width: 820px) {
	.header-search-toggle__label {
		display: none;
	}

	.site-header__search-inner {
		grid-template-columns: minmax(0, 1fr) 40px;
	}

	.site-header__search-inner > div {
		grid-column: 1 / -1;
	}

	.catalog-discovery__intro {
		grid-template-columns: 1fr;
	}

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

	.etebar-checkout-orientation li:nth-child(2) {
		border-inline-end: 0;
	}

	.etebar-checkout-orientation li:nth-child(n + 3) {
		border-top: 1px solid var(--etebar-border);
	}
}

@media (max-width: 700px) {
	.commerce-category-nav--home {
		margin-inline: -0.75rem;
		overflow-x: auto;
		padding-inline: 0.75rem;
		scroll-padding-inline: 0.75rem;
		scroll-snap-type: x proximity;
		-webkit-overflow-scrolling: touch;
	}

	.commerce-category-nav--home ul {
		display: flex;
		width: max-content;
	}

	.commerce-category-nav--home li {
		width: min(76vw, 280px);
		flex: 0 0 auto;
		border-top: 0 !important;
		border-inline-end: 1px solid var(--etebar-border);
		scroll-snap-align: start;
	}

	.commerce-category-nav--home a {
		display: grid;
		grid-template-columns: 34px minmax(0, 1fr);
		min-height: 104px;
		align-content: center;
		padding: 0.9rem;
	}

	.commerce-category-nav--home small {
		display: none;
	}

	.commerce-category-nav--shop {
		margin-inline: -0.75rem;
		overflow-x: auto;
		padding-inline: 0.75rem;
		scroll-padding-inline: 0.75rem;
	}

	.commerce-category-nav--shop ul {
		width: max-content;
		flex-wrap: nowrap;
	}

	.catalog-toolbar,
	.etebar-commerce-guidance {
		align-items: stretch;
		flex-direction: column;
	}

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

	.etebar-commerce-guidance__actions {
		align-items: flex-start;
	}
}

@media (max-width: 520px) {
	.site-header .header-order,
	.woocommerce .site-header .header-order {
		display: none;
	}

	.site-header__search-inner {
		grid-template-columns: minmax(0, 1fr) 40px;
		gap: 0.75rem;
	}

	.etebar-product-search {
		grid-template-columns: 1fr;
	}

	.site-header__search-close {
		grid-column: 2;
		grid-row: 1;
	}

	.etebar-product-search {
		grid-column: 1 / -1;
	}

	.etebar-checkout-orientation ol {
		grid-template-columns: 1fr;
	}

	.etebar-checkout-orientation li,
	.etebar-checkout-orientation li:nth-child(2) {
		border-inline-end: 0;
	}

	.etebar-checkout-orientation li + li {
		border-top: 1px solid var(--etebar-border);
	}
}

/* Approved reference elements pass: calm, taxonomy-backed commerce controls. */

.etebar-product-search__label {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--etebar-gold-light);
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.language-switcher__button {
	min-height: 44px;
}

.etebar-product-search {
	display: block;
}

.etebar-product-search__controls {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.45rem;
}

.commerce-category-nav__visual {
	display: grid;
	overflow: hidden;
	place-items: center;
}

.commerce-category-nav__visual img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.commerce-category-nav--header ul {
	display: flex;
	gap: 0.35rem;
	margin-top: 0.45rem;
}

.commerce-category-nav--header li:nth-child(n + 5) {
	display: none;
}

.commerce-category-nav--header a {
	display: inline-flex;
	min-height: 30px;
	align-items: center;
	gap: 0.35rem;
	border: 1px solid rgb(247 242 232 / 14%);
	border-radius: 5px;
	color: rgb(247 242 232 / 78%);
	padding: 0.25rem 0.5rem;
	font-size: 0.62rem;
	text-decoration: none;
}

.commerce-category-nav--header a:hover,
.commerce-category-nav--header a:focus-visible,
.commerce-category-nav--header a[aria-current="page"] {
	border-color: var(--etebar-gold);
	color: var(--etebar-paper);
}

.commerce-category-nav--header .commerce-category-nav__visual {
	width: 18px;
	height: 18px;
	color: var(--etebar-gold-light);
	font-family: var(--etebar-mono);
	font-size: 0.5rem;
}

@media (min-width: 1181px) {
	.site-header__inner {
		gap: clamp(0.7rem, 1.2vw, 1.25rem);
	}

	.site-logo--header {
		width: 148px;
	}

	.site-header__nav-group {
		flex: 0 1 auto;
		gap: 0.65rem;
	}

	.site-header .header-order,
	.woocommerce .site-header .header-order {
		display: none;
	}

	.site-nav__list {
		gap: clamp(0.55rem, 1vw, 1rem);
	}

	.site-nav__list li:first-child,
	.site-nav__list li:last-child {
		display: none;
	}

	.site-nav__list a {
		font-size: 0.69rem;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden] {
		position: static;
		display: block;
		min-width: 310px;
		max-width: 520px;
		flex: 1 1 430px;
		border: 0;
		background: transparent;
		box-shadow: none;
	}

	.site-header__search-inner {
		display: block;
		min-height: 0;
		padding: 0;
	}

	.site-header__search-close,
	.header-search-toggle {
		display: none;
	}

	.etebar-product-search__label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
	}

	.etebar-product-search input[type="search"] {
		min-height: 44px;
	}

	.etebar-product-search button {
		min-height: 44px;
		padding-inline: 0.75rem;
	}

	.etebar-product-search button span {
		display: none;
	}
}

/* Local draft-only facts are development aids, not public storefront copy. */

.etebar-product__details--draft {
	display: none;
}

.commerce-category-nav--home {
	overflow-x: auto;
	border: 0;
	scroll-padding-inline: 0.25rem;
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
}

.commerce-category-nav--home ul {
	display: flex;
	gap: 0.75rem;
}

.commerce-category-nav--home li {
	min-width: min(230px, 72vw);
	flex: 1 0 0;
	border: 0 !important;
	scroll-snap-align: start;
}

.commerce-category-nav--home a {
	display: grid;
	min-height: 116px;
	grid-template-columns: 52px minmax(0, 1fr);
	gap: 0.8rem;
	align-content: center;
	border: 1px solid var(--etebar-border);
	border-radius: 6px;
	background: var(--etebar-paper);
	padding: 1rem;
}

.commerce-category-nav--home .commerce-category-nav__visual {
	width: 52px;
	height: 52px;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 48%, var(--etebar-border));
	border-radius: 50%;
	background: color-mix(in srgb, var(--etebar-gold) 8%, var(--etebar-paper));
}

.commerce-category-nav--home strong {
	font-size: clamp(1rem, 1.5vw, 1.2rem);
}

.commerce-category-nav--shop {
	overflow-x: auto;
	padding-bottom: 0.35rem;
	scroll-padding-inline: 0.1rem;
	scroll-snap-type: x proximity;
	scrollbar-width: thin;
}

.commerce-category-nav--shop ul {
	width: max-content;
	max-width: none;
	flex-wrap: nowrap;
}

.commerce-category-nav--shop li {
	scroll-snap-align: start;
}

.commerce-category-nav--shop .commerce-category-nav__visual {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
}

.catalog-toolbar {
	flex-wrap: wrap;
}

.catalog-toolbar__state {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 0.55rem;
}

.catalog-toolbar__filter,
.catalog-toolbar__reset {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	color: var(--etebar-green-dark);
	font-size: 0.74rem;
	font-weight: 600;
	text-underline-offset: 3px;
}

.catalog-toolbar__filter {
	border: 1px solid var(--etebar-border);
	border-radius: 6px;
	background: var(--etebar-paper);
	padding-inline: 0.75rem;
	text-decoration: none;
}

.catalog-toolbar__active {
	min-width: 0;
	overflow-wrap: anywhere;
	color: var(--etebar-navy);
	font-size: 0.76rem;
	font-weight: 600;
}

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card {
	border-radius: 6px;
	box-shadow: 0 8px 20px rgb(7 31 48 / 4%);
}

.woocommerce ul.products li.product.etebar-shop-card:hover,
.woocommerce-page ul.products li.product.etebar-shop-card:hover {
	box-shadow: 0 12px 28px rgb(7 31 48 / 7%);
	transform: none;
}

.etebar-shop-card__image-label {
	display: none;
}

.woocommerce ul.products li.product .etebar-shop-card__image img,
.woocommerce ul.products li.product .etebar-shop-card__image--placeholder img {
	aspect-ratio: 1 / 0.78;
	min-height: 0;
	padding: clamp(0.9rem, 2vw, 1.35rem);
}

.etebar-shop-card__body {
	padding: 1rem 1rem 0;
}

.etebar-shop-card__type {
	margin-bottom: 0.45rem;
	font-size: 0.6rem;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin-bottom: 0.55rem;
	font-size: clamp(1.05rem, 1.5vw, 1.25rem);
	line-height: 1.22;
}

.etebar-shop-card__unit,
.etebar-shop-card__status {
	margin-bottom: 0.55rem;
	font-size: 0.72rem;
}

.woocommerce ul.products li.product .price {
	margin: 0.2rem 0 0.75rem;
	font-size: 1.15rem;
}

.etebar-shop-card__footer {
	padding: 0 1rem 1rem;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button {
	min-height: 44px;
	font-size: 0.76rem;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button[aria-busy="true"] {
	cursor: wait;
	opacity: 0.68;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button.is-added::after {
	margin-inline-start: 0.45rem;
	content: "✓";
}

.single-product .etebar-product__breadcrumb {
	margin-bottom: 1.5rem;
}

.single-product .etebar-product__layout {
	grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.82fr);
	align-items: start;
	gap: clamp(2rem, 4vw, 4.5rem);
}

.single-product .etebar-product__media {
	margin-top: 0;
}

.single-product .etebar-product__request-panel {
	position: sticky;
	top: 1.5rem;
}

.single-product .etebar-product__request-panel .product_title {
	margin-bottom: 1rem;
	font-size: clamp(2.25rem, 4vw, 4.1rem);
	letter-spacing: -0.035em;
	line-height: 0.98;
}

.etebar-product__unit-note {
	margin: 0.8rem 0;
	color: var(--etebar-gray);
	font-size: 0.82rem;
	font-weight: 600;
}

.etebar-cart-confirmation {
	width: min(460px, calc(100vw - 44px));
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 62%, var(--etebar-border));
	border-top: 3px solid var(--etebar-gold);
	border-radius: 13px;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	padding: 0;
	box-shadow: 0 16px 38px rgb(3 19 33 / 16%);
    position: fixed;
    z-index: 1200;
    right: 22px;
    bottom: 22px;
    left: auto;
    margin: 0;
    box-sizing: border-box;
    overflow: hidden;
    border-top-width: 1px;
    display: grid;
    gap: 0;
}

.etebar-cart-confirmation::backdrop {
	background: rgb(3 19 33 / 42%);
}

.etebar-cart-confirmation__close {
	position: absolute;
	top: 0.4rem;
	inset-inline-end: 0.4rem;
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 0;
	background: transparent;
	color: var(--etebar-navy);
	cursor: pointer;
	font-size: 1.2rem;
    border-radius: 7px;
}

.etebar-cart-confirmation__success {
	margin: 0 0 0.1rem;
	color: var(--etebar-navy);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
    font-family: var(--etebar-sans);
}

[dir="rtl"] .etebar-cart-confirmation__success {
	margin-right: 0;
	margin-left: 3rem;
}

.etebar-cart-confirmation__product {
	display: grid;
	align-items: center;
	gap: 0.8rem;
	border-block: 1px solid var(--etebar-border);
	padding-block: 1rem;
    grid-template-columns: 58px minmax(0, 1fr);
    border: 0;
    padding: 0 2.3rem 0 0;
}

.etebar-cart-confirmation__product img {
	width: 58px;
	height: 58px;
	flex: 0 0 64px;
	object-fit: contain;
    border: 1px solid var(--etebar-border);
    border-radius: 8px;
    background: var(--etebar-ivory);
    padding: 0.2rem;
}

.etebar-cart-confirmation__product strong {
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 1rem;
    display: block;
    font-weight: 600;
    line-height: 1.35;
}

.etebar-cart-confirmation__count {
	margin: 0.18rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.82rem;
    line-height: 1.35;
}

.etebar-cart-confirmation__actions {
	display: flex;
	gap: 1rem;
    align-items: center;
    border-top: 1px solid var(--etebar-border);
    padding-top: 0.8rem;
}

.etebar-cart-confirmation__actions .button,
.etebar-cart-confirmation__actions .text-link {
	min-height: 44px;
	justify-content: center;
	text-align: center;
}

.etebar-cart-confirmation__actions .text-link {
	border: 0;
	background: transparent;
	cursor: pointer;
    min-height: 44px;
    align-items: center;
    padding: 0;
    color: var(--etebar-navy);
    text-align: start;
}

.etebar-checkout-error-summary {
	margin-bottom: 1.25rem;
	border: 1px solid var(--etebar-danger);
	border-inline-start-width: 4px;
	background: color-mix(in srgb, var(--etebar-danger) 5%, var(--etebar-paper));
	padding: 1rem 1.15rem;
}

.etebar-checkout-role {
	margin: 0 0 0.25rem;
	color: var(--etebar-green-dark);
	font-size: 0.65rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.etebar-checkout-role-help {
	margin: 0.35rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.78rem;
	font-weight: 500;
	line-height: 1.45;
}

.etebar-checkout-error-summary:focus {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

.etebar-checkout-error-summary h2 {
	margin-bottom: 0.6rem;
	font-family: var(--etebar-sans);
	font-size: 1rem;
}

.etebar-checkout-error-summary ul {
	margin: 0;
	padding-inline-start: 1.2rem;
}

.etebar-checkout-error-summary a {
	color: var(--etebar-danger);
	font-size: 0.82rem;
	font-weight: 750;
}

.homepage-process__flow {
	position: relative;
}

.home .homepage-process .process-list li {
	position: relative;
}

.home .homepage-process .process-list li:not(:last-child)::after {
	position: absolute;
	top: 33px;
	inset-inline-end: -1px;
	width: 1.2rem;
	border-top: 1px solid var(--etebar-gold);
	content: "";
}

@media (max-width: 1180px) {
	.site-header__search-panel {
		inset-inline: 0;
		padding: 1rem max(1rem, calc((100vw - var(--container)) / 2));
	}

	.site-header__search-inner {
		min-height: 0;
	}

	.commerce-category-nav--header {
		margin-top: 0.65rem;
	}
}

@media (max-width: 820px) {
	.single-product .etebar-product__layout {
		grid-template-columns: 1fr;
	}

	.single-product .etebar-product__request-panel {
		position: static;
	}

	.single-product .etebar-product__request-panel .product_title {
		font-size: clamp(2rem, 9vw, 3.2rem);
	}

	.home .homepage-process .process-list li:not(:last-child)::after {
		display: none;
	}
}

@media (max-width: 700px) {
	.etebar-product-search__controls {
		grid-template-columns: 1fr;
	}

	.commerce-category-nav--header {
		overflow-x: auto;
		scroll-snap-type: x proximity;
	}

	.commerce-category-nav--header ul {
		width: max-content;
	}

	.commerce-category-nav--header li {
		display: block !important;
		scroll-snap-align: start;
	}

	.commerce-category-nav--header a {
		min-height: 44px;
	}

	.catalog-toolbar__state {
		width: 100%;
		flex-wrap: wrap;
	}

	.catalog-toolbar__active {
		flex: 1 1 auto;
	}

	.commerce-category-nav--home {
		border: 0;
	}

	.commerce-category-nav--home ul {
		width: max-content;
	}

	.commerce-category-nav--home a {
		grid-template-columns: 52px minmax(0, 1fr);
	}
}

@media (max-width: 520px) {
	.site-header__search-panel {
		max-height: calc(100vh - 64px);
		overflow-y: auto;
	}

	.etebar-product-search,
	.etebar-product-search__controls {
		display: grid;
		grid-template-columns: 1fr;
	}

	.site-header__search-close {
		position: absolute;
		top: 0.65rem;
		inset-inline-end: 0.75rem;
	}

	.etebar-product-search__label {
		padding-inline-end: 3rem;
	}

	.etebar-cart-confirmation {
		margin-block: auto 0;
		border-radius: 7px 7px 0 0;
	}
}

/* Approved cart-confirmation toast additions */

.etebar-cart-confirmation[hidden] {
    display: none;
}

html[dir="rtl"] .etebar-cart-confirmation {
    right: auto;
    left: 22px;
}

.etebar-cart-confirmation__close:hover,
.etebar-cart-confirmation__close:focus-visible {
    background: var(--etebar-muted);
}

html[dir="rtl"] .etebar-cart-confirmation__product {
    padding-right: 0;
    padding-left: 2.3rem;
}

.etebar-cart-confirmation__actions .button {
    min-width: 128px;
    min-height: 44px;
}

.etebar-cart-confirmation .etebar-cart-confirmation__success {
    color: var(--etebar-navy);
    letter-spacing: 0;
    text-transform: none;
}

.etebar-cart-confirmation__progress {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: block;
    transform: scaleX(1);
    transform-origin: left center;
}

html[dir="rtl"] .etebar-cart-confirmation__progress {
    transform-origin: right center;
}

.etebar-cart-confirmation .etebar-cart-confirmation__close {
    font-size: 1.15rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product {
    display: grid;
    align-items: center;
    border-block-end: 1px solid var(--etebar-border);
}

.etebar-cart-confirmation .etebar-cart-confirmation__success,
.etebar-cart-confirmation .etebar-cart-confirmation__count {
    margin: 0;
}

.etebar-cart-confirmation .etebar-cart-confirmation__success {
    margin-block-end: 0.15rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__count {
    margin-block-start: 0.15rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions {
    align-items: center;
    padding-block-start: 0.75rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product {
    border: 0;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product img {
    border-radius: 9px;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product strong {
    display: block;
    padding-inline-end: 0.25rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions {
    padding: 0;
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions .button,
.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
    border-radius: 8px;
    text-decoration: none;
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions .button {
    border: 1px solid var(--etebar-navy);
    background: var(--etebar-navy);
    color: var(--etebar-paper);
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
    display: inline-flex;
    border: 1px solid color-mix(in srgb, var(--etebar-navy) 72%, var(--etebar-border));
    background: transparent;
    color: var(--etebar-navy);
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions .button:hover,
.etebar-cart-confirmation .etebar-cart-confirmation__actions .button:focus-visible {
    background: color-mix(in srgb, var(--etebar-navy) 90%, white);
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link:hover,
.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link:focus-visible {
    border-color: var(--etebar-navy);
    background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions :is(.button, .text-link):active {
    transform: translateY(1px);
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions :is(.button, .text-link):focus-visible {
    outline: 3px solid color-mix(in srgb, var(--etebar-gold) 52%, transparent);
    outline-offset: 2px;
}

.etebar-cart-confirmation::before {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    height: 3px;
    background: color-mix(in srgb, var(--etebar-gold) 30%, var(--etebar-paper));
    content: "";
}

.etebar-cart-confirmation__progress {
    z-index: 2;
    height: 3px;
    background: var(--etebar-gold);
}

.etebar-cart-confirmation .etebar-cart-confirmation__close {
    top: 0.65rem;
    inset-inline-end: 0.65rem;
    width: 38px;
    height: 38px;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product {
    grid-template-columns: 68px minmax(0, 1fr);
    gap: 0.85rem;
    padding: 1.05rem 3.25rem 0.65rem 1.05rem;
}

html[dir="rtl"] .etebar-cart-confirmation .etebar-cart-confirmation__product {
    padding-right: 1.05rem;
    padding-left: 3.25rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product img {
    width: 68px;
    height: 68px;
    flex-basis: 68px;
}

.etebar-cart-confirmation .etebar-cart-confirmation__product strong {
    font-size: 1.02rem;
    line-height: 1.3;
}

.etebar-cart-confirmation .etebar-cart-confirmation__success {
    font-size: 0.76rem;
    line-height: 1.3;
}

.etebar-cart-confirmation .etebar-cart-confirmation__count {
    font-size: 0.8rem;
    line-height: 1.35;
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions {
    display: grid;
    width: auto;
    grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
    gap: 0.7rem;
    justify-self: stretch;
    margin: 0 1.05rem 1.05rem;
}

.etebar-cart-confirmation .etebar-cart-confirmation__actions .button,
.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
    width: 100%;
    min-width: 0;
    height: 44px;
    min-height: 44px;
    padding: 0.65rem 0.85rem;
}

/* Approved cart-confirmation toast additions */

@media (max-width: 700px) {

    .etebar-cart-confirmation__actions {
        justify-content: space-between;
    }
    .etebar-cart-confirmation {
        right: 16px;
        bottom: 16px;
        left: 16px;
        width: auto;
    }

    html[dir="rtl"] .etebar-cart-confirmation {
        right: 16px;
        left: 16px;
    }
    .etebar-cart-confirmation,
    html[dir="rtl"] .etebar-cart-confirmation {
        gap: 0.7rem;
    }

    .etebar-cart-confirmation .etebar-cart-confirmation__product img {
        width: 64px;
        height: 64px;
        flex-basis: 64px;
    }

    .etebar-cart-confirmation .etebar-cart-confirmation__actions {
        display: grid;
        width: 100%;
    }

    .etebar-cart-confirmation .etebar-cart-confirmation__actions .button,
    .etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
        width: 100%;
        min-width: 0;
    }
    .etebar-cart-confirmation,
    html[dir="rtl"] .etebar-cart-confirmation {
        right: 16px;
        bottom: 16px;
        left: 16px;
        width: auto;
        padding: 0;
    }

    .etebar-cart-confirmation .etebar-cart-confirmation__product {
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 0.7rem;
        padding: 0.95rem 3rem 0.65rem 0.85rem;
    }

    html[dir="rtl"] .etebar-cart-confirmation .etebar-cart-confirmation__product {
        padding-right: 0.85rem;
        padding-left: 3rem;
    }

    .etebar-cart-confirmation .etebar-cart-confirmation__actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.65rem;
        margin: 0 0.85rem 0.85rem;
    }
}

/* Focused cleanup pass: compact header and quieter homepage hierarchy. */

.site-header__inner {
	min-height: 66px;
	flex-wrap: nowrap;
	gap: clamp(0.55rem, 1vw, 0.9rem);
}

.site-logo--header {
	width: 132px;
}

.site-header .header-order,
.woocommerce .site-header .header-order {
	display: none;
}

.site-header__actions {
	flex: 0 0 auto;
	gap: 0.5rem;
}

.header-cart,
.header-search-toggle,
.menu-toggle {
	min-width: 44px;
	min-height: 44px;
}

.header-cart {
	justify-content: center;
	border-color: transparent;
	padding-inline: 0.55rem;
}

.header-cart:hover,
.header-cart:focus-visible {
	border-color: rgb(215 174 95 / 42%);
}

.language-switcher {
	margin: 0;
}

.language-switcher__group {
	display: block;
}

.language-switcher__button {
	min-width: 52px;
	min-height: 44px;
	justify-content: center;
	border-color: transparent;
	background: transparent;
	padding: 0.45rem 0.55rem;
}

.language-switcher__button:hover,
.language-switcher__button.is-active {
	border-color: rgb(215 174 95 / 42%);
	background: transparent;
}

.language-switcher > .language-switcher__button {
	display: none;
}

.language-switcher__flag {
	display: none;
}

.language-switcher__native {
	font-family: var(--etebar-sans);
	font-size: 0.72rem;
	font-weight: 600;
}

.language-switcher__menu {
	min-width: 154px;
	border-radius: 6px;
	padding: 0.3rem;
	box-shadow: 0 14px 30px rgb(0 0 0 / 18%);
}

.language-switcher__menu button,
.language-switcher__menu .language-switcher__menu-choice {
	min-height: 44px;
	justify-content: space-between;
	border: 0;
	padding: 0.55rem 0.65rem;
}

.language-switcher__menu .language-switcher__menu-choice span:last-child {
	color: inherit;
	font-size: 0.72rem;
}

.site-header .site-nav__list a {
	position: relative;
	border: 0;
	background: transparent;
	padding: 0.45rem 0.12rem;
}

.site-header .site-nav__list a::after {
	height: 1px;
	background: var(--etebar-gold);
}

.site-nav__secondary > a {
	color: rgb(247 242 232 / 58%) !important;
}

@media (min-width: 1181px) {
	.site-header__nav-group {
		display: contents;
	}

	.site-logo--header {
		order: 1;
	}

	.site-nav {
		order: 2;
		flex: 0 1 auto;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden] {
		order: 3;
		width: clamp(220px, 20vw, 280px);
		min-width: 220px;
		max-width: 280px;
		flex: 0 1 280px;
	}

	.language-switcher {
		order: 4;
	}

	.site-header__actions {
		order: 5;
	}

	.site-header .site-nav__list {
		gap: clamp(0.7rem, 1.15vw, 1.15rem);
	}

	.site-header .site-nav__list li:first-child,
	.site-header .site-nav__list li:nth-child(3),
	.site-header .site-nav__list li:last-child {
		display: none;
	}

	.site-header .site-nav__list a {
		font-size: 0.72rem;
	}

	.etebar-product-search input[type="search"],
	.etebar-product-search button {
		min-height: 40px;
	}

	.etebar-product-search input[type="search"] {
		padding-block: 0.55rem;
		font-size: 0.75rem;
	}

	.etebar-product-search button {
		width: 40px;
		padding-inline: 0;
	}
}

.home .homepage-process {
	padding-top: 2rem;
	padding-bottom: 2.25rem;
}

.home .homepage-process__heading {
	margin-bottom: 1.1rem;
}

.home .homepage-process__heading .eyebrow {
	margin-bottom: 0.35rem;
}

.home .homepage-process__heading h2 {
	margin-bottom: 0.4rem;
	font-size: clamp(1.7rem, 2.5vw, 2.4rem);
	line-height: 1.08;
}

.home .homepage-process__heading > p:last-child {
	max-width: 680px;
	font-size: 0.84rem;
	line-height: 1.45;
}

.homepage-process__flow {
	grid-template-columns: 1fr;
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even) {
	min-height: 146px;
	gap: 0.65rem;
	padding: 0.85rem 1rem;
}

.homepage-process__step-mark > span {
	width: 30px;
	height: 30px;
	flex-basis: 30px;
}

.homepage-process__step-mark svg {
	width: 21px;
	height: 21px;
}

.home .homepage-process .process-list h3 {
	font-size: 0.96rem;
}

.home .homepage-process .process-list p {
	font-size: 0.75rem;
	line-height: 1.42;
}

.homepage-process__request {
	min-height: 0;
	grid-template-columns: 32px minmax(150px, 0.75fr) minmax(260px, 1.5fr) auto;
	grid-template-rows: auto auto;
	column-gap: 0.8rem;
	align-items: center;
	border-top: 1px solid color-mix(in srgb, var(--etebar-green) 20%, var(--etebar-border));
	padding: 0.75rem 1rem;
}

.homepage-process__request-icon {
	width: 32px;
	height: 32px;
	grid-column: 1;
	grid-row: 1 / span 2;
}

.homepage-process__request .eyebrow {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	font-size: 0.56rem;
}

.homepage-process__request h3 {
	grid-column: 2;
	grid-row: 2;
	margin: 0;
	font-size: 0.94rem;
}

.homepage-process__request p:not(.eyebrow) {
	grid-column: 3;
	grid-row: 1 / span 2;
	margin: 0;
	font-size: 0.72rem;
	line-height: 1.4;
}

.homepage-process__request-link {
	grid-column: 4;
	grid-row: 1 / span 2;
	margin: 0;
	white-space: nowrap;
}

.homepage-process__footer {
	margin-top: 0.45rem;
}

.home #categories,
.home #special-request,
.home .home-trust,
.home .faq-preview {
	padding-top: clamp(3rem, 4.5vw, 4.5rem);
	padding-bottom: clamp(3rem, 4.5vw, 4.5rem);
}

.home #categories .section-heading,
.home #special-request .section-heading,
.home .home-trust .section-heading,
.home .faq-preview .section-heading {
	margin-bottom: 1.2rem;
}

.home #categories .section-heading h2,
.home #special-request .section-heading h2,
.home .home-trust .section-heading h2,
.home .faq-preview .section-heading h2 {
	font-size: clamp(1.8rem, 3vw, 2.7rem);
}

.home .commerce-category-nav--home {
	margin-top: 1rem;
}

.home .commerce-category-nav--home ul {
	gap: 0.65rem;
}

.home .commerce-category-nav--home li {
	min-width: min(230px, 72vw);
	flex: 1 0 min(230px, 48%);
}

.home .commerce-category-nav--home a {
	min-height: 100px;
	grid-template-columns: 44px minmax(0, 1fr);
	padding: 0.8rem 0.9rem;
}

.home .commerce-category-nav--home .commerce-category-nav__visual {
	width: 44px;
	height: 44px;
}

.home .category-grid__footer {
	justify-content: flex-end;
	margin-top: 1rem;
}

.home .special-layout {
	grid-template-columns: minmax(0, 1fr) minmax(320px, 0.65fr);
	gap: clamp(2rem, 4vw, 4rem);
	align-items: center;
}

.home .special-layout > div > p {
	margin-top: 0.8rem;
}

.home .request-preview {
	border-radius: 6px;
	padding: 1.35rem;
	box-shadow: none;
}

.home .request-preview dl {
	margin: 0.85rem 0;
}

.home .request-preview dl div {
	padding: 0.6rem 0;
}

.home .home-trust__grid {
	gap: clamp(1.75rem, 4vw, 3.5rem);
}

.home .home-trust__proof .proof-steps {
	margin: 1.2rem 0 1rem;
}

.home .home-trust__support {
	border-radius: 6px;
	padding: clamp(1.35rem, 2.5vw, 2rem);
	box-shadow: none;
}

.home .home-trust__support h2 {
	margin-bottom: 0.7rem;
	font-size: clamp(1.55rem, 2.3vw, 2.05rem);
}

.home .home-trust__support > p:not(.eyebrow) {
	margin-bottom: 1rem;
	line-height: 1.55;
}

.home .faq-preview .accordion {
	margin-top: 1.25rem;
}

.home .faq-preview .accordion__trigger {
	min-height: 54px;
	padding-block: 0.7rem;
}

.home .faq-preview__more {
	margin-top: 1rem;
}

.home .site-footer__order-callout,
.home .site-footer__actions .button {
	display: none;
}

.site-footer__order-callout {
	padding-top: clamp(2rem, 3vw, 3rem);
	padding-bottom: clamp(2rem, 3vw, 3rem);
}

.site-footer__order-callout h2 {
	font-size: clamp(1.8rem, 3vw, 2.8rem);
}

.site-footer__grid {
	gap: clamp(1.75rem, 3vw, 3rem);
	padding-top: 2.5rem;
	padding-bottom: 2.25rem;
}

.site-footer__legal {
	padding-top: 0.9rem;
	padding-bottom: 0.9rem;
}

@media (max-width: 1180px) {
	.site-header__inner {
		min-height: 64px;
	}

	.site-logo--header {
		width: 128px;
	}

	.site-header__nav-group {
		padding-top: 0.75rem;
		padding-bottom: 0.9rem;
	}

	.language-switcher {
		order: 2;
		padding-bottom: 0.6rem;
	}

	.site-nav {
		order: 1;
	}

	.site-header__search-panel {
		padding-top: 0.8rem;
		padding-bottom: 0.8rem;
	}

	.homepage-process__request {
		grid-template-columns: 32px minmax(0, 1fr) auto;
		grid-template-rows: auto auto auto;
	}

	.homepage-process__request .eyebrow,
	.homepage-process__request h3 {
		grid-column: 2;
	}

	.homepage-process__request p:not(.eyebrow) {
		grid-column: 2 / -1;
		grid-row: 3;
		margin-top: 0.35rem;
	}

	.homepage-process__request-link {
		grid-column: 3;
		grid-row: 1 / span 2;
	}
}

@media (max-width: 700px) {
	.site-header__inner {
		min-height: 64px;
	}

	.site-logo--header {
		width: 116px;
	}

	.header-search-toggle__label,
	.header-cart > span:not(.header-cart__count) {
		display: none;
	}

	.home .homepage-process {
		padding-top: 1.75rem;
		padding-bottom: 2rem;
	}

	.home .homepage-process__heading {
		margin-bottom: 0.9rem;
	}

	.home .homepage-process__heading h2 {
		font-size: clamp(1.6rem, 7.8vw, 2rem);
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		padding: 0.75rem 0.5rem;
	}

	.homepage-process__request {
		display: block;
		padding: 0.85rem;
	}

	.homepage-process__request-icon {
		float: inline-start;
		margin-inline-end: 0.65rem;
	}

	.homepage-process__request .eyebrow,
	.homepage-process__request h3,
	.homepage-process__request p:not(.eyebrow),
	.homepage-process__request-link {
		margin-inline-start: 2.65rem;
	}

	.homepage-process__request p:not(.eyebrow) {
		margin-top: 0.4rem;
	}

	.homepage-process__request-link {
		margin-top: 0.45rem;
	}

	.home #categories,
	.home #special-request,
	.home .home-trust,
	.home .faq-preview {
		padding-top: 2.75rem;
		padding-bottom: 2.75rem;
	}

	.home .special-layout,
	.home .home-trust__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.home .category-grid__footer {
		justify-content: flex-start;
	}

	.site-footer__grid {
		gap: 1.5rem;
		padding-top: 2rem;
		padding-bottom: 1.75rem;
	}
}

/* Final visual-repair cascade: intentionally last; the homepage hero is excluded. */

.page-hero--compact {
	padding-block: clamp(3.75rem, 7vw, 5.75rem) !important;
}

.page-hero--compact h1,
.woocommerce-main > .page-title,
.woocommerce-main > h1,
.etebar-product h1.product_title {
	font-size: clamp(3rem, 4vw, 4rem) !important;
	line-height: 1.06 !important;
	letter-spacing: -0.035em;
}

[dir="rtl"] .page-hero--compact h1,
[dir="rtl"] .woocommerce-main > .page-title,
[dir="rtl"] .etebar-product h1.product_title {
	letter-spacing: 0;
	line-height: 1.2 !important;
}

.etebar-product__description,
.etebar-product__description p {
	color: #29323d !important;
}

.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2vw, 1.5rem) !important;
}

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card {
	float: none !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	transform: none !important;
}

.woocommerce-cart .woocommerce-main {
	min-height: 0 !important;
	padding-bottom: clamp(4rem, 7vw, 5rem) !important;
}

@media (max-width: 1000px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 1180px) {
	body.search-is-open {
		overflow: hidden;
	}

	.site-header__search-backdrop {
		position: fixed;
		inset: 0;
		display: block;
		z-index: 998;
		border: 0;
		background: rgba(5, 18, 31, 0.62);
	}

	.site-header__search-backdrop[hidden] {
		display: none;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden] {
		position: fixed !important;
		inset: 64px 0 auto !important;
		display: none !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 1.1rem clamp(1rem, 4vw, 2rem) 1.35rem !important;
		z-index: 999 !important;
		background: #fffaf0 !important;
	}

	.site-header__search-panel:not([hidden]) {
		display: block !important;
	}
}

@media (max-width: 700px) {
	.page-hero--compact {
		padding-block: 3rem !important;
	}

	.page-hero--compact h1,
	.woocommerce-main > .page-title,
	.woocommerce-main > h1,
	.etebar-product h1.product_title {
		font-size: clamp(2.25rem, 10vw, 2.625rem) !important;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		display: none !important;
	}

	.site-footer__actions .button {
		display: none !important;
	}
}

/* RTL homepage hero repair: keep physical image/text columns independent of writing direction. */

html[dir="rtl"] .home .hero__layout {
	direction: ltr;
	grid-template-columns: minmax(0, 56%) minmax(0, 44%);
	gap: 0;
}

html[dir="rtl"] .home .hero__content {
	width: 100%;
	max-width: 44rem;
	grid-column: 2;
	align-self: center;
	justify-self: end;
	direction: rtl;
	text-align: right;
}

html[dir="rtl"] .home .hero h1 {
	max-width: 100%;
	font-size: clamp(2.75rem, 4.2vw, 4.25rem);
	letter-spacing: 0;
	line-height: 1.2;
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

html[dir="rtl"] .home .hero__lead {
	max-width: 44rem;
	font-size: clamp(1.0625rem, 1.35vw, 1.25rem);
	line-height: 1.8;
}

html[dir="rtl"] .home .hero__eyebrow,
html[dir="rtl"] .home .hero__route-summary dt {
	letter-spacing: 0;
	text-transform: none;
}

html[dir="rtl"] .home .hero__eyebrow {
	justify-content: flex-start;
}

html[dir="rtl"] .home .hero__route-summary,
html[dir="rtl"] .home .hero .button-row {
	width: 100%;
	max-width: 44rem;
	direction: rtl;
}

html[dir="rtl"] .home .hero__route-summary div {
	padding: 0.85rem 0 0.9rem 1rem;
}

html[dir="rtl"] .home .hero__route-summary div + div {
	border-right: 1px solid rgb(215 174 95 / 22%);
	border-left: 0;
	padding-right: 1.25rem;
	padding-left: 0;
}

html[dir="rtl"] .home .hero .button-row .button {
	min-height: 44px;
	padding-inline: clamp(1rem, 1.7vw, 1.5rem);
	white-space: normal;
}

@media (max-width: 1080px) and (min-width: 769px) {
	html[dir="rtl"] .home .hero__layout {
		grid-template-columns: minmax(0, 54%) minmax(0, 46%);
	}

	html[dir="rtl"] .home .hero__content {
		max-width: 31rem;
	}

	html[dir="rtl"] .home .hero h1 {
		font-size: clamp(2.75rem, 4.8vw, 3.25rem);
	}
}

@media (max-width: 768px) {
	html[dir="rtl"] .home .hero__layout {
		display: grid;
		min-height: 0;
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto auto;
		gap: 0;
		padding-top: clamp(2rem, 6vw, 2.75rem);
		padding-bottom: 0;
	}

	html[dir="rtl"] .home .hero__content {
		width: 100%;
		max-width: none;
		grid-column: 1;
		grid-row: 1;
		padding-bottom: clamp(1.25rem, 4vw, 2rem);
	}

	html[dir="rtl"] .home .hero h1 {
		max-width: 13ch;
		margin-right: 0;
		margin-left: auto;
		font-size: clamp(2.55rem, 7.4vw, 3.5rem);
		line-height: 1.22;
	}

	html[dir="rtl"] .home .hero__lead {
		max-width: 42rem;
		margin-inline-start: auto;
		font-size: clamp(1rem, 2.35vw, 1.125rem);
		line-height: 1.78;
	}

	html[dir="rtl"] .home .hero__visual {
		position: relative;
		inset: auto;
		display: block;
		width: 100%;
		min-height: clamp(18.75rem, 48vw, 24.375rem);
		grid-column: 1;
		grid-row: 2;
		margin: 0;
		overflow: hidden;
	}

	html[dir="rtl"] .home .hero .hero-editorial {
		position: absolute;
		inset: 0;
		overflow: hidden;
	}

	html[dir="rtl"] .home .hero .hero-editorial__image--rtl {
		position: absolute;
		inset: 0;
		display: block;
		width: 100%;
		height: 100%;
		object-fit: contain;
		object-position: left bottom;
		-webkit-mask-image: none;
		mask-image: none;
	}
}

@media (max-width: 480px) {
	html[dir="rtl"] .home .hero h1 {
		max-width: 12ch;
	}

	html[dir="rtl"] .home .hero .button-row {
		align-items: stretch;
	}

html[dir="rtl"] .home .hero .button-row .button {
	width: 100%;
	justify-content: center;
}
}

/* Homepage hero CTAs: Modern Premium treatment; layout and artwork remain unchanged. */

.home .hero .button-row {
	gap: 1rem;
}

.home .hero .hero-cta {
	min-height: 55px;
	border-radius: 8px;
	padding-inline: 1.4rem;
	font-weight: 600;
	white-space: nowrap;
}

.home .hero .hero-cta--primary {
	display: grid;
	min-width: 13.5rem;
	grid-template-columns: 1.15rem minmax(0, 1fr) 1rem;
	gap: 0.7rem;
	direction: ltr;
	border-color: #d7ae5f;
	background: #d7ae5f;
	color: #061525;
	box-shadow: 0 7px 20px rgb(215 174 95 / 20%);
	transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.home .hero .hero-cta--primary:hover {
	border-color: #e0bb70;
	background: #e0bb70;
	box-shadow: 0 10px 24px rgb(215 174 95 / 28%);
	transform: translateY(-2px);
}

.home .hero .hero-cta--primary:active {
	box-shadow: 0 6px 16px rgb(215 174 95 / 18%);
	transform: translateY(0);
}

.home .hero .hero-cta--secondary {
	border-color: rgb(215 174 95 / 62%);
	background: rgb(3 19 33 / 46%);
	color: #f7f2e8;
	box-shadow: none;
}

.home .hero .hero-cta--secondary:hover {
	border-color: #d7ae5f;
	background: rgb(3 19 33 / 72%);
	color: #fffaf0;
	box-shadow: none;
}

.home .hero .hero-cta:focus-visible {
	outline: 3px solid #fffaf0;
	outline-offset: 3px;
}

.home .hero .hero-cta__basket,
.home .hero .hero-cta__arrow {
	display: block;
	width: 100%;
	height: auto;
}

.home .hero .hero-cta__label {
	text-align: center;
}

html[dir="rtl"] .home .hero .hero-cta__label {
	direction: rtl;
}

@media (max-width: 640px) {
	.home .hero .hero-cta {
		width: 100%;
		min-height: 55px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.home .hero .hero-cta--primary {
		transition: none;
	}

	.home .hero .hero-cta--primary:hover {
		transform: none;
	}
}

/* Sticky header composition: one controlled row with a unified search and utility group. */

.site-header__inner {
	display: grid;
	min-height: 72px;
	grid-template-columns: 154px max-content minmax(1.5rem, 1fr) minmax(300px, 340px) max-content;
	grid-template-areas: "logo nav . search actions";
	column-gap: clamp(1rem, 1.35vw, 1.25rem);
	align-items: center;
	direction: ltr;
}

.site-logo--header {
	width: 154px;
	min-height: 44px;
	grid-area: logo;
}

.site-header__nav-group {
	grid-area: nav;
	min-width: 0;
	margin-inline-start: clamp(1.5rem, 2.5vw, 2.75rem);
}

.site-header .site-nav__list {
	display: flex;
	align-items: center;
	gap: clamp(1.4rem, 1.9vw, 2rem);
}

.site-header .site-nav__list a,
.site-header .site-nav__secondary > a {
	position: relative;
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	border: 0;
	background: transparent;
	color: rgb(247 242 232 / 92%) !important;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.2;
	padding: 0.15rem 0;
	text-decoration: none;
}

.site-header .site-nav__secondary > a {
	color: rgb(247 242 232 / 82%) !important;
	font-weight: 560;
}

.site-header .site-nav__list a::after {
	position: absolute;
	inset-inline: 0;
	bottom: 2px;
	display: block;
	width: auto;
	height: 1px;
	background: var(--etebar-gold);
	content: "";
	opacity: 0;
	transform: scaleX(0.35);
	transition: opacity 160ms ease, transform 160ms ease;
}

.site-header .site-nav__list a:hover,
.site-header .site-nav__list a:focus-visible,
.site-header .site-nav__list .is-current > a {
	color: var(--etebar-paper) !important;
}

.site-header .site-nav__list a:hover::after,
.site-header .site-nav__list a:focus-visible::after,
.site-header .site-nav__list .is-current > a::after {
	opacity: 1;
	transform: scaleX(1);
}

.site-header__search-panel,
.site-header__search-panel[hidden] {
	position: static;
	display: block;
	width: auto;
	min-width: 0;
	max-width: none;
	grid-area: search;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.site-header__search-inner {
	display: block;
	min-height: 0;
	padding: 0;
}

.site-header__search-close {
	display: none;
}

.site-header .etebar-product-search__label {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.site-header .etebar-product-search__controls {
	display: grid;
	height: 46px;
	grid-template-columns: minmax(0, 1fr) 46px;
	gap: 0;
	border: 1px solid rgb(247 242 232 / 24%);
	border-radius: 8px;
	background: var(--etebar-paper);
	overflow: hidden;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.site-header .etebar-product-search__controls:focus-within {
	border-color: var(--etebar-gold);
	box-shadow: 0 0 0 3px rgb(215 174 95 / 18%);
}

.site-header .etebar-product-search input[type="search"] {
	width: 100%;
	min-width: 0;
	min-height: 44px;
	border: 0;
	border-radius: 0;
	outline: 0;
	background: transparent;
	padding: 0.65rem 0.85rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	line-height: 1.2;
}

.site-header .etebar-product-search input[type="search"]::placeholder {
	color: #66717c;
	opacity: 1;
}

.site-header .etebar-product-search button {
	width: 46px;
	min-width: 46px;
	min-height: 44px;
	border: 0;
	border-inline-start: 1px solid rgb(3 19 33 / 14%);
	border-radius: 0;
	padding: 0;
}

.site-header .etebar-product-search button span {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.site-header__actions {
	display: flex;
	grid-area: actions;
	align-items: center;
	justify-content: flex-end;
	gap: 0.55rem;
	direction: ltr;
}

.site-header__utility {
	display: flex;
	align-items: center;
	gap: 0.625rem;
}

.site-header .language-switcher,
.site-header .language-switcher__group {
	display: block;
	order: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.site-header [data-language-dropdown-toggle],
.site-header .header-cart,
.site-header .header-search-toggle,
.site-header .menu-toggle {
	min-height: 44px;
	border: 1px solid rgb(247 242 232 / 22%);
	border-radius: 7px;
	background: transparent;
	color: rgb(247 242 232 / 92%);
}

.site-header [data-language-dropdown-toggle] {
	min-width: 72px;
	justify-content: center;
	gap: 0.38rem;
	padding: 0.45rem 0.62rem;
}

.language-switcher__globe {
	width: 1.05rem;
	height: 1.05rem;
	flex: 0 0 auto;
}

.language-switcher__chevron {
	width: 0.65rem;
	height: 0.45rem;
	flex: 0 0 auto;
	transition: transform 160ms ease;
}

[data-language-dropdown-toggle][aria-expanded="true"] .language-switcher__chevron {
	transform: rotate(180deg);
}

.site-header [data-language-dropdown-toggle] .language-switcher__native {
	font-family: var(--etebar-sans);
	font-size: 0.75rem;
	font-weight: 750;
	line-height: 1;
}

.site-header .header-cart {
	height: 44px;
	min-width: 76px;
	justify-content: center;
	gap: 0.45rem;
	padding: 0.45rem 0.65rem;
	font-family: var(--etebar-sans);
	font-size: 0.8125rem;
	font-weight: 650;
	line-height: 1.2;
	white-space: nowrap;
}

.site-header [data-language-dropdown-toggle]:hover,
.site-header [data-language-dropdown-toggle]:focus-visible,
.site-header [data-language-dropdown-toggle][aria-expanded="true"],
.site-header .header-cart:hover,
.site-header .header-cart:focus-visible,
.site-header .header-search-toggle:hover,
.site-header .header-search-toggle:focus-visible,
.site-header .menu-toggle:hover,
.site-header .menu-toggle:focus-visible {
	border-color: rgb(215 174 95 / 72%);
	color: var(--etebar-paper);
	background: rgb(215 174 95 / 8%);
}

.site-header .header-cart__count {
	top: -0.35rem;
	inset-inline-end: -0.35rem;
	right: auto;
	border-color: #031321;
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
}

.site-header .header-search-toggle,
.site-header .menu-toggle {
	display: none;
}

html[dir="rtl"] .site-header__inner {
	grid-template-columns: max-content minmax(300px, 340px) minmax(1.5rem, 1fr) max-content 154px;
	grid-template-areas: "actions search . nav logo";
}

html[dir="rtl"] .site-header__nav-group,
html[dir="rtl"] .site-header__search-panel {
	direction: rtl;
}

html[dir="rtl"] .site-header__nav-group {
	margin-inline-start: 0;
	margin-inline-end: clamp(1.5rem, 2.5vw, 2.75rem);
}

html[dir="rtl"] .site-header__actions,
html[dir="rtl"] .site-header__utility {
	direction: rtl;
}

html[dir="rtl"] .site-header .language-switcher__menu {
	right: auto;
	left: 0;
	text-align: right;
}

@media (max-width: 1320px) and (min-width: 1181px) {
	.site-header__inner {
		grid-template-columns: 145px max-content minmax(0.75rem, 1fr) minmax(260px, 300px) max-content;
		column-gap: 0.9rem;
	}

	.site-logo--header {
		width: 145px;
	}

	.site-header__nav-group {
		margin-inline-start: 1rem;
	}

	html[dir="rtl"] .site-header__nav-group {
		margin-inline-start: 0;
		margin-inline-end: 1rem;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: max-content minmax(260px, 300px) minmax(0.75rem, 1fr) max-content 145px;
	}

	.site-header .site-nav__list {
		gap: 1.25rem;
	}

	.site-header .site-nav__list a,
	.site-header .site-nav__secondary > a {
		font-size: 0.875rem;
	}
}

@media (max-width: 1180px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		min-height: 68px;
		grid-template-columns: minmax(116px, 132px) minmax(0, 1fr);
		grid-template-areas: "logo actions";
		column-gap: 1rem;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) minmax(116px, 132px);
		grid-template-areas: "actions logo";
	}

	.site-logo--header {
		width: 132px;
	}

	.site-header__nav-group,
	html[dir="rtl"] .site-header__nav-group {
		position: absolute;
		top: 100%;
		inset-inline: 0;
		display: none;
		margin: 0;
		border-bottom: 1px solid rgb(215 174 95 / 22%);
		background: #061d30;
		padding: 0.8rem clamp(1rem, 4vw, 2rem) 1rem;
	}

	.site-header__nav-group.is-open {
		display: block;
	}

	.site-header .site-nav__list {
		align-items: stretch;
		gap: 0;
	}

	.site-header .site-nav__list a,
	.site-header .site-nav__secondary > a {
		width: 100%;
		min-height: 46px;
		font-size: 0.9375rem;
	}

	.site-header .site-nav__list a::after {
		inset-inline-end: auto;
		width: 32px;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden] {
		position: fixed;
		inset: 68px 0 auto;
		display: none;
		width: 100%;
		max-width: none;
		padding: 1rem clamp(1rem, 4vw, 2rem) 1.2rem;
		z-index: 999;
		background: var(--etebar-paper);
	}

	.site-header__search-panel:not([hidden]) {
		display: block;
	}

	.site-header__search-inner {
		position: relative;
		padding-inline-end: 3.25rem;
	}

	.site-header__search-close {
		position: absolute;
		top: 1px;
		inset-inline-end: 0;
		display: inline-flex;
		width: 44px;
		height: 44px;
	}

	.site-header .etebar-product-search__controls {
		border-color: rgb(3 19 33 / 22%);
	}

	.site-header .header-search-toggle,
	.site-header .menu-toggle {
		display: inline-flex;
	}
}

@media (max-width: 700px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		min-height: 64px;
		grid-template-columns: minmax(104px, 116px) minmax(0, 1fr);
		column-gap: 0.5rem;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) minmax(104px, 116px);
	}

	.site-logo--header {
		width: 116px;
	}

	.site-header__actions,
	html[dir="rtl"] .site-header__actions {
		gap: 0.35rem;
	}

	.site-header__utility,
	html[dir="rtl"] .site-header__utility {
		gap: 0.35rem;
	}

	.site-header [data-language-dropdown-toggle] {
		min-width: 54px;
		padding-inline: 0.45rem;
	}

	.site-header .language-switcher__globe {
		display: none;
	}

	.site-header .header-cart {
		min-width: 44px;
		padding-inline: 0.5rem;
	}

	.site-header .header-search-toggle__label,
	.site-header .header-cart > span:not(.header-cart__count) {
		display: none;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden] {
		inset-block-start: 64px;
	}
}

@media (max-width: 430px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		grid-template-columns: 110px minmax(0, 1fr);
		column-gap: 0.35rem;
		padding-inline: 0.75rem;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) 110px;
	}

	.site-logo--header {
		width: 110px;
	}

	.site-header__actions,
	html[dir="rtl"] .site-header__actions,
	.site-header__utility,
	html[dir="rtl"] .site-header__utility {
		gap: 0.25rem;
	}

	.site-header [data-language-dropdown-toggle] {
		min-width: 50px;
	}

	.language-switcher__chevron {
		display: none;
	}
}

/* Header account menu */

.site-header .menu-toggle {
	display: inline-flex;
	flex: 0 0 44px;
	align-items: center;
	justify-content: center;
}

.etebar-account-menu {
	position: absolute;
	inset-block-start: calc(100% + 0.5rem);
	inset-inline: 0;
	z-index: 1100;
	pointer-events: none;
}

.etebar-account-menu[hidden] {
	display: none;
}

.etebar-account-menu__backdrop,
.etebar-account-menu__drawer-header {
	display: none;
}

.etebar-account-menu__panel {
	display: grid;
	width: min(100%, 740px);
	max-height: calc(100vh - 7rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	margin-inline-start: auto;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 38%, var(--etebar-border));
	border-radius: 11px;
	overflow-y: auto;
	background: var(--etebar-paper);
	padding: 0.75rem;
	box-shadow: 0 14px 32px rgb(3 19 33 / 14%);
	pointer-events: auto;
}

.etebar-account-menu__group {
	min-width: 0;
	padding-inline: 0.9rem;
}

.etebar-account-menu__group + .etebar-account-menu__group {
	border-inline-start: 1px solid color-mix(in srgb, var(--etebar-border) 78%, var(--etebar-gold));
}

.etebar-account-menu__group h2 {
	margin: 0 0 0.25rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 0.8125rem;
	font-weight: 700 !important;
	letter-spacing: 0.015em;
	line-height: 1.3;
	text-transform: uppercase;
}

.etebar-account-menu__group ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.etebar-account-menu__group a,
.etebar-account-menu__sign-out {
	display: flex;
	min-height: 40px;
	align-items: center;
	border-radius: 6px;
	padding: 0.45rem 0.55rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

.etebar-account-menu__group a:hover,
.etebar-account-menu__group a:focus-visible,
.etebar-account-menu__sign-out:hover,
.etebar-account-menu__sign-out:focus-visible {
	background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
}

.etebar-account-menu__group a:focus-visible,
.etebar-account-menu__sign-out:focus-visible {
	outline: 2px solid var(--etebar-gold);
	outline-offset: 1px;
}

.etebar-account-menu__utility {
	grid-column: 1 / -1;
	display: flex;
	justify-content: flex-end;
	margin: 0.55rem -0.75rem -0.75rem;
	border-block-start: 1px solid color-mix(in srgb, var(--etebar-border) 82%, var(--etebar-gold));
	background: color-mix(in srgb, var(--etebar-cream) 60%, var(--etebar-paper));
	padding: 0.45rem 0.75rem;
}

.etebar-account-menu__sign-out {
	min-height: 38px;
	color: var(--etebar-gray);
}

html[dir="rtl"] .etebar-account-menu__panel {
	margin-inline-start: 0;
	margin-inline-end: auto;
	direction: rtl;
}

html[dir="rtl"] .etebar-account-menu__group h2 {
	letter-spacing: 0;
}

@media (max-width: 820px) {
	html.etebar-account-menu-is-open,
	body.etebar-account-menu-is-open {
		overscroll-behavior: none;
	}

	html.etebar-account-menu-is-open {
		scroll-behavior: auto;
	}

	body.etebar-mobile-header .etebar-account-menu {
		position: fixed;
		inset-block-start: 89px;
		inset-inline-start: 0;
		inset-inline-end: auto;
		z-index: 2100;
		display: block;
		width: 100vw !important;
		max-width: none !important;
		height: calc(100vh - 89px);
		height: calc(100dvh - 89px);
		margin: 0 !important;
		padding: 0 !important;
		pointer-events: auto;
	}

	body.etebar-mobile-header .etebar-account-menu[hidden] {
		display: none;
	}

	body.etebar-mobile-header .etebar-account-menu__backdrop {
		position: absolute;
		inset: 0;
		display: block;
		background: rgb(3 17 30 / 68%);
		cursor: default;
		touch-action: none;
	}

	body.etebar-mobile-header .etebar-account-menu__panel {
		position: relative;
		z-index: 1;
		display: flex;
		width: min(88vw, 360px);
		height: 100%;
		max-height: none;
		flex-direction: column;
		gap: 0;
		margin: 0 !important;
		border: 0;
		border-inline-end: 1px solid color-mix(in srgb, var(--etebar-gold) 32%, var(--etebar-border));
		border-radius: 0;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		background: var(--etebar-paper);
		padding: 0 1.25rem calc(1.25rem + env(safe-area-inset-bottom, 0px));
		box-shadow: 16px 0 38px rgb(3 17 30 / 22%);
		touch-action: pan-y;
	}

	html[dir="rtl"] body.etebar-mobile-header .etebar-account-menu__panel {
		box-shadow: -16px 0 38px rgb(3 17 30 / 22%);
	}

	body.etebar-mobile-header .etebar-account-menu__drawer-header {
		position: sticky;
		top: 0;
		z-index: 2;
		display: flex;
		min-height: 68px;
		align-items: center;
		justify-content: space-between;
		gap: 1rem;
		margin-inline: -1.25rem;
		border-block-end: 1px solid color-mix(in srgb, var(--etebar-border) 88%, var(--etebar-gold));
		background: var(--etebar-paper);
		padding-inline: 1.25rem 0.75rem;
	}

	body.etebar-mobile-header .etebar-account-menu__drawer-header p {
		margin: 0;
		color: var(--etebar-navy);
		font-family: var(--etebar-sans);
		font-size: 0.8125rem;
		font-weight: 750;
		letter-spacing: 0.09em;
		line-height: 1;
		text-transform: uppercase;
	}

	html[dir="rtl"] body.etebar-mobile-header .etebar-account-menu__drawer-header p {
		letter-spacing: 0;
	}

	body.etebar-mobile-header .etebar-account-menu__close {
		display: grid;
		width: 44px;
		height: 44px;
		min-width: 44px;
		min-height: 44px;
		place-items: center;
		border: 0;
		border-radius: 10px;
		background: transparent;
		color: var(--etebar-navy);
		cursor: pointer;
	}

	body.etebar-mobile-header .etebar-account-menu__close:hover,
	body.etebar-mobile-header .etebar-account-menu__close:focus-visible {
		background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
	}

	body.etebar-mobile-header .etebar-account-menu__close:focus-visible {
		outline: 3px solid var(--etebar-gold);
		outline-offset: -3px;
	}

	body.etebar-mobile-header .etebar-account-menu__close svg {
		width: 24px;
		height: 24px;
	}

	body.etebar-mobile-header .etebar-account-menu__group {
		min-width: 0;
		padding: 1rem 0 0;
	}

	body.etebar-mobile-header .etebar-account-menu__group + .etebar-account-menu__group {
		margin-top: 0.35rem;
		border-block-start: 1px solid color-mix(in srgb, var(--etebar-border) 80%, transparent);
		border-inline-start: 0;
		padding-block-start: 1rem;
	}

	body.etebar-mobile-header .etebar-account-menu__group h2 {
		margin: 0 0 0.2rem;
		color: #77623b;
		font-size: 0.78125rem;
		font-weight: 750 !important;
		letter-spacing: 0.075em;
		line-height: 1.35;
	}

	html[dir="rtl"] body.etebar-mobile-header .etebar-account-menu__group h2 {
		letter-spacing: 0;
	}

	body.etebar-mobile-header .etebar-account-menu__group li + li {
		border-block-start: 1px solid color-mix(in srgb, var(--etebar-border) 58%, transparent);
	}

	body.etebar-mobile-header .etebar-account-menu__group a,
	body.etebar-mobile-header .etebar-account-menu__sign-out {
		min-block-size: 54px !important;
		border-radius: 0;
		padding: 0.75rem 0.5rem;
		font-size: 1.0625rem;
		font-weight: 600;
		line-height: 1.4;
	}

	body.etebar-mobile-header .etebar-account-menu__utility {
		grid-column: auto;
		justify-content: flex-start;
		margin: 1rem 0 0;
		border-block-start: 1px solid color-mix(in srgb, var(--etebar-border) 82%, var(--etebar-gold));
		background: transparent;
		padding: 0.45rem 0;
	}
}

/* Homepage polish: denser commerce hierarchy without changing the header or hero visual system. */

.home #how-it-works,
.home #categories,
.home #shop-essentials,
.home #special-request,
.home #faq {
	scroll-margin-top: 92px;
}

.home .site-main > .section:not(.homepage-process) .section-heading h2 {
	font-size: clamp(2.375rem, 3vw, 2.8rem);
	line-height: 1.08;
}

.home .site-main > .section .section-heading > p:last-child {
	max-width: 62ch;
	font-size: 1rem;
	line-height: 1.65;
}

.home .homepage-section-heading-row {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.5rem;
	margin-bottom: 1.5rem;
}

.home .homepage-section-heading-row .section-heading {
	margin: 0;
}

.home .homepage-section-heading-row > .text-link {
	display: inline-flex;
	min-height: 44px;
	flex: 0 0 auto;
	align-items: center;
}

.home .homepage-process {
	padding-block: clamp(3.25rem, 4.5vw, 4.25rem);
}

.home .homepage-process__heading {
	display: block;
	max-width: 900px;
	margin: 0 auto 1.5rem;
	text-align: center;
}

.home .homepage-process__heading .eyebrow {
	margin-bottom: 0.45rem;
}

.home .homepage-process__heading h2 {
	margin-bottom: 0.55rem;
	font-size: clamp(2.05rem, 2.5vw, 2.3rem);
	line-height: 1.1;
}

.home .homepage-process__heading > p:last-child {
	max-width: 64ch;
	margin-inline: auto;
	font-size: 1rem;
	line-height: 1.6;
}

.home .homepage-process .process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even),
.home .homepage-process .process-list li:nth-child(-n + 2) {
	display: flex;
	min-height: 188px;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.9rem;
	border-color: color-mix(in srgb, var(--etebar-border) 72%, transparent);
	padding: 1.25rem 1.15rem;
}

.home .homepage-process .process-list h3 {
	margin-bottom: 0.4rem;
	font-size: 1.15rem;
	line-height: 1.25;
}

.home .homepage-process .process-list p {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.55;
}

.home .homepage-process__step-mark {
	gap: 0.65rem;
}

.home .homepage-process__step-mark > span {
	width: 30px;
	height: 30px;
	flex-basis: 30px;
}

.home .homepage-process__request {
	display: grid;
	min-height: 0;
	grid-template-columns: minmax(210px, 0.8fr) minmax(0, 1.7fr) auto;
	grid-template-rows: auto;
	gap: 1rem;
	align-items: center;
	border: 1px solid color-mix(in srgb, var(--etebar-green) 18%, var(--etebar-border));
	border-top: 0;
	background: color-mix(in srgb, var(--etebar-green) 5%, var(--etebar-paper));
	padding: 1rem 1.15rem;
}

.home .homepage-process__request h3,
.home .homepage-process__request p,
.home .homepage-process__request-link {
	grid-column: auto;
	grid-row: auto;
	margin: 0;
}

.home .homepage-process__request h3 {
	font-size: 1rem;
	line-height: 1.3;
}

.home .homepage-process__request p {
	font-size: 0.875rem;
	line-height: 1.5;
}

.home .homepage-process__request-link {
	min-height: 44px;
	align-items: center;
	white-space: nowrap;
}

.home #categories {
	padding-block: clamp(3.25rem, 4.5vw, 4rem);
}

.home .commerce-category-nav--home {
	margin: 0;
	overflow: visible;
}

.home .commerce-category-nav--home ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.home .commerce-category-nav--home li {
	min-width: 0;
}

.home .commerce-category-nav--home a {
	min-height: 88px;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.2rem;
	align-content: center;
	padding: 1rem 1.15rem;
}

.home .commerce-category-nav--home a:has(.commerce-category-nav__visual) {
	grid-template-columns: 58px minmax(0, 1fr);
}

.home .commerce-category-nav--home strong {
	font-size: clamp(1rem, 1.35vw, 1.15rem);
}

.home .commerce-category-nav--home small {
	color: var(--etebar-gray);
	font-size: 0.8125rem;
	font-weight: 650;
}

.home .home-products {
	background: var(--etebar-paper);
	padding-block: clamp(3.75rem, 5vw, 4.75rem);
}

.home .home-products.woocommerce ul.products.home-products__grid,
.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(0.85rem, 1.5vw, 1.25rem) !important;
	margin: 0 !important;
}

.home .home-products__grid .etebar-shop-card {
	min-width: 0;
	height: 100%;
}

.home .home-products__grid .etebar-shop-card__image img,
.home .home-products__grid .etebar-shop-card__image--placeholder img {
	aspect-ratio: 4 / 3;
	padding: clamp(0.7rem, 1.5vw, 1rem);
}

.home .home-products__grid .etebar-shop-card__body {
	padding: 0.9rem 0.9rem 0;
}

.home .home-products__grid .etebar-shop-card__footer {
	padding: 0 0.9rem 0.9rem;
}

.home .home-products.woocommerce ul.products.home-products__grid .add_to_cart_button,
.home .home-products.woocommerce ul.products.home-products__grid .etebar-shop-card__action {
	border-color: var(--etebar-gold);
	background: var(--etebar-gold) !important;
	color: var(--etebar-navy-dark) !important;
}

.home #special-request {
	background: var(--etebar-ivory);
	padding-block: clamp(3rem, 4vw, 3.75rem);
}

.home .homepage-special-callout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(2rem, 5vw, 5rem);
	align-items: center;
}

.home .homepage-special-callout .section-heading {
	margin-bottom: 0.65rem;
}

.home .homepage-special-callout__note {
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.875rem;
	line-height: 1.5;
}

.home .homepage-special-callout > .button {
	min-height: 46px;
	border: 1px solid var(--etebar-navy);
	background: transparent;
	color: var(--etebar-navy);
}

.home .homepage-special-callout > .button:hover,
.home .homepage-special-callout > .button:focus-visible {
	background: var(--etebar-navy);
	color: var(--etebar-paper);
}

.home #delivery-proof {
	background: var(--etebar-paper);
	padding-block: clamp(3.25rem, 4.5vw, 4rem);
}

.home .home-trust__grid {
	grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
	gap: clamp(1.5rem, 3vw, 2.75rem);
	align-items: end;
}

.home .home-trust__proof .proof-steps {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
	margin: 1.25rem 0 1rem;
}

.home .home-trust__proof .proof-steps li {
	min-height: 88px;
	border: 1px solid var(--etebar-border);
	padding: 1rem;
	font-size: 0.9375rem;
	line-height: 1.5;
}

.home .home-trust__support {
	border: 1px solid var(--etebar-border);
	border-inline-start: 2px solid var(--etebar-gold);
	border-top-width: 1px;
	border-radius: 6px;
	background: color-mix(in srgb, var(--etebar-muted) 50%, var(--etebar-paper));
	color: var(--etebar-charcoal);
	padding: 1.25rem;
	box-shadow: none;
}

.home .home-trust__support h3 {
	margin-bottom: 0.55rem;
	color: var(--etebar-navy);
	font-size: 1.3rem;
	line-height: 1.25;
}

.home .home-trust__support > p {
	margin-bottom: 0.6rem;
	color: var(--etebar-gray);
	font-size: 0.875rem;
	line-height: 1.55;
}

.home .faq-preview {
	padding-block: clamp(3rem, 4vw, 3.75rem);
}

.home .faq-preview .homepage-section-heading-row {
	margin-bottom: 1rem;
}

.home .faq-preview .accordion {
	margin-top: 0;
}

.home .faq-preview .accordion__trigger {
	min-height: 48px;
	padding-block: 0.55rem;
}

.home .site-footer__grid {
	gap: clamp(1.5rem, 2.5vw, 2.5rem);
	padding-block: 2rem 1.6rem;
}

.home .site-footer__grid > div:last-child > p {
	display: none;
}

.home .site-footer__legal {
	padding-block: 0.75rem;
}

html[dir="rtl"] .home .site-main > .section h2,
html[dir="rtl"] .home .site-main > .section h3,
html[dir="rtl"] .home .site-main > .section p,
html[dir="rtl"] .home .commerce-category-nav--home a {
	letter-spacing: 0;
}

html[dir="rtl"] .home .site-main > .section .section-heading h2 {
	line-height: 1.25;
}

@media (max-width: 1024px) {
	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.home .home-trust__grid {
		grid-template-columns: minmax(0, 1.2fr) minmax(250px, 0.8fr);
	}
}

@media (max-width: 900px) {
	.home .homepage-process .process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		min-height: 178px;
	}

	.home .homepage-process__request {
		grid-template-columns: minmax(190px, 0.75fr) minmax(0, 1.25fr) auto;
	}
}

@media (max-width: 768px) {
	.home .site-main > .section:not(.homepage-process) .section-heading h2 {
		font-size: clamp(1.9rem, 6vw, 2.3rem);
	}

	.home .homepage-section-heading-row {
		align-items: center;
	}

	.home .homepage-process,
	.home #categories,
	.home .home-products,
	.home #special-request,
	.home #delivery-proof,
	.home .faq-preview {
		padding-block: 3rem;
	}

	.home .homepage-process__request {
		grid-template-columns: minmax(170px, 0.75fr) minmax(0, 1.25fr);
		gap: 0.45rem 1rem;
	}

	.home .homepage-process__request-link {
		grid-column: 1 / -1;
		justify-self: start;
	}

	.home .home-trust__grid {
		grid-template-columns: 1fr;
	}

	.home .home-trust__support {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.35rem 1rem;
		align-items: center;
	}

	.home .home-trust__support h3,
	.home .home-trust__support p {
		grid-column: 1;
	}

	.home .home-trust__support .text-link {
		grid-column: 2;
		grid-row: 1 / span 2;
	}

	.home .site-footer__grid {
		padding-block: 1.75rem 1.4rem;
	}
}

@media (max-width: 560px) {
	.home .homepage-section-heading-row {
		display: block;
		margin-bottom: 1.15rem;
	}

	.home .homepage-section-heading-row > .text-link {
		margin-top: 0.45rem;
	}

	.home .homepage-process__heading {
		text-align: start;
	}

	.home .homepage-process__heading > p:last-child {
		margin-inline: 0;
	}

	.home .homepage-process .process-list {
		grid-template-columns: 1fr;
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		min-height: 0;
		flex-direction: row;
		padding: 1rem;
	}

	.home .homepage-process__request {
		display: block;
		padding: 1rem;
	}

	.home .homepage-process__request p,
	.home .homepage-process__request-link {
		margin-top: 0.45rem;
	}

	.home .commerce-category-nav--home {
		overflow-x: auto;
		scroll-padding-inline: 0.25rem;
		scroll-snap-type: x proximity;
	}

	.home .commerce-category-nav--home ul {
		display: flex;
		width: max-content;
	}

	.home .commerce-category-nav--home li {
		width: min(72vw, 270px);
		flex: 0 0 min(72vw, 270px);
		scroll-snap-align: start;
	}

	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 0.65rem !important;
	}

	.home .home-products__grid .etebar-shop-card__type {
		display: none;
	}

	.home .home-products__grid .woocommerce-loop-product__title {
		font-size: 1rem !important;
	}

	.home .home-products__grid .etebar-shop-card__details {
		display: none;
	}

	.home .home-products__grid .etebar-shop-card__body,
	.home .home-products__grid .etebar-shop-card__footer {
		padding-inline: 0.7rem;
	}

	.home .homepage-special-callout {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.home .homepage-special-callout > .button {
		justify-self: start;
	}

	.home .home-trust__proof .proof-steps {
		grid-template-columns: 1fr;
	}

	.home .home-trust__proof .proof-steps li {
		min-height: 0;
	}

	.home .home-trust__support {
		display: block;
	}

	.home .home-trust__support .text-link {
		display: inline-flex;
		min-height: 44px;
		align-items: center;
	}

	.home .faq-preview .accordion__trigger {
		font-size: 0.9rem;
	}

	.home #categories,
	.home .faq-preview {
		padding-block: 2.25rem;
	}

	.home .site-footer__grid {
		gap: 1.1rem;
		padding-block: 1.5rem 1.15rem;
	}

	.home .site-footer__brand p {
		margin-bottom: 0;
	}

	.home .footer-menu {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
	}

	.home .footer-menu a,
	.home .site-footer__actions a {
		display: inline-flex;
		min-height: 44px;
		align-items: center;
	}

	.home .site-footer__legal {
		gap: 0.3rem;
		padding-block: 0.65rem;
	}
}

/* Final homepage rhythm tuning: recover page length while keeping the new commerce content readable. */

.home .homepage-process {
	padding-block: 2.75rem;
}

.home .homepage-process__heading {
	margin-bottom: 1rem;
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even),
.home .homepage-process .process-list li:nth-child(-n + 2) {
	min-height: 160px;
	padding: 1rem;
}

.home .homepage-process__request {
	padding-block: 0.7rem;
}

.home #categories {
	padding-block: 2.75rem;
}

.home #categories .homepage-section-heading-row {
	margin-bottom: 1rem;
}

.home .home-products {
	padding-block: 2rem;
}

.home .home-products .homepage-section-heading-row {
	margin-bottom: 1rem;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product .etebar-shop-card__image img,
.home .home-products.woocommerce ul.products.home-products__grid li.product .etebar-shop-card__image--placeholder img {
	width: 100%;
	height: 140px !important;
	aspect-ratio: auto !important;
	object-fit: contain;
}

.home .home-products__grid .etebar-shop-card__body {
	padding-top: 0.7rem;
}

.home .home-products__grid .etebar-shop-card__type {
	margin-bottom: 0.25rem;
}

.home .home-products__grid .woocommerce-loop-product__title {
	margin-bottom: 0.35rem !important;
}

.home .home-products__grid .price {
	margin-block: 0.1rem 0.55rem !important;
}

.home #special-request,
.home #delivery-proof {
	padding-block: 2.75rem;
}

.home .faq-preview {
	padding-block: 2.5rem;
}

.home .site-footer__grid {
	padding-block: 1.4rem 1.1rem;
}

.home .site-footer__legal {
	padding-block: 0.55rem;
}

@media (max-width: 768px) {
	.home .homepage-process,
	.home #categories,
	.home .home-products,
	.home #special-request,
	.home #delivery-proof,
	.home .faq-preview {
		padding-block: 2.25rem;
	}

	.home .site-footer__grid {
		padding-block: 1.25rem 0.95rem;
	}
}

@media (min-width: 561px) and (max-width: 1024px) {
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card {
		display: grid !important;
		min-height: 150px;
		grid-template-columns: minmax(130px, 42%) minmax(0, 1fr);
		grid-template-rows: minmax(0, 1fr) auto;
	}

	.home .home-products__grid .etebar-shop-card__image {
		height: 100%;
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product .etebar-shop-card__image img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product .etebar-shop-card__image--placeholder img {
		height: 100% !important;
		min-height: 150px;
		padding: 0.65rem;
	}

	.home .home-products__grid .etebar-shop-card__body {
		grid-column: 2;
		grid-row: 1;
		padding: 0.8rem 0.8rem 0;
	}

	.home .home-products__grid .etebar-shop-card__footer {
		grid-column: 2;
		grid-row: 2;
		padding: 0 0.8rem 0.8rem;
	}

	.home .home-products__grid .etebar-shop-card__details {
		display: none;
	}
}

@media (min-width: 700px) and (max-width: 900px) {
	.home .homepage-process__request {
		grid-template-columns: minmax(180px, 0.75fr) minmax(0, 1.25fr) auto;
	}

	.home .homepage-process__request-link {
		grid-column: 3;
		justify-self: end;
	}
}

@media (max-width: 560px) {
	.home .homepage-process,
	.home .home-products,
	.home #special-request,
	.home #delivery-proof {
		padding-block: 2rem;
	}

	.home #categories,
	.home .faq-preview {
		padding-block: 1.75rem;
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		min-height: 0;
		padding: 0.8rem;
	}

	.home .homepage-process .process-list h3 {
		font-size: 1rem;
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product .etebar-shop-card__image img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product .etebar-shop-card__image--placeholder img {
		height: clamp(112px, 29vw, 145px);
		padding: 0.55rem;
	}

	.home .home-products__grid .etebar-shop-card__body {
		padding-top: 0.55rem;
	}

	.home .home-products__grid .etebar-shop-card__footer {
		padding-bottom: 0.65rem;
	}

	.home .site-footer__grid {
		padding-block: 1rem 0.75rem;
	}
}

/* Final homepage refinement: a shorter path from orientation to real products. */

.home .site-main .eyebrow {
	font-size: 0.78rem;
	letter-spacing: 0.075em;
}

.home .homepage-process,
.home .home-products,
.home #special-request,
.home #delivery-proof,
.home .faq-preview {
	scroll-margin-top: 92px;
}

.home .homepage-process {
	padding-block: clamp(2.75rem, 4vw, 3.75rem);
}

.home #how-it-works .homepage-process__heading {
	display: block;
	max-width: 48rem;
	margin: 0 auto 1.75rem;
	text-align: center;
}

.home #how-it-works .homepage-process__heading > p:last-child {
	margin-inline: auto;
	font-size: 1rem;
	line-height: 1.65;
}

.home .homepage-process .process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1.25rem, 2.4vw, 2.5rem);
	border: 0;
	background: transparent;
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even),
.home .homepage-process .process-list li:nth-child(-n + 2) {
	position: relative;
	display: block;
	min-height: 0;
	border: 0;
	background: transparent;
	padding: 0;
}

.home .homepage-process .process-list li:not(:last-child)::after {
	top: 15px;
	inset-inline: calc(-1 * clamp(1.25rem, 2.4vw, 2.5rem) + 0.45rem);
	display: block;
	width: calc(clamp(1.25rem, 2.4vw, 2.5rem) - 0.9rem);
	border-color: color-mix(in srgb, var(--etebar-gold) 42%, transparent);
}

.home .homepage-process__step-mark {
	margin-bottom: 1rem;
}

.home .homepage-process .process-list h3 {
	margin-bottom: 0.45rem;
	font-size: clamp(1.08rem, 1.45vw, 1.28rem);
}

.home .homepage-process .process-list p {
	font-size: 0.96rem;
	line-height: 1.58;
}

.home .homepage-process__request {
	display: block;
	min-height: 0;
	margin-top: 1.5rem;
	border: 0;
	border-top: 1px solid color-mix(in srgb, var(--etebar-gold) 38%, var(--etebar-border));
	background: transparent;
	padding: 1rem 0 0;
}

.home .homepage-process__request p {
	margin: 0;
	font-size: 0.94rem;
	line-height: 1.55;
}

.home .homepage-process__request p > span {
	font-weight: 600;
}

.home .homepage-process__request-link {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	margin-inline-start: 0.35rem;
}

.home .home-products {
	background: var(--etebar-paper);
	padding-block: clamp(2.75rem, 4vw, 3.75rem);
}

.home .home-product-categories {
	margin-bottom: 1.4rem;
	scroll-margin-top: 92px;
}

.home .commerce-category-nav--home {
	border: 0;
	background: transparent;
	padding: 0;
	overflow: visible;
}

.home .commerce-category-nav--home ul {
	display: grid;
	width: auto;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.home .commerce-category-nav--home li {
	width: auto;
	min-width: 0;
	flex: none;
}

.home .commerce-category-nav--home a,
.home .commerce-category-nav--home a:has(.commerce-category-nav__visual) {
	min-height: 72px;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.75rem;
	align-items: center;
	padding: 0.85rem 1rem;
}

.home .commerce-category-nav--home strong {
	font-size: clamp(0.94rem, 1.2vw, 1.08rem);
}

.home .commerce-category-nav--home small {
	white-space: nowrap;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home {
	display: flex !important;
	min-height: 0;
	border: 1px solid color-mix(in srgb, var(--etebar-border) 82%, transparent);
	background: var(--etebar-paper);
	box-shadow: none;
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image {
	margin: 0;
	border: 0;
	border-bottom: 1px solid color-mix(in srgb, var(--etebar-border) 70%, transparent);
	background: color-mix(in srgb, var(--etebar-muted) 66%, var(--etebar-paper));
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image::before {
	display: none;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image--placeholder img {
	width: 100%;
	height: 190px !important;
	min-height: 0;
	aspect-ratio: auto !important;
	object-fit: contain;
	padding: 0.6rem;
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image-label {
	display: none;
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
	padding: 1rem 1rem 0;
}

.home .home-products__grid .etebar-shop-card--home .woocommerce-loop-product__title {
	margin-bottom: 0.45rem !important;
	font-size: 1.06rem !important;
	line-height: 1.35;
}

.home .home-products__grid .etebar-shop-card--home .price {
	margin-block: 0.2rem 0.75rem !important;
	font-size: 1.05rem;
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
	width: 100%;
	margin-top: auto;
	padding: 0 1rem 1rem;
}

.home .home-products__grid .etebar-shop-card--home .add_to_cart_button,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__action {
	width: 100%;
	min-height: 44px;
	justify-content: center;
}

.home #special-request {
	padding-block: clamp(2.25rem, 3.5vw, 3rem);
}

.home .homepage-special-callout {
	width: calc(100% - 2rem);
	max-width: 61rem;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(1.5rem, 3vw, 2.75rem);
	margin-inline: auto;
}

.home #delivery-proof {
	padding-block: clamp(2.25rem, 3.5vw, 3rem);
}

.home .home-trust__grid {
	display: block;
	width: min(100%, 58rem);
}

.home .home-trust__proof .section-heading {
	margin-bottom: 0.7rem;
}

.home .home-trust__proof .section-heading p:last-child {
	max-width: 62ch;
}

.home .home-trust__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 1.5rem;
}

.home .home-trust__links .text-link {
	min-height: 44px;
	align-items: center;
}

.home .faq-preview {
	padding-block: clamp(2.25rem, 3.5vw, 3rem);
}

html[dir="rtl"] .home .site-main .eyebrow,
html[dir="rtl"] .home .homepage-process,
html[dir="rtl"] .home .home-products,
html[dir="rtl"] .home #special-request,
html[dir="rtl"] .home #delivery-proof,
html[dir="rtl"] .home .faq-preview {
	letter-spacing: 0;
}

html[dir="rtl"] .home .homepage-process__heading > p:last-child,
html[dir="rtl"] .home .homepage-process .process-list p,
html[dir="rtl"] .home .homepage-process__request p {
	line-height: 1.85;
}

@media (max-width: 900px) {
	.home .homepage-process .process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem 2rem;
	}

	.home .homepage-process .process-list li:not(:last-child)::after {
		display: none;
	}
}

@media (max-width: 820px) {
	.home .hero {
		min-height: 0;
	}

	.home .hero::before,
	html[data-etebar-language^="fa"] .home .hero::before,
	html[data-etebar-language^="ps"] .home .hero::before {
		background: linear-gradient(180deg, #061d30 0%, #061d30 58%, rgb(6 29 48 / 58%) 74%, rgb(6 29 48 / 10%) 100%);
	}

	.home .hero__layout,
	html[dir="rtl"] .home .hero__layout,
	html[data-etebar-language^="fa"] .home .hero__layout,
	html[data-etebar-language^="ps"] .home .hero__layout {
		display: grid;
		min-height: 0;
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto clamp(240px, 34vw, 285px);
		gap: 0;
		padding-top: clamp(1.75rem, 4vw, 2.25rem);
		padding-bottom: 0;
		direction: ltr;
	}

	.home .hero__content,
	html[dir="rtl"] .home .hero__content {
		position: relative;
		width: 100%;
		max-width: 44rem;
		grid-column: 1;
		grid-row: 1;
		align-self: start;
		justify-self: start;
		padding-bottom: clamp(1rem, 3vw, 1.4rem);
	}

	html[dir="rtl"] .home .hero__content {
		justify-self: end;
		direction: rtl;
		text-align: right;
	}

	.home .hero h1,
	html[dir="rtl"] .home .hero h1 {
		max-width: 17ch;
		font-size: clamp(2.5rem, 5.4vw, 2.75rem);
		line-height: 1.1;
	}

	html[dir="rtl"] .home .hero h1 {
		margin-inline: auto 0;
		line-height: 1.24;
	}

	.home .hero__lead,
	html[dir="rtl"] .home .hero__lead {
		max-width: 42rem;
		font-size: clamp(1rem, 2.1vw, 1.0625rem);
		line-height: 1.65;
	}

	html[dir="rtl"] .home .hero__lead {
		margin-inline: auto 0;
		line-height: 1.85;
	}

	.home .hero__visual,
	html[dir="rtl"] .home .hero__visual {
		position: relative;
		inset: auto;
		display: block;
		width: 100vw;
		height: clamp(240px, 34vw, 285px);
		min-height: 0;
		grid-column: 1;
		grid-row: 2;
		margin-inline: calc(50% - 50vw);
		overflow: hidden;
	}

	.home .hero .hero-editorial,
	html[dir="rtl"] .home .hero .hero-editorial {
		position: absolute;
		inset: 0;
		overflow: hidden;
	}

	.home .hero .hero-editorial img,
	html[data-etebar-language^="fa"] .home .hero .hero-editorial__image--rtl,
	html[data-etebar-language^="ps"] .home .hero .hero-editorial__image--rtl {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		max-width: none;
		object-fit: contain;
		object-position: center bottom;
		-webkit-mask-image: none;
		mask-image: none;
	}
}

@media (max-width: 560px) {
	.home .homepage-process,
	.home .home-products,
	.home #special-request,
	.home #delivery-proof,
	.home .faq-preview {
		padding-block: 2.25rem;
	}

	.home .homepage-process .process-list {
		grid-template-columns: 1fr;
		gap: 1.1rem;
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr);
		gap: 0 0.85rem;
		align-items: start;
		padding: 0;
	}

	.home .homepage-process__step-mark {
		grid-column: 1;
		grid-row: 1 / span 2;
		margin: 0;
	}

	.home .homepage-process .process-list li > div:last-child {
		grid-column: 2;
	}

	.home .homepage-process .process-list p {
		font-size: 0.94rem;
	}

	.home .homepage-process__request {
		margin-top: 1.25rem;
		padding: 0.85rem 0 0;
	}

	.home .homepage-process__request-link {
		margin-inline-start: 0;
	}

	.home .commerce-category-nav--home ul {
		display: grid;
		width: auto;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.55rem;
	}

	.home .commerce-category-nav--home li {
		width: auto;
		min-width: 0;
	}

	.home .commerce-category-nav--home a,
	.home .commerce-category-nav--home a:has(.commerce-category-nav__visual) {
		min-height: 86px;
		grid-template-columns: 1fr;
		gap: 0.2rem;
		padding: 0.75rem;
	}

	.home .commerce-category-nav--home strong {
		font-size: 0.9rem;
		line-height: 1.3;
	}

	.home .commerce-category-nav--home small {
		display: block;
		font-size: 0.75rem;
		white-space: normal;
	}

	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 0.8rem !important;
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home {
		display: grid !important;
		min-height: 152px;
		grid-template-columns: 118px minmax(0, 1fr);
		grid-template-rows: minmax(0, 1fr) auto;
	}

	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image {
		height: 100%;
		grid-column: 1;
		grid-row: 1 / span 2;
		border-inline-end: 1px solid color-mix(in srgb, var(--etebar-border) 70%, transparent);
		border-bottom: 0;
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image--placeholder img {
		height: 100% !important;
		min-height: 152px;
		padding: 0.45rem;
	}

	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
		grid-column: 2;
		grid-row: 1;
		padding: 0.85rem 0.85rem 0;
	}

	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
		grid-column: 2;
		grid-row: 2;
		padding: 0 0.85rem 0.85rem;
	}

	.home .home-products__grid .etebar-shop-card--home .woocommerce-loop-product__title {
		font-size: 1rem !important;
	}

	.home .homepage-special-callout {
		width: min(var(--container), calc(100% - 2rem));
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.home .homepage-special-callout > .button {
		width: 100%;
		justify-content: center;
	}

	.home .home-trust__links {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0;
	}

	.home .site-footer__brand p,
	.home .site-footer__grid > div:last-child p,
	.home .footer-menu a,
	.home .site-footer__actions a,
	.home .site-footer__legal {
		font-size: 0.875rem;
		line-height: 1.65;
	}

	.home .site-footer__brand p,
	.home .site-footer__legal {
		color: rgb(247 242 232 / 78%);
	}
}

@media (max-width: 1180px) {
	.site-header__search-close {
		display: inline-grid;
		width: 44px;
		height: 44px;
		place-items: center;
		border: 1px solid color-mix(in srgb, var(--etebar-gold) 46%, var(--etebar-navy));
		border-radius: 6px;
		background: var(--etebar-navy);
		color: var(--etebar-paper);
		font-size: 1.45rem;
		line-height: 1;
	}

	.site-header__search-close:hover,
	.site-header__search-close:focus-visible {
		border-color: var(--etebar-gold);
		background: var(--etebar-navy-dark);
		color: var(--etebar-gold);
	}
}

/* Final homepage micro-polish: compact orientation, commerce and language choice. */

.home #how-it-works {
	padding-block: 2.125rem 2.5rem;
}

.home #how-it-works .homepage-process__heading {
	margin-bottom: 1.25rem;
}

.home #how-it-works .process-list {
	gap: clamp(1rem, 2vw, 2rem);
}

.home #how-it-works .homepage-process__step-mark {
	margin-bottom: 0.75rem;
}

.home #how-it-works .process-list h3 {
	margin-bottom: 0.35rem;
}

.home #how-it-works .homepage-process__request {
	margin-top: 1.1rem;
	padding-top: 0.7rem;
}

.home .home-product-categories {
	margin-bottom: 1.15rem;
	background: transparent;
	padding: 0;
}

.home #shop-essentials #categories {
	background: transparent;
	padding-block: 0;
}

.home .commerce-category-nav--home a,
.home .commerce-category-nav--home a:has(.commerce-category-nav__visual) {
	min-height: 62px;
	padding: 0.65rem 0.85rem;
	border-color: color-mix(in srgb, var(--etebar-border) 76%, transparent);
	background: color-mix(in srgb, var(--etebar-paper) 88%, white);
}

.home .commerce-category-nav--home small {
	border-radius: 999px;
	background: color-mix(in srgb, var(--etebar-gold) 14%, var(--etebar-paper));
	padding: 0.2rem 0.5rem;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home {
	border-color: color-mix(in srgb, var(--etebar-border) 68%, transparent);
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image--placeholder img {
	height: 210px !important;
	padding: 0.45rem;
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
	padding: 0.85rem 0.9rem 0;
}

.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
	padding: 0 0.9rem 0.9rem;
}

.home .home-products__grid .etebar-shop-card--home .woocommerce-loop-product__title {
	margin-bottom: 0.3rem !important;
}

.home .home-products__grid .etebar-shop-card--home .price {
	margin-block: 0.1rem 0.65rem !important;
}

.home #special-request.homepage-secondary {
	padding-block: clamp(2.4rem, 3.5vw, 3.25rem);
}

.home .homepage-secondary__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(2rem, 5vw, 4.5rem);
	align-items: start;
}

.home .homepage-secondary__request,
.home .homepage-secondary__proof {
	min-width: 0;
}

.home .homepage-secondary__proof {
	border-inline-start: 1px solid color-mix(in srgb, var(--etebar-gold) 38%, var(--etebar-border));
	padding-inline-start: clamp(2rem, 4vw, 3.5rem);
	scroll-margin-top: 92px;
}

.home #special-request #delivery-proof {
	background: transparent;
	padding-block: 0;
}

.home .homepage-secondary .section-heading {
	margin-bottom: 0.65rem;
}

.home .homepage-secondary .section-heading h2 {
	font-size: clamp(1.8rem, 2.7vw, 2.45rem);
}

.home .homepage-secondary .section-heading p:last-child,
.home .homepage-special-callout__note {
	max-width: 58ch;
	font-size: 0.95rem;
	line-height: 1.6;
}

.home .homepage-secondary__request .button {
	min-height: 44px;
	margin-top: 0.7rem;
}

.home .homepage-secondary .home-trust__links {
	margin-top: 0.45rem;
}

.language-modal {
	padding: max(1rem, env(safe-area-inset-top)) 1rem calc(max(1rem, env(safe-area-inset-bottom)) + 4vh);
}

.language-modal__backdrop {
	background: rgb(3 19 33 / 64%);
	backdrop-filter: none;
	opacity: 0;
	transition: opacity 190ms ease-out;
}

.language-modal__panel {
	width: min(100%, 600px);
	max-height: calc(100dvh - 2rem);
	overflow-x: hidden;
	overflow-y: auto;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 48%, var(--etebar-navy));
	border-radius: 8px;
	background: var(--etebar-paper);
	padding: 2.25rem;
	box-shadow: 0 18px 48px rgb(3 19 33 / 15%);
	opacity: 0;
	text-align: start;
	transform: translateY(10px);
	transition: opacity 190ms ease-out, transform 190ms ease-out;
}

.language-modal.is-open .language-modal__backdrop,
.language-modal.is-open .language-modal__panel {
	opacity: 1;
}

.language-modal.is-open .language-modal__panel {
	transform: translateY(0);
}

.language-modal__panel:focus-visible,
.language-modal h2:focus-visible {
	outline: none;
}

.language-modal__close {
	top: 1.4rem;
	right: 1.4rem;
	display: inline-grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-color: color-mix(in srgb, var(--etebar-border) 85%, var(--etebar-navy));
	background: color-mix(in srgb, var(--etebar-paper) 92%, white);
	transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.language-modal__close svg {
	width: 20px;
	height: 20px;
}

.language-modal__close:hover {
	border-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 8%, var(--etebar-paper));
}

html[dir="rtl"] .language-modal__close {
	right: auto;
	left: 1.4rem;
}

.language-modal__close[hidden],
.language-modal__backdrop[hidden] {
	display: none;
}

.language-modal .eyebrow {
	margin-bottom: 0.55rem;
	color: var(--etebar-navy);
	font-size: 0.78rem;
	font-weight: 750;
	letter-spacing: 0.045em;
	line-height: 1.3;
}

html[dir="rtl"] .language-modal .eyebrow {
	letter-spacing: 0;
}

.language-modal h2 {
	max-width: calc(100% - 3.75rem);
	margin-bottom: 0.65rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(2.125rem, 3.4vw, 2.375rem);
	font-weight: 600;
	letter-spacing: -0.022em;
	line-height: 1.08;
}

.language-modal[data-required="true"] h2 {
	max-width: 100%;
}

html[dir="rtl"] .language-modal h2 {
	letter-spacing: 0;
	text-align: right;
}

.language-modal p {
	max-width: 55ch;
	margin-bottom: 0;
	color: #52616d;
	font-size: 0.975rem;
	line-height: 1.55;
}

html[dir="rtl"] .language-modal p {
	text-align: right;
}

.language-modal__choices {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.language-modal__choices button {
	position: relative;
	min-height: 108px;
	gap: 0;
	border-color: color-mix(in srgb, var(--etebar-border) 88%, var(--etebar-navy));
	background: color-mix(in srgb, var(--etebar-paper) 92%, white);
	box-shadow: none;
	transition: border-color 160ms ease, background-color 160ms ease;
}

.language-modal__choices button:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 82%, var(--etebar-navy));
	background: color-mix(in srgb, var(--etebar-gold) 5%, var(--etebar-paper));
	box-shadow: none;
}

.language-modal__choices button.is-active,
.language-modal__choices button[aria-pressed="true"] {
	border-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 9%, var(--etebar-paper));
	box-shadow: none;
}

.language-modal__choices button:focus-visible,
.language-modal__close:focus-visible {
	outline: 2px solid var(--etebar-navy);
	outline-offset: 3px;
}

.language-modal[data-input-modality="pointer"] [data-language-initial-focus]:focus-visible,
.site-header [data-language-dropdown-toggle][data-pointer-focus-return]:focus-visible {
	outline: none;
	box-shadow: none;
}

.language-modal__label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.2rem;
	font-size: inherit !important;
	line-height: 1.2;
}

.language-modal__choices strong,
.language-modal__choices .language-modal__native {
	color: var(--etebar-navy);
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.25;
}

.language-modal__choices .language-modal__native {
	font-size: 1.65rem;
	font-weight: 500;
}

.language-modal__choices small {
	color: #5d6870;
	font-size: 0.78rem;
	font-weight: 650;
	letter-spacing: 0.01em;
	line-height: 1.25;
}

.language-modal__check {
	position: absolute;
	top: 0.7rem;
	inset-inline-end: 0.7rem;
	width: 19px;
	height: 19px;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 78%, var(--etebar-navy));
	border-radius: 50%;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	opacity: 0;
}

.language-modal__choices button.is-active .language-modal__check,
.language-modal__choices button[aria-pressed="true"] .language-modal__check {
	opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
	.language-modal__backdrop,
	.language-modal__panel,
	.language-modal__close,
	.language-modal__choices button {
		transition: none;
	}
}

@media (max-width: 820px) {
	.home .hero__layout,
	html[dir="rtl"] .home .hero__layout,
	html[data-etebar-language^="fa"] .home .hero__layout,
	html[data-etebar-language^="ps"] .home .hero__layout {
		grid-template-rows: auto clamp(255px, 36vw, 300px);
		padding-top: clamp(1.25rem, 3vw, 1.5rem);
	}

	.home .hero__content,
	html[dir="rtl"] .home .hero__content {
		padding-bottom: 0.5rem;
	}

	.home .hero__eyebrow {
		margin-bottom: 0.5rem;
	}

	.home .hero h1,
	html[dir="rtl"] .home .hero h1 {
		margin-bottom: 0.625rem;
		font-size: clamp(2.35rem, 5.2vw, 2.65rem);
	}

	.home .hero__lead,
	html[dir="rtl"] .home .hero__lead {
		margin-bottom: 0.75rem;
	}

	.home .hero .button-row {
		gap: 0.5rem;
	}

	.home .hero__visual,
	html[dir="rtl"] .home .hero__visual {
		height: clamp(255px, 36vw, 300px);
	}

	.home #how-it-works {
		padding-block: 1.5rem 2.25rem;
	}

	.home #how-it-works .homepage-process__heading {
		margin-bottom: 0.9rem;
	}

	.home .homepage-secondary__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.home .homepage-secondary__proof {
		border-inline-start: 0;
		border-top: 1px solid color-mix(in srgb, var(--etebar-gold) 38%, var(--etebar-border));
		padding-block-start: 1.5rem;
		padding-inline-start: 0;
	}
}

@media (max-width: 560px) {
	.home #how-it-works {
		padding-block: 0.75rem 2rem;
	}

	html[data-etebar-language^="ps"] .home .hero__layout {
		padding-top: 1.75rem;
	}

	.home #how-it-works .homepage-process__heading {
		margin-bottom: 0.75rem;
	}

	.home #how-it-works .process-list {
		gap: 0.85rem;
	}

	.home #how-it-works .process-list li:not(:last-child) {
		border-bottom: 1px solid color-mix(in srgb, var(--etebar-border) 70%, transparent);
		padding-bottom: 0.85rem;
	}

	.home .commerce-category-nav--home a,
	.home .commerce-category-nav--home a:has(.commerce-category-nav__visual) {
		min-height: 72px;
		padding: 0.6rem;
	}

	.home .commerce-category-nav--home small {
		padding: 0.15rem 0.35rem;
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home {
		min-height: 156px;
		grid-template-columns: 132px minmax(0, 1fr);
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image--placeholder img {
		height: 100% !important;
		min-height: 156px;
		padding: 0.35rem;
	}

	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
		padding: 0.75rem 0.75rem 0;
	}

	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
		padding: 0 0.75rem 0.75rem;
	}

	.home .homepage-secondary__request .button {
		width: 100%;
		justify-content: center;
	}

	.language-modal {
		padding: max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));
	}

	.language-modal__panel {
		width: min(100%, 420px);
		max-height: calc(100dvh - 2rem);
		padding: 1.5rem;
	}

	.language-modal[data-required="false"] .language-modal__panel {
		padding-top: 3.75rem;
	}

	.language-modal__close {
		top: 0.85rem;
		right: 0.85rem;
	}

	html[dir="rtl"] .language-modal__close {
		right: auto;
		left: 0.85rem;
	}

	.language-modal h2 {
		max-width: none;
		font-size: clamp(1.75rem, 8vw, 2rem);
		line-height: 1.12;
	}

	.language-modal[data-required="true"] h2 {
		max-width: 100%;
	}

	.language-modal p {
		font-size: 0.94rem;
		line-height: 1.5;
	}

	.language-modal__choices {
		grid-template-columns: 1fr;
		gap: 0.55rem;
		margin-top: 1.15rem;
	}

	.language-modal__choices button {
		min-height: 68px;
		flex-direction: row;
		justify-content: flex-start;
		padding: 0.65rem 3rem 0.65rem 1rem;
		text-align: start;
	}

	.language-modal__choices button[dir="rtl"] {
		padding-right: 1rem;
		padding-left: 3rem;
	}

	.language-modal__label {
		flex: 1 1 auto;
		flex-direction: row;
		align-items: baseline;
		justify-content: space-between;
		gap: 1rem;
	}

	.language-modal__choices strong,
	.language-modal__choices .language-modal__native {
		font-size: 1.18rem;
	}

	.language-modal__choices .language-modal__native {
		font-size: 1.5rem;
	}

	.language-modal__choices small {
		margin: 0;
	}
}

/* Homepage How it works: compact process hierarchy without cards or table framing. */

.home #how-it-works {
	padding-top: clamp(2.25rem, 3vw, 2.75rem);
	padding-bottom: clamp(1rem, 1.5vw, 1.5rem);
}

.home #how-it-works .homepage-process__heading {
	max-width: 1120px;
	margin: 0 auto clamp(1.35rem, 2.2vw, 1.8rem);
	text-align: center;
}

.home .homepage-process__heading .eyebrow {
	margin-bottom: 0.4rem;
}

.home .homepage-process__heading h2 {
	max-width: 1120px;
	margin: 0 auto;
	font-size: clamp(2rem, 3.35vw, 3rem);
	letter-spacing: -0.025em;
	line-height: 1.04;
}

.home .homepage-process__flow {
	display: block;
	border: 0;
	background: transparent;
}

.home #how-it-works .process-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	border: 0;
	background: transparent;
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even),
.home .homepage-process .process-list li:nth-child(-n + 2) {
	position: relative;
	display: flex;
	min-width: 0;
	min-height: 0;
	flex-direction: column;
	align-items: center;
	gap: 0.85rem;
	border: 0;
	background: transparent;
	padding: 0 clamp(1rem, 1.6vw, 1.45rem);
	text-align: center;
}

.home .homepage-process .process-list li::after,
.home .homepage-process .process-list li:not(:last-child)::after {
	display: none;
	content: none;
}

.home .homepage-process__step-mark {
	display: flex;
	height: 40px;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
}

.home .homepage-process__step-mark > span {
	display: inline-flex;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	align-items: center;
	justify-content: center;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 82%, var(--etebar-border));
	border-radius: 50%;
	background: var(--etebar-gold-light);
	color: var(--etebar-navy);
	font-family: var(--etebar-mono);
	font-size: 0.75rem;
	font-weight: 750;
}

.home .homepage-process__step-mark svg {
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	color: var(--etebar-charcoal);
}

.home .homepage-process__step-copy {
	display: grid;
	width: 100%;
	grid-template-rows: minmax(3.15rem, auto) auto;
	align-content: start;
}

.home .homepage-process .process-list h3 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(1.375rem, 1.65vw, 1.5rem);
	line-height: 1.24;
}

.home .homepage-process .process-list p {
	max-width: 27ch;
	margin: 0 auto;
	color: var(--etebar-gray);
	font-size: 0.96875rem;
	line-height: 1.55;
}

.home #how-it-works .homepage-process__request {
	display: block;
	min-height: 0;
	margin-top: clamp(1rem, 1.7vw, 1.35rem);
	border: 0;
	background: transparent;
	padding: 0;
	text-align: center;
}

.home .homepage-process__request p {
	display: inline;
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.875rem;
	font-weight: 650;
	line-height: 1.5;
}

.home .homepage-process__request-link {
	display: inline-flex;
	min-height: 0;
	align-items: center;
	margin: 0 0 0 0.18rem;
	font-size: inherit;
	white-space: normal;
}

[dir="rtl"] .home .homepage-process__request-link {
	margin-right: 0.18rem;
	margin-left: 0;
}

.home .homepage-process + .home-products {
	padding-top: clamp(1.75rem, 2.5vw, 2.25rem);
}

@media (min-width: 701px) and (max-width: 1100px) {
	.home #how-it-works .process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: clamp(1.5rem, 5vw, 3.5rem);
		row-gap: clamp(2rem, 4.5vw, 2.75rem);
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		padding-inline: clamp(1rem, 3vw, 2rem);
	}

	.home .homepage-process .process-list p {
		max-width: 34ch;
	}
}

@media (max-width: 700px) {
	.home #how-it-works {
		padding-top: 1.5rem;
		padding-bottom: 0.75rem;
	}

	.home .homepage-process__heading {
		margin-bottom: 1.35rem;
		text-align: center;
	}

	.home .homepage-process__heading h2 {
		font-size: clamp(1.9rem, 8.4vw, 2.25rem);
		line-height: 1.06;
	}

	.home #how-it-works .process-list {
		grid-template-columns: 1fr;
		gap: 0.95rem;
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		display: grid;
		grid-template-columns: 42px minmax(0, 1fr);
		gap: 0.85rem;
		align-items: start;
		border: 0;
		padding: 0;
		text-align: start;
	}

	.home #how-it-works .process-list li:not(:last-child) {
		border-bottom: 0;
		padding-bottom: 0;
	}

	.home .homepage-process__step-mark {
		height: auto;
		min-height: 66px;
		flex-direction: column;
		justify-content: flex-start;
		gap: 0.45rem;
	}

	.home .homepage-process__step-mark > span {
		width: 34px;
		height: 34px;
		flex-basis: 34px;
	}

	.home .homepage-process__step-mark svg {
		width: 20px;
		height: 20px;
		flex-basis: 20px;
	}

	.home .homepage-process__step-copy {
		grid-template-rows: auto auto;
		gap: 0.25rem;
	}

	.home .homepage-process .process-list h3 {
		font-size: 1.375rem;
		line-height: 1.24;
	}

	.home .homepage-process .process-list p {
		max-width: none;
		margin: 0;
		font-size: 0.9375rem;
		line-height: 1.55;
	}

	.home .homepage-process__request {
		margin-top: 1rem;
		text-align: start;
	}

	.home .homepage-process__request p {
		font-size: 0.9375rem;
	}

	.home .homepage-process + .home-products {
		padding-top: 1.5rem;
	}
}

/* Full-site audit repairs: scoped fixes for verified public states. */

.order-request-honeypot,
.woocommerce-checkout .wc-block-components-address-form__address_2-hidden-input {
	position: absolute !important;
	inset: auto !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.etebar-not-found {
	display: grid;
	gap: 1.25rem;
	justify-items: start;
}

.etebar-not-found h2,
.etebar-not-found p {
	margin: 0;
}

.etebar-not-found .etebar-product-search {
	width: min(100%, 680px);
}

.etebar-not-found__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.25rem;
	align-items: center;
}

.page-hero .container > p.etebar-not-found__lead {
	color: rgb(247 242 232 / 76%);
}

@media (min-width: 801px) and (max-width: 1024px) {
	.content-detail-hero__record,
	.category-detail-hero__record {
		display: grid;
		gap: 0.65rem;
		margin-top: 2rem;
		padding: 1.5rem;
	}

	.content-detail-hero__record p,
	.content-detail-hero__record strong,
	.content-detail-hero__record span,
	.category-detail-hero__record p,
	.category-detail-hero__record strong,
	.category-detail-hero__record span {
		display: block;
		margin: 0;
	}

	.content-detail-hero__record strong,
	.category-detail-hero__record strong {
		font-size: 1.35rem;
		line-height: 1.25;
	}

	.content-detail-hero__record span,
	.category-detail-hero__record span {
		border-top: 1px solid rgb(215 174 95 / 20%);
		padding-top: 0.75rem;
		line-height: 1.6;
	}
}

@media (max-width: 700px) {
	.search .woocommerce-main .page-title {
		font-size: clamp(2rem, 9vw, 2.5rem) !important;
		line-height: 1.08 !important;
		overflow-wrap: anywhere;
	}

	.search-no-results .catalog-empty .commerce-category-nav,
	.search-no-results .catalog-empty .commerce-category-nav ul {
		width: 100%;
		overflow: visible;
	}

	.search-no-results .catalog-empty .commerce-category-nav ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 0.5rem;
	}

}

/* Commerce, trust, footer and shop polish — July 2026. */

.home .homepage-process {
	background: var(--etebar-paper);
}

.home .homepage-process__heading h2 {
	max-width: 820px;
	font-size: clamp(1.9rem, 3vw, 2.75rem);
}

.home #how-it-works .process-list {
	gap: 0.75rem;
}

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(even),
.home .homepage-process .process-list li:nth-child(-n + 2) {
	position: relative;
	min-height: 208px;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 1.15rem;
	border: 0;
	border-radius: 10px;
	background: color-mix(in srgb, var(--etebar-gold) 7%, var(--etebar-ivory));
	padding: clamp(1.1rem, 2vw, 1.45rem);
	text-align: start;
}

.home .homepage-process .process-list li:nth-child(2) {
	background: color-mix(in srgb, var(--etebar-green) 7%, var(--etebar-ivory));
}

.home .homepage-process .process-list li:nth-child(3) {
	background: color-mix(in srgb, var(--etebar-navy) 5%, var(--etebar-ivory));
}

.home .homepage-process .process-list li:nth-child(4) {
	background: color-mix(in srgb, var(--etebar-gold) 11%, var(--etebar-ivory));
}

.home .homepage-process__step-mark {
	width: 100%;
	height: 50px;
	justify-content: space-between;
}

.home .homepage-process__step-mark > span {
	width: 40px;
	height: 40px;
	flex-basis: 40px;
	border: 0;
	background: var(--etebar-navy);
	color: var(--etebar-paper);
	font-family: var(--etebar-sans);
	font-size: 0.75rem;
	letter-spacing: 0;
}

.home .homepage-process__step-mark svg {
	width: 28px;
	height: 28px;
	color: var(--etebar-green);
}

.home .homepage-process__step-copy {
	grid-template-rows: minmax(3.25rem, auto) auto;
}

.home .homepage-process .process-list h3 {
	font-size: clamp(1.25rem, 1.55vw, 1.45rem);
}

.home .homepage-process .process-list p {
	max-width: 29ch;
	margin: 0;
	font-size: 0.9375rem;
}

.home-products__catalog-cta {
	display: flex;
	justify-content: center;
	margin-top: clamp(1.75rem, 3vw, 2.5rem);
}

.home-products__catalog-cta .button {
	min-width: min(100%, 240px);
	min-height: 48px;
	justify-content: center;
}

.home .home-trust {
	background: color-mix(in srgb, var(--etebar-muted) 72%, var(--etebar-paper));
}

.home-trust__heading {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(320px, 0.7fr);
	align-items: end;
	gap: 0.35rem clamp(2rem, 7vw, 6rem);
	max-width: none;
}

.home-trust__heading .eyebrow {
	grid-column: 1 / -1;
}

.home-trust__heading h2,
.home-trust__heading p {
	margin: 0;
}

.home-trust__heading p:last-child {
	max-width: 54ch;
	color: var(--etebar-gray);
	font-size: 1rem;
	line-height: 1.65;
}

.home-trust__benefits {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: clamp(2rem, 4vw, 3.25rem) 0 0;
	border-block: 1px solid color-mix(in srgb, var(--etebar-gold) 35%, var(--etebar-border));
	padding: 0;
	list-style: none;
}

.home-trust__benefits li {
	display: grid;
	grid-template-columns: 52px minmax(0, 1fr);
	gap: 1rem;
	min-width: 0;
	padding: clamp(1.4rem, 3vw, 2.2rem);
}

.home-trust__benefits li:nth-child(odd) {
	border-inline-end: 1px solid color-mix(in srgb, var(--etebar-gold) 30%, var(--etebar-border));
}

.home-trust__benefits li:nth-child(-n + 2) {
	border-bottom: 1px solid color-mix(in srgb, var(--etebar-gold) 30%, var(--etebar-border));
}

.home-trust__benefit--accent {
	background: transparent;
}

.etebar-product__placeholder-visual {
	display: grid;
	min-height: clamp(300px, 38vw, 500px);
	place-content: center;
	justify-items: center;
	gap: 0.8rem;
	background: var(--etebar-muted);
	color: var(--etebar-green);
	font-family: var(--etebar-sans);
	font-size: 1rem;
	font-weight: 600;
}

.etebar-product__placeholder-visual svg {
	width: 48px;
	height: 48px;
}

.woocommerce-cart .wc-block-components-quantity-selector__button,
.woocommerce-cart .wc-block-components-quantity-selector__input,
.woocommerce-cart .wc-block-cart-item__remove-link {
	min-width: 44px;
	min-height: 44px;
}

.woocommerce-cart .wc-block-components-quantity-selector__input {
	flex: 0 0 44px !important;
	inline-size: 44px !important;
	min-width: 44px !important;
}

.woocommerce-cart .wc-block-components-quantity-selector {
	min-width: 124px;
    border-radius: 8px;
}

.woocommerce-cart .wc-block-cart-item__remove-link {
	display: inline-grid;
	place-items: center;
    color: var(--etebar-navy);
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Approved cart additions */

.woocommerce-cart article.entry {
    width: min(calc(100% - 32px), var(--etebar-container));
    margin-inline: auto;
    padding-block: clamp(2.5rem, 5vw, 4.5rem);
}

.woocommerce-cart article.entry > .entry-header,
.woocommerce-cart article.entry > .entry-content {
    width: 100%;
    max-width: none;
}

.woocommerce-cart .entry-title {
    margin: 0;
    color: var(--etebar-navy);
    font-size: clamp(2.75rem, 5vw, 4rem);
    line-height: 1;
}

.etebar-cart-intro {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0.8rem 0 2rem;
    border-bottom: 1px solid var(--etebar-border);
    padding-bottom: 1.2rem;
}

.woocommerce-cart .wc-block-cart {
    display: grid;
    grid-template-columns: minmax(0, 1.85fr) minmax(330px, 1fr);
    align-items: start;
    gap: clamp(1.5rem, 3vw, 2.5rem);
}

.woocommerce-cart .wc-block-cart__main {
    width: 100%;
    padding: 0;
}

.woocommerce-cart .wc-block-components-quantity-selector__button,
.woocommerce-cart .wc-block-components-quantity-selector__input {
    min-width: 40px;
    min-height: 40px;
}

.etebar-cart-summary-proof {
    width: min(33.4%, 420px);
    margin: -2.25rem 0 1rem;
    margin-inline-start: auto;
    border: 1px solid var(--etebar-border);
    border-radius: 12px;
    padding: 0.25rem 1rem 0.85rem;
    background: var(--etebar-cream);
}

.etebar-cart-summary-proof .etebar-video-proof-option {
    margin: 0;
    border: 0;
    border-radius: 0;
    padding: 0.85rem 0 0;
    background: transparent;
    box-shadow: none;
}

.etebar-cart-summary-proof .etebar-video-proof-option > p {
    margin-block-end: 0;
}

.woocommerce-cart article.entry {
	    padding-block-start: 1.5rem;
	    padding-block-end: clamp(2.5rem, 5vw, 4rem);
}

.woocommerce-cart .etebar-cart-intro {
	    margin-block: 0.5rem 1.25rem;
}

.woocommerce-cart .etebar-cart-summary-proof {
	    width: auto;
	    margin: 0;
	    border: 0;
	    border-top: 1px solid var(--etebar-border);
	    border-radius: 0;
	    padding: 0.9rem 0 0.25rem;
	    background: transparent;
}

.woocommerce-cart .etebar-cart-summary-proof .etebar-video-proof-option {
	    padding: 0;
}

.woocommerce-cart .etebar-video-proof-option label {
	    display: flex;
	    align-items: flex-start;
	    gap: 0.65rem;
}

.woocommerce-cart .etebar-video-proof-option label > span {
	    display: grid;
	    gap: 0.15rem;
}

.woocommerce-cart .etebar-video-proof-option label strong {
	    font-size: 0.94rem;
	    line-height: 1.35;
}

.woocommerce-cart .etebar-video-proof-option label small {
	    color: var(--etebar-navy);
	    font-size: 0.82rem;
	    font-weight: 500;
}

.woocommerce-cart .etebar-video-proof-option > p {
	    margin: 0.4rem 0 0 1.75rem;
	    color: var(--etebar-gray);
	    font-size: 0.8rem;
	    line-height: 1.45;
}

html[dir="rtl"] .woocommerce-cart .etebar-video-proof-option > p {
	    margin-right: 1.75rem;
	    margin-left: 0;
}

/* Approved cart additions */

@media (max-width: 700px) {

    .woocommerce-cart article.entry {
        width: min(calc(100% - 24px), var(--etebar-container));
        padding-block: 2.25rem 3rem;
    }

    .etebar-cart-intro {
        align-items: flex-start;
        flex-direction: column;
        margin-bottom: 1.25rem;
    }

    .woocommerce-cart .wc-block-cart {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }

    .woocommerce-cart .wc-block-cart__sidebar {
        padding-inline: 1rem;
    }

    .woocommerce-cart .wc-block-cart-items,
    .woocommerce-cart .wc-block-cart-items tbody,
    .woocommerce-cart .wc-block-cart-items tr,
    .woocommerce-cart .wc-block-cart-items td {
        max-width: 100%;
    }

    .etebar-cart-summary-proof {
        width: 100%;
        margin-top: 0.75rem;
    }

    .woocommerce-cart .wc-block-cart__submit-container--sticky {
        position: static !important;
        inset: auto !important;
        width: auto !important;
        margin: 0 !important;
        border: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }
}

/* Approved cart additions */

@media (min-width: 901px) {
    .woocommerce-cart .wc-block-cart {
        grid-template-columns: minmax(0, 1.9fr) minmax(340px, 1fr);
        gap: clamp(1.5rem, 3vw, 2.4rem);
    }

    .woocommerce-cart .wc-block-cart__sidebar {
        position: sticky;
        top: var(--etebar-header-clearance);
        align-self: start;
    }

    .woocommerce-cart .wc-block-cart-items td {
        padding-block: 1rem;
    }

    .woocommerce-cart .wc-block-cart-item__image {
        width: 96px;
    }

    .woocommerce-cart .wc-block-cart-item__image img {
        width: 92px;
        height: 92px;
        object-fit: contain;
    }
}

.woocommerce-cart .wc-block-components-product-metadata__description,
.woocommerce-checkout .wc-block-components-product-metadata__description {
	display: none;
}

@media (max-width: 560px) {
	.site-footer .footer-menu {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
	}
}

/* Confirmed business-flow polish: concise delivery facts and calm form groups. */

.home-business-facts,
.etebar-delivery-facts,
.etebar-product__delivery-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: clamp(1.4rem, 3vw, 2.4rem) 0 0;
	padding: 0;
	border-block: 1px solid var(--etebar-border);
	list-style: none;
}

.home-business-facts li,
.etebar-delivery-facts li,
.etebar-product__delivery-facts li {
	display: grid;
	align-content: center;
	gap: 0.2rem;
	min-height: 84px;
	padding: 1rem clamp(0.8rem, 2vw, 1.4rem);
}

.home-business-facts li + li,
.etebar-delivery-facts li + li,
.etebar-product__delivery-facts li + li {
	border-inline-start: 1px solid var(--etebar-border);
}

.home-business-facts strong,
.etebar-delivery-facts strong,
.etebar-product__delivery-facts strong {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.05rem, 1.5vw, 1.28rem);
	line-height: 1.15;
}

.home-business-facts span,
.etebar-delivery-facts span,
.etebar-product__delivery-facts span {
	color: var(--etebar-gray);
	font-size: 0.9rem;
	line-height: 1.4;
}

.etebar-commerce-guidance .etebar-delivery-facts {
	grid-column: 1 / -1;
	width: 100%;
}

.etebar-video-proof-option {
	margin-top: 1.25rem;
	padding: 1.1rem;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 52%, var(--etebar-border));
	border-radius: 8px;
	background: color-mix(in srgb, var(--etebar-cream) 72%, #fff);
}

.etebar-video-proof-option > label {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	cursor: pointer;
}

.etebar-video-proof-option input[type="checkbox"] {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	margin: 1px 0 0;
	accent-color: var(--etebar-navy);
}

.etebar-video-proof-option label span {
	display: grid;
	gap: 0.15rem;
}

.etebar-video-proof-option label strong {
	color: var(--etebar-navy);
	font-size: 1rem;
}

.etebar-video-proof-option label small {
	color: var(--etebar-green);
	font-size: 0.9rem;
	font-weight: 750;
}

.etebar-video-proof-option > p {
	margin: 0.65rem 0 0.85rem 2.15rem;
	max-width: 68ch;
	color: var(--etebar-gray);
	font-size: 0.92rem;
	line-height: 1.5;
}

html[dir="rtl"] .etebar-video-proof-option > p {
	margin-right: 2.15rem;
	margin-left: 0;
}

.etebar-video-proof-option .button {
	min-height: 44px;
	margin-inline-start: 2.15rem;
	padding-block: 0.6rem;
}

.etebar-checkout-orientation .etebar-video-proof-option {
	margin-top: 1.4rem;
}

.etebar-product__delivery-facts {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 1.15rem;
}

.etebar-product__delivery-facts li:nth-child(3) {
	border-inline-start: 0;
	border-block-start: 1px solid var(--etebar-border);
}

.etebar-product__delivery-facts li:nth-child(4) {
	border-block-start: 1px solid var(--etebar-border);
}

.etebar-product__details--draft {
	border-style: dashed;
	background: color-mix(in srgb, var(--etebar-cream) 72%, #fff);
}

.etebar-product__details--draft .etebar-product__details-intro > p:last-child {
	max-width: 62ch;
	color: var(--etebar-gray);
	font-size: 0.95rem;
}

.woocommerce-checkout .wc-block-checkout__order-fields {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	margin-top: 1.5rem;
	padding: clamp(1rem, 2vw, 1.4rem);
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	background: var(--etebar-muted);
}

.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-checkout-step__content,
.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-address-form {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
}

.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-address-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem 1rem;
}

.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-address-form > *,
.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-text-input,
.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-checkbox {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.woocommerce-checkout .wc-block-checkout__order-fields [hidden],
.woocommerce-checkout .wc-block-components-text-input[hidden] {
	display: none !important;
}

.woocommerce-checkout .wc-block-components-checkout-place-order-button[data-etebar-label] .wc-block-components-button__text {
	display: none;
}

.woocommerce-checkout .wc-block-components-checkout-place-order-button[data-etebar-label]::after {
	content: attr(data-etebar-label);
}

/* ==========================================================================
   Order Status V2 — real WC_Order fulfilment state.

   One quiet receipt-like section carries the current stored state. There is
   no animation, map, ETA or implied live movement. The same ordered markup
   becomes a compact vertical record on phones and follows document direction.
   ========================================================================== */

.etebar-fulfilment {
	margin-block: 1.5rem 2rem;
	border: 1px solid var(--etebar-border);
	border-block-start: 3px solid var(--etebar-gold);
	border-radius: 12px;
	padding: clamp(1rem, 2.4vw, 1.5rem);
	background: var(--etebar-ivory);
}

.etebar-fulfilment .eyebrow {
	margin-bottom: 0.35rem;
}

.etebar-fulfilment h2 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(1.35rem, 2.4vw, 1.85rem);
}

.etebar-fulfilment__summary {
	max-width: 62ch;
	margin: 0.45rem 0 0;
	color: var(--etebar-gray);
	line-height: 1.6;
}

.etebar-fulfilment__timeline {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.etebar-fulfilment__timeline li {
	position: relative;
	display: grid;
	min-width: 0;
	justify-items: center;
	gap: 0.55rem;
	padding-inline: 0.35rem;
	text-align: center;
}

.etebar-fulfilment__timeline li:not(:last-child)::after {
	position: absolute;
	z-index: 0;
	inset-block-start: 16px;
	inset-inline-start: calc(50% + 18px);
	width: calc(100% - 36px);
	height: 2px;
	background: var(--etebar-border);
	content: "";
}

.etebar-fulfilment__timeline li.is-completed::after {
	background: var(--etebar-gold);
}

.etebar-fulfilment__marker {
	position: relative;
	z-index: 1;
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border: 1px solid var(--etebar-border);
	border-radius: 50%;
	background: var(--etebar-cream);
	color: var(--etebar-gray);
	font-size: 0.72rem;
	font-weight: 750;
	line-height: 1;
}

.etebar-fulfilment__timeline .is-completed .etebar-fulfilment__marker {
	border-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 16%, var(--etebar-cream));
	color: var(--etebar-navy);
}

.etebar-fulfilment__timeline .is-current .etebar-fulfilment__marker {
	border-color: var(--etebar-navy);
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.etebar-fulfilment__stage {
	display: grid;
	min-width: 0;
	gap: 0.18rem;
	justify-items: center;
}

.etebar-fulfilment__stage strong {
	color: var(--etebar-gray);
	font-size: 0.9rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.etebar-fulfilment__timeline .is-completed strong,
.etebar-fulfilment__timeline .is-current strong {
	color: var(--etebar-navy);
}

.etebar-fulfilment__state,
.etebar-fulfilment__stage time {
	color: var(--etebar-gray);
	font-size: 0.74rem;
	font-weight: 500;
	line-height: 1.4;
}

.etebar-fulfilment__stage time {
	direction: auto;
	unicode-bidi: isolate;
}

.etebar-fulfilment--terminal {
	border-block-start-color: var(--etebar-danger);
}

.etebar-fulfilment__recorded {
	margin-top: 1.25rem;
	border-block-start: 1px solid var(--etebar-border);
	padding-top: 1rem;
}

.etebar-fulfilment__recorded h3 {
	margin: 0 0 0.65rem;
	color: var(--etebar-navy);
	font-size: 1rem;
}

.etebar-fulfilment__recorded ul {
	display: grid;
	gap: 0.4rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.etebar-fulfilment__recorded li {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 1rem;
	justify-content: space-between;
	color: var(--etebar-navy);
	font-size: 0.86rem;
}

.etebar-fulfilment__recorded time {
	direction: auto;
	color: var(--etebar-gray);
	unicode-bidi: isolate;
}

@media (max-width: 700px) {
	.etebar-fulfilment {
		margin-block: 1.15rem 1.5rem;
		padding: 1rem;
	}

	.etebar-fulfilment__timeline {
		grid-template-columns: minmax(0, 1fr);
		gap: 0;
		margin-top: 1.15rem;
	}

	.etebar-fulfilment__timeline li {
		grid-template-columns: 34px minmax(0, 1fr);
		min-height: 64px;
		align-items: start;
		justify-items: start;
		gap: 0.75rem;
		padding: 0 0 0.85rem;
		text-align: start;
	}

	.etebar-fulfilment__timeline li:not(:last-child)::after {
		inset-block-start: 34px;
		inset-inline-start: 16px;
		width: 2px;
		height: calc(100% - 34px);
	}

	.etebar-fulfilment__stage {
		justify-items: start;
		padding-top: 0.05rem;
	}

	.etebar-fulfilment__stage strong {
		font-size: 0.95rem;
	}
}

[dir="rtl"] .etebar-fulfilment,
[dir="rtl"] .etebar-fulfilment .eyebrow,
[dir="rtl"] .etebar-fulfilment__state {
	letter-spacing: 0;
}

.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-text-input input {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-checkbox,
.woocommerce-checkout .wc-block-checkout__order-fields .etebar-checkout-option--buyer,
.woocommerce-checkout .wc-block-checkout__order-fields .etebar-checkout-option--recipient-consent {
	grid-column: 1 / -1;
}

.woocommerce-checkout .wc-block-checkout__order-fields .etebar-checkout-option--contact-2-start,
.woocommerce-checkout .wc-block-checkout__order-fields .etebar-checkout-option--contact-3-start {
	grid-column: 1 / -1;
	margin-top: 0.5rem;
	padding-top: 1.2rem;
	border-top: 1px solid var(--etebar-border);
}

.woocommerce-checkout .wc-block-checkout__order-fields input[type="checkbox"] {
	min-width: 22px;
	min-height: 22px;
	accent-color: var(--etebar-navy);
}

.woocommerce-checkout .wc-block-checkout__order-fields label {
	overflow-wrap: anywhere;
	font-size: 0.96rem;
	line-height: 1.45;
}

@media (max-width: 700px) {
	.home-business-facts,
	.etebar-delivery-facts,
	.etebar-product__delivery-facts {
		grid-template-columns: 1fr;
	}

	.home-business-facts li,
	.etebar-delivery-facts li,
	.etebar-product__delivery-facts li {
		min-height: 68px;
		padding: 0.8rem 0;
	}

	.home-business-facts li + li,
	.etebar-delivery-facts li + li,
	.etebar-product__delivery-facts li + li,
	.etebar-product__delivery-facts li:nth-child(3) {
		border-inline-start: 0;
		border-block-start: 1px solid var(--etebar-border);
	}

	.etebar-video-proof-option > p,
	html[dir="rtl"] .etebar-video-proof-option > p {
		margin-inline: 0;
	}

	.etebar-video-proof-option .button {
		width: 100%;
		margin-inline-start: 0;
	}

	.woocommerce-checkout .wc-block-checkout__order-fields {
		padding: 1rem 0.85rem;
	}

	.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-address-form {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.woocommerce-checkout .wc-block-checkout__order-fields .wc-block-components-address-form > * {
		grid-column: 1;
	}
}

.home-trust__icon {
	display: grid;
	width: 52px;
	height: 52px;
	place-items: center;
	border-radius: 9px;
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.home-trust__icon svg {
	width: 27px;
	height: 27px;
}

.home-trust__number {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--etebar-green);
	font-size: 0.75rem;
	font-weight: 600;
}

.home-trust__benefits h3 {
	margin: 0 0 0.55rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.25rem, 2vw, 1.55rem);
	line-height: 1.2;
}

.home-trust__benefits p {
	max-width: 48ch;
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.9375rem;
	line-height: 1.62;
}

.home-trust__links {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.75rem 1.5rem;
	margin-top: 1.35rem;
}

/* Compact footer task groups. */

.site-footer__grid {
	display: grid;
	grid-template-columns: minmax(190px, 1.2fr) repeat(3, minmax(135px, 0.7fr));
	gap: clamp(2rem, 5vw, 4.5rem);
	padding-top: clamp(3rem, 5vw, 4.5rem);
	padding-bottom: clamp(2.25rem, 4vw, 3.5rem);
}

.site-footer__brand > p {
	max-width: 26ch;
	margin-top: 1rem;
	color: rgb(247 242 232 / 72%);
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	line-height: 1.6;
}

.site-footer__heading {
	margin: 0 0 0.8rem;
	border-bottom: 1px solid rgb(247 242 232 / 14%);
	padding-bottom: 0.75rem;
	color: var(--etebar-gold-light);
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 750;
	letter-spacing: 0;
	text-transform: none;
}

.site-footer .footer-menu {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer .footer-menu a,
.site-footer .footer-menu__placeholder {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	color: rgb(247 242 232 / 78%);
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	line-height: 1.35;
	letter-spacing: 0;
}

.site-footer .footer-menu a:hover,
.site-footer .footer-menu a:focus-visible {
	color: var(--etebar-gold-light);
}

.site-footer .footer-menu__placeholder {
	color: rgb(247 242 232 / 48%);
}

.site-footer__placeholder-note {
	margin: 0.5rem 0 0;
	color: rgb(247 242 232 / 52%);
	font-size: 0.8125rem;
	line-height: 1.45;
}

.site-footer__legal {
	min-height: 64px;
	align-items: center;
	padding-block: 1rem;
}

.site-footer__legal p {
	font-size: 0.875rem;
	line-height: 1.5;
}

/* Approved legal-page additions */

.entry--legal {
    width: min(100%, 820px);
    margin-inline: auto;
}

.entry--legal .entry__header {
    margin-bottom: 1.25rem;
}

.legal-page__updated {
    margin: 0.65rem 0 0;
    color: var(--etebar-gray);
    font-size: 0.9rem;
}

.legal-page__toc {
    margin-bottom: 1.75rem;
    border-block: 1px solid var(--etebar-border);
    padding-block: 1rem;
}

.legal-page__toc > strong {
    display: block;
    margin-bottom: 0.55rem;
    color: var(--etebar-navy);
}

.legal-page__toc ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 1.2rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.legal-page__toc a {
    color: var(--etebar-navy);
    font-size: 0.9rem;
    font-weight: 650;
    text-underline-offset: 3px;
}

.legal-page__content {
    max-width: 78ch;
}

.legal-page__content h2 {
    margin: 2rem 0 0.65rem;
    font-size: clamp(1.5rem, 3vw, 1.9rem);
}

.legal-page__content p {
    margin-bottom: 1rem;
    line-height: 1.75;
}

.legal-page__content h2:last-of-type + p {
    border-inline-start: 3px solid var(--etebar-gold);
    padding: 1rem 1.1rem;
    background: var(--etebar-paper);
}

/* Native WooCommerce checkout: four-step progressive enhancement. */

.woocommerce-checkout.etebar-checkout-steps-ready {
	padding-bottom: 0;
}

.woocommerce-checkout .etebar-checkout-orientation {
	margin-bottom: clamp(1.25rem, 3vw, 2rem);
	border: 0;
	border-top: 2px solid var(--etebar-gold);
	border-radius: 10px;
	background: var(--etebar-paper);
	box-shadow: none;
	padding: clamp(1rem, 2vw, 1.5rem);
}

.etebar-checkout-orientation__intro {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(280px, 1.2fr);
	gap: 0.25rem clamp(1.5rem, 4vw, 4rem);
	align-items: end;
}

.etebar-checkout-orientation__intro .eyebrow,
.etebar-checkout-orientation__intro h2 {
	grid-column: 1;
}

.etebar-checkout-orientation__intro > p:last-child {
	grid-column: 2;
	grid-row: 1 / span 2;
	align-self: center;
	border-inline-start: 1px solid var(--etebar-border);
	padding-inline-start: clamp(1rem, 2vw, 1.6rem);
	font-size: 0.95rem !important;
	line-height: 1.6;
}

.etebar-checkout-progress {
	margin-top: clamp(1rem, 2vw, 1.35rem);
}

.etebar-checkout-orientation .etebar-checkout-progress ol {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	border: 0;
	padding: 0;
}

.etebar-checkout-orientation .etebar-checkout-progress ol::before {
	position: absolute;
	top: 18px;
	right: calc(12.5% + 18px);
	left: calc(12.5% + 18px);
	height: 1px;
	background: var(--etebar-border);
	content: "";
}

.etebar-checkout-orientation .etebar-checkout-progress li {
	position: relative;
	display: block;
	border: 0;
	padding: 0 0.35rem;
}

.etebar-checkout-progress button {
	position: relative;
	display: grid;
	width: 100%;
	min-height: 64px;
	grid-template-rows: 36px auto;
	justify-items: center;
	gap: 0.4rem;
	border: 0;
	background: transparent;
	color: var(--etebar-gray);
	cursor: pointer;
	font-family: var(--etebar-sans);
	text-align: center;
}

.etebar-checkout-progress button:disabled {
	cursor: not-allowed;
	opacity: 0.66;
}

.etebar-checkout-progress button:focus-visible {
	border-radius: 7px;
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

.etebar-checkout-progress__number {
	position: relative;
	z-index: 1;
	display: grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border: 1px solid var(--etebar-border);
	border-radius: 50%;
	background: var(--etebar-paper);
	color: var(--etebar-gray);
	font-size: 0.82rem;
	font-weight: 600;
}

.etebar-checkout-progress button > span:last-child {
	display: grid;
	gap: 0.15rem;
}

.etebar-checkout-progress strong {
	font-size: 0.9rem;
	line-height: 1.25;
}

.etebar-checkout-progress small {
	font-size: 0.72rem;
	line-height: 1.25;
}

.etebar-checkout-progress .is-current .etebar-checkout-progress__number {
	border-color: var(--etebar-navy);
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.etebar-checkout-progress .is-current strong {
	color: var(--etebar-navy);
}

.etebar-checkout-progress .is-complete .etebar-checkout-progress__number {
	border-color: var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-gold) 18%, var(--etebar-paper));
	color: var(--etebar-navy);
	font-size: 0;
}

.etebar-checkout-progress .is-complete .etebar-checkout-progress__number::after {
	content: "✓";
	font-size: 0.88rem;
	font-weight: 850;
}

.etebar-checkout-step-intro {
	margin-top: clamp(0.9rem, 2vw, 1.25rem);
	border-inline-start: 3px solid var(--etebar-gold);
	background: color-mix(in srgb, var(--etebar-cream) 70%, var(--etebar-paper));
	padding: clamp(0.85rem, 2vw, 1.15rem);
}

.etebar-checkout-step-intro .eyebrow {
	margin-bottom: 0.35rem;
}

.etebar-checkout-step-intro h3 {
	margin: 0 0 0.45rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.35rem, 2.3vw, 1.8rem);
	line-height: 1.2;
}

.etebar-checkout-step-intro h3:focus {
	outline: none;
}

.etebar-checkout-step-intro > p:last-child,
.etebar-checkout-step-intro > p:not(.eyebrow) {
	max-width: 72ch;
	margin: 0;
	color: var(--etebar-gray);
	font-size: 0.96rem;
	line-height: 1.6;
}

.etebar-checkout-kabul-note {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem 0.75rem;
	margin-top: 0.9rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 0.8rem;
}

.etebar-checkout-kabul-note strong,
.etebar-checkout-kabul-note span {
	font-size: 0.9rem;
}

.etebar-checkout-step-intro--delivery .etebar-delivery-facts {
	margin-top: 1rem;
}

.etebar-checkout-orientation .etebar-delivery-facts li {
	display: grid;
	min-height: 78px;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.2rem;
	border-inline-end: 0;
	padding: 0.85rem 1rem;
}

.etebar-checkout-orientation .etebar-delivery-facts li + li {
	border-inline-start: 1px solid var(--etebar-border);
}

.etebar-checkout-orientation .etebar-delivery-facts li > strong,
.etebar-checkout-orientation .etebar-delivery-facts li > span {
	grid-row: auto;
}

.etebar-checkout-proof-note {
	margin-top: 1rem;
	border-top: 1px solid var(--etebar-border);
	padding-top: 1rem;
}

.etebar-checkout-proof-note strong {
	font-size: 1rem;
}

.etebar-checkout-proof-note p {
	max-width: 70ch;
	margin: 0.35rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.92rem;
	line-height: 1.55;
}

.etebar-checkout-review__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 1.1rem;
	border-block: 1px solid var(--etebar-border);
}

.etebar-checkout-review__grid > section {
	min-width: 0;
	padding: 1rem;
}

.etebar-checkout-review__grid > section + section {
	border-inline-start: 1px solid var(--etebar-border);
}

.etebar-checkout-review__grid header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
}

.etebar-checkout-review__grid h4 {
	margin: 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 0.96rem;
}

.etebar-checkout-review__grid button {
	min-width: 44px;
	min-height: 44px;
	border: 0;
	background: transparent;
	color: var(--etebar-green);
	font-size: 0.86rem;
	font-weight: 750;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.etebar-checkout-review__grid dl {
	display: grid;
	gap: 0.75rem;
	margin: 0.8rem 0 0;
}

.etebar-checkout-review__grid dt {
	color: var(--etebar-gray);
	font-size: 0.76rem;
	font-weight: 600;
}

.etebar-checkout-review__grid dd {
	margin: 0.18rem 0 0;
	color: var(--etebar-charcoal);
	font-size: 0.9rem;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.etebar-checkout-error-summary {
	margin-top: 1rem;
	border: 1px solid color-mix(in srgb, var(--etebar-danger) 45%, var(--etebar-border));
	border-inline-start-width: 4px;
	background: color-mix(in srgb, var(--etebar-danger) 6%, var(--etebar-paper));
	padding: 1rem;
}

.etebar-checkout-error-summary h3 {
	margin: 0 0 0.5rem;
	font-family: var(--etebar-sans);
	font-size: 1rem;
}

.etebar-checkout-error-summary ul {
	margin: 0;
	padding-inline-start: 1.25rem;
}

.etebar-checkout-error-summary a {
	color: var(--etebar-danger);
	font-size: 0.9rem;
	font-weight: 600;
}

.etebar-checkout-error-summary:focus {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

.etebar-checkout-sticky {
	position: fixed;
	z-index: 70;
	right: 50%;
	bottom: max(14px, env(safe-area-inset-bottom));
	display: grid;
	width: min(calc(100% - 32px), 1180px);
	min-height: 76px;
	grid-template-columns: auto minmax(120px, 1fr) minmax(210px, auto);
	align-items: center;
	gap: 1rem;
	transform: translateX(50%);
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 45%, var(--etebar-border));
	border-radius: 10px;
	background: rgb(255 254 251 / 96%);
	box-shadow: 0 18px 52px rgb(7 31 48 / 18%);
	padding: 0.7rem;
	backdrop-filter: blur(8px);
}

html[dir="rtl"] .etebar-checkout-sticky {
	right: auto;
	left: 50%;
	transform: translateX(-50%);
}

.etebar-checkout-sticky[hidden] {
	display: none;
}

.etebar-checkout-sticky__back {
	grid-column: 1;
	min-width: 76px;
	min-height: 48px;
	border: 1px solid var(--etebar-border);
	border-radius: 7px;
	background: transparent;
	color: var(--etebar-navy);
	font-size: 0.9rem;
	font-weight: 750;
}

.etebar-checkout-sticky > div {
	display: grid;
	grid-column: 2;
	gap: 0.1rem;
}

.etebar-checkout-sticky > div span {
	color: var(--etebar-gray);
	font-size: 0.76rem;
	font-weight: 600;
}

.etebar-checkout-sticky > div strong {
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.35rem;
}

.etebar-checkout-sticky__next {
	grid-column: 3;
	width: auto !important;
	min-width: 210px;
	min-height: 52px;
}

.etebar-checkout-steps-ready .wc-block-components-checkout-step__heading-container {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

@media (max-width: 800px) {
	.etebar-checkout-steps-ready .wc-block-checkout__contact-fields .wc-block-components-checkout-step__heading-container {
		position: static;
		width: 100%;
		height: auto;
		overflow: visible;
		clip: auto;
		clip-path: none;
		white-space: normal;
	}

	.etebar-checkout-steps-ready .wc-block-checkout__contact-fields .wc-block-components-checkout-step__heading {
		display: flex;
		min-height: 20px;
		justify-content: flex-end;
		margin-block-end: 0.75rem;
	}

	.etebar-checkout-steps-ready .wc-block-checkout__contact-fields .wc-block-components-checkout-step__title {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
	}

	.etebar-checkout-steps-ready .wc-block-checkout__contact-fields .wc-block-components-checkout-step__heading-content {
		display: block;
		margin-inline-start: auto;
	}

	.etebar-checkout-steps-ready .wc-block-checkout__contact-fields .wc-block-checkout__login-prompt {
		float: none;
		display: inline-block;
		margin-block-start: 0;
	}
}

body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__order-fields {
	margin: 0 0 1rem;
	border: 0;
	border-radius: 0;
	background: transparent;
	padding: 0;
}

body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__order-fields .wc-block-components-address-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem 1rem;
}

.etebar-checkout-steps-ready .wc-block-checkout__main {
	max-width: 820px;
	padding-inline-end: 0;
}

.etebar-checkout-steps-ready .wc-block-checkout[data-etebar-active-step="4"] .wc-block-checkout__main {
	max-width: none;
	padding-inline-end: clamp(1.5rem, 4vw, 4rem);
}

.etebar-checkout-steps-ready .wc-block-checkout__contact-fields,
.etebar-checkout-steps-ready .wc-block-checkout__billing-fields,
.etebar-checkout-steps-ready .wc-block-checkout__shipping-option,
.etebar-checkout-steps-ready .wc-block-checkout__payment-method,
.etebar-checkout-steps-ready .wc-block-checkout__order-fields {
	margin: 0 0 1rem;
	border: 0;
	border-radius: 0;
	background: transparent;
	padding: 0;
}

.etebar-checkout-steps-ready .wc-block-checkout__billing-fields .wc-block-components-address-form,
.etebar-checkout-steps-ready .wc-block-checkout__order-fields .wc-block-components-address-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem 1rem;
}

.etebar-checkout-steps-ready .wc-block-checkout__billing-fields [data-etebar-field-step="2"],
.etebar-checkout-steps-ready .wc-block-checkout__order-fields [data-etebar-field-step="2"] {
	min-width: 0;
}

.etebar-checkout-steps-ready #billing-address_1,
.etebar-checkout-steps-ready #order-etebar-landmark-directions,
.etebar-checkout-steps-ready #order-etebar-delivery-instructions {
	min-height: 58px;
}

.etebar-checkout-steps-ready #billing-city[readonly] {
	background: color-mix(in srgb, var(--etebar-muted) 72%, #fff);
	cursor: default;
}

.etebar-checkout-steps-ready input[type="tel"],
.etebar-checkout-steps-ready input[id*="phone"],
.etebar-checkout-sticky [data-etebar-checkout-total] {
	direction: ltr;
	unicode-bidi: plaintext;
}

html[dir="rtl"] .etebar-checkout-steps-ready input[type="tel"],
html[dir="rtl"] .etebar-checkout-steps-ready input[id*="phone"] {
	text-align: left;
}

.etebar-checkout-steps-ready [data-etebar-field-step][hidden] {
	display: none !important;
}

.etebar-checkout-steps-ready .wc-block-components-address-form__address_2-toggle[data-etebar-field-step="2"] {
	display: inline-flex;
	min-height: 44px;
	grid-column: 1 / -1;
	align-items: center;
	color: var(--etebar-green);
	font-size: 0.9rem;
	font-weight: 600;
}

.etebar-checkout-steps-ready .wc-block-checkout__actions .wc-block-components-checkout-place-order-button {
	display: none;
}

.etebar-checkout-steps-ready .wc-block-components-address-form__first_name[data-etebar-field-step="1"] {
	grid-column: 1;
}

.etebar-checkout-steps-ready .wc-block-components-address-form__last_name[data-etebar-field-step="1"] {
	grid-column: 2;
}

.etebar-checkout-steps-ready .wc-block-components-address-form__phone[data-etebar-field-step="1"] {
	grid-column: 1;
}

.etebar-checkout-steps-ready .wc-block-checkout__shipping-option .wc-block-components-radio-control-accordion-option {
	margin-top: 0;
	border-color: color-mix(in srgb, var(--etebar-gold) 55%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-gold) 9%, var(--etebar-paper));
}

@media (max-width: 800px) {
	.etebar-checkout-orientation__intro {
		grid-template-columns: 1fr;
	}

	.etebar-checkout-orientation__intro .eyebrow,
	.etebar-checkout-orientation__intro h2,
	.etebar-checkout-orientation__intro > p:last-child {
		grid-column: 1;
		grid-row: auto;
	}

	.etebar-checkout-orientation__intro > p:last-child {
		margin-top: 0.35rem !important;
		border-inline-start: 0;
		border-top: 1px solid var(--etebar-border);
		padding: 0.75rem 0 0;
	}

	.etebar-checkout-review__grid {
		grid-template-columns: 1fr;
	}

	.etebar-checkout-review__grid > section + section {
		border-block-start: 1px solid var(--etebar-border);
		border-inline-start: 0;
	}

	.etebar-checkout-steps-ready .wc-block-checkout[data-etebar-active-step="4"] .wc-block-checkout__main {
		padding-inline-end: 0;
	}
}

@media (max-width: 600px) {
	.woocommerce-checkout.etebar-checkout-steps-ready {
		padding-bottom: 104px;
	}

	.woocommerce-checkout .etebar-checkout-orientation {
		margin-inline: -0.2rem;
		padding: 1rem;
	}

	.etebar-checkout-orientation .etebar-checkout-progress ol::before {
		right: calc(12.5% + 16px);
		left: calc(12.5% + 16px);
		top: 18px;
	}

	.etebar-checkout-progress button {
		min-height: 70px;
		grid-template-rows: 36px auto;
		gap: 0.4rem;
		padding: 0;
	}

	.etebar-checkout-progress__number {
		width: 36px;
		height: 36px;
	}

	.etebar-checkout-progress strong {
		font-size: 0.72rem;
	}

	.etebar-checkout-progress small {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
	}

	.etebar-checkout-step-intro {
		margin-top: 1rem;
		padding: 0.9rem;
	}

	.etebar-checkout-steps-ready .wc-block-checkout__billing-fields .wc-block-components-address-form,
	body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__order-fields .wc-block-components-address-form {
		grid-template-columns: minmax(0, 1fr);
	}

	.etebar-checkout-steps-ready .wc-block-components-address-form__first_name[data-etebar-field-step="1"],
	.etebar-checkout-steps-ready .wc-block-components-address-form__last_name[data-etebar-field-step="1"],
	.etebar-checkout-steps-ready .wc-block-components-address-form__phone[data-etebar-field-step="1"] {
		grid-column: 1;
	}

	.etebar-checkout-sticky {
		bottom: max(8px, env(safe-area-inset-bottom));
		width: calc(100% - 16px);
		min-height: 76px;
		grid-template-columns: auto minmax(70px, 0.8fr) minmax(145px, 1.4fr);
		gap: 0.5rem;
		padding: 0.5rem;
	}

	.etebar-checkout-sticky__back {
		min-width: 48px;
		padding-inline: 0.55rem;
	}

	.etebar-checkout-sticky > div strong {
		font-size: 1.05rem;
		white-space: nowrap;
	}

	.etebar-checkout-sticky__next {
		min-width: 0;
		min-height: 52px;
		padding-inline: 0.7rem;
		font-size: 0.82rem;
		line-height: 1.2;
	}
}

/* Shop header and native discovery controls. */

.woocommerce-shop .woocommerce-main,
.tax-product_cat .woocommerce-main,
.post-type-archive-product .woocommerce-main {
	padding-block: clamp(1.75rem, 3.5vw, 3.25rem) clamp(3.5rem, 6vw, 5rem);
}

.etebar-shop-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 1rem;
	color: var(--etebar-gray);
	font-size: 0.875rem;
}

.etebar-shop-breadcrumb a {
	color: var(--etebar-green);
	font-weight: 600;
	text-underline-offset: 3px;
}

.woocommerce-shop .woocommerce-main > .page-title,
.woocommerce-shop .woocommerce-main > h1,
.post-type-archive-product .woocommerce-main > .page-title,
.post-type-archive-product .woocommerce-main > h1 {
	max-width: 100%;
	margin: 0 !important;
	font-size: clamp(2.875rem, 4vw, 3.625rem) !important;
	line-height: 1.02 !important;
}

.etebar-shop-intro {
	max-width: 60ch;
	margin: 0.85rem 0 0;
	color: var(--etebar-gray);
	font-size: clamp(1rem, 1.3vw, 1.125rem);
	line-height: 1.55;
}

.catalog-discovery {
	margin: clamp(1.5rem, 3vw, 2.25rem) 0 1rem;
	border-block: 1px solid var(--etebar-border);
	padding-block: 1rem;
}

.catalog-discovery__intro {
	display: block;
	margin: 0 0 0.75rem;
}

.catalog-discovery__intro p {
	margin: 0;
	color: var(--etebar-navy);
	font-size: 0.875rem;
	font-weight: 750;
}

.commerce-category-nav--shop {
	overflow: visible;
}

.commerce-category-nav--shop ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	overflow: visible;
}

.commerce-category-nav--shop a {
	min-height: 44px;
	border-radius: 6px;
	padding: 0.6rem 0.9rem;
	font-size: 0.875rem;
	letter-spacing: 0;
}

.commerce-category-nav--shop .commerce-category-nav__visual {
	display: none;
}

.commerce-category-nav--shop a[aria-current="page"] {
	border-color: var(--etebar-navy);
	background: var(--etebar-navy);
	color: var(--etebar-paper);
}

.catalog-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.25rem;
	border: 0;
	padding-block: 0.25rem;
}

.woocommerce .catalog-toolbar .woocommerce-result-count {
	color: var(--etebar-charcoal);
	font-size: 0.9375rem;
	font-weight: 600;
}

.woocommerce .catalog-toolbar .woocommerce-ordering select {
	min-width: 220px;
	min-height: 46px;
	border-color: color-mix(in srgb, var(--etebar-navy) 24%, var(--etebar-border));
	background-color: var(--etebar-paper);
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 650;
}

/* Unified product-card system. */

.woocommerce ul.products,
.woocommerce-page ul.products {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(0.9rem, 1.6vw, 1.35rem) !important;
}

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card {
	display: flex !important;
	height: 100%;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 26%, var(--etebar-border));
	border-radius: 9px;
	background: var(--etebar-paper);
	box-shadow: 0 10px 26px rgb(7 31 48 / 4%);
	overflow: hidden;
}

.woocommerce ul.products li.product.etebar-shop-card:hover,
.woocommerce-page ul.products li.product.etebar-shop-card:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 58%, var(--etebar-border));
	box-shadow: 0 16px 34px rgb(7 31 48 / 7%);
}

.etebar-shop-card__image {
	display: block;
	margin: 0;
	background: var(--etebar-muted);
}

.woocommerce ul.products li.product .etebar-shop-card__image img,
.woocommerce ul.products li.product .etebar-shop-card__image--placeholder img {
	width: 100%;
	height: auto;
	min-height: 0;
	margin: 0;
	border-bottom: 1px solid var(--etebar-border);
	background: var(--etebar-muted);
	aspect-ratio: 1 / 0.8;
	object-fit: cover;
	padding: 0.7rem;
}

.etebar-shop-card__body {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
	flex-direction: column;
	padding: 1rem 1rem 0;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 0.55rem;
	padding: 0;
	font-size: clamp(1.125rem, 1.45vw, 1.3rem);
	line-height: 1.26;
}

.etebar-shop-card__unit,
.etebar-shop-card__status {
	margin: 0 0 0.65rem;
	color: #5c6570;
	font-size: 0.875rem;
	line-height: 1.45;
}

.woocommerce ul.products li.product .price {
	margin: auto 0 0.85rem !important;
	padding-top: 0.35rem;
	color: var(--etebar-navy);
	font-size: clamp(1.2rem, 1.5vw, 1.4rem);
	font-weight: 600;
	line-height: 1.2;
}

.etebar-shop-card__footer {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	padding: 0 1rem 1rem;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button,
.woocommerce ul.products li.product .etebar-shop-card__footer .added_to_cart {
	display: inline-flex;
	width: 100%;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	margin: 0;
	border: 1px solid var(--etebar-gold);
	border-radius: 5px;
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
	padding: 0.65rem 0.8rem;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 750;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover,
.woocommerce ul.products li.product .etebar-shop-card__footer .added_to_cart:hover {
	border-color: var(--etebar-gold-light);
	background: var(--etebar-gold-light);
	color: var(--etebar-navy-dark);
}

.woocommerce ul.products li.product .etebar-shop-card__footer .add_to_cart_button.added {
	display: none;
}

.woocommerce-pagination {
	margin-top: clamp(2rem, 4vw, 3rem) !important;
}

.woocommerce-pagination .page-numbers {
	gap: 0.5rem;
}

.woocommerce-pagination .page-numbers a,
.woocommerce-pagination .page-numbers span {
	min-height: 44px;
	border-radius: 5px;
	font-size: 0.875rem;
	font-weight: 750;
}

.woocommerce-pagination .prev,
.woocommerce-pagination .next {
	gap: 0.4rem;
	padding-inline: 0.9rem !important;
}

.site-header a:focus-visible,
.site-footer a:focus-visible,
.commerce-category-nav a:focus-visible,
.woocommerce a.button:focus-visible,
.woocommerce select:focus-visible {
	outline: 3px solid var(--etebar-gold-light);
	outline-offset: 3px;
}

@media (min-width: 701px) and (max-width: 1100px) {
	.home #how-it-works .process-list {
		gap: 0.9rem;
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		min-height: 190px;
	}
}

@media (max-width: 1199px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 900px) {
	.home-trust__heading {
		grid-template-columns: 1fr;
	}

	.home-trust__heading .eyebrow {
		grid-column: auto;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

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

	.site-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 700px) {
	.home .homepage-process__heading {
		text-align: start;
	}

	.home #how-it-works .process-list {
		position: relative;
		gap: 0;
	}

	.home #how-it-works .process-list::before {
		position: absolute;
		inset-block: 28px;
		inset-inline-start: 25px;
		width: 1px;
		background: color-mix(in srgb, var(--etebar-gold) 55%, var(--etebar-border));
		content: "";
	}

	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(even),
	.home .homepage-process .process-list li:nth-child(-n + 2) {
		grid-template-columns: 52px minmax(0, 1fr);
		min-height: 0;
		gap: 0.85rem;
		border-radius: 0;
		background: transparent;
		padding: 0.8rem 0;
	}

	.home .homepage-process__step-mark {
		position: relative;
		z-index: 1;
		width: 52px;
		height: 52px;
		flex-direction: row;
		justify-content: center;
		border: 1px solid color-mix(in srgb, var(--etebar-gold) 42%, var(--etebar-border));
		border-radius: 9px;
		background: var(--etebar-paper);
	}

	.home .homepage-process__step-mark > span {
		width: auto;
		height: auto;
		flex-basis: auto;
		background: transparent;
		color: var(--etebar-green);
		font-size: 0.6875rem;
	}

	.home .homepage-process__step-mark svg {
		width: 19px;
		height: 19px;
		flex-basis: 19px;
	}

	.home .homepage-process__step-copy {
		gap: 0.2rem;
		padding-top: 0.1rem;
	}

	.home .homepage-process .process-list h3 {
		font-size: 1.25rem;
	}

	.home-trust__benefits {
		grid-template-columns: 1fr;
	}

	.home-trust__benefits li,
	.home-trust__benefits li:nth-child(odd),
	.home-trust__benefits li:nth-child(-n + 2) {
		border: 0;
		border-bottom: 1px solid color-mix(in srgb, var(--etebar-gold) 30%, var(--etebar-border));
		padding: 1.25rem 0;
	}

	.home-trust__benefits li:last-child {
		border-bottom: 0;
	}

	.home-trust__benefit--accent {
		background: transparent;
	}

	.home-trust__links {
		justify-content: flex-start;
	}

	.woocommerce-shop .woocommerce-main,
	.tax-product_cat .woocommerce-main,
	.post-type-archive-product .woocommerce-main {
		padding-top: 1.35rem;
	}

	.woocommerce-shop .woocommerce-main > .page-title,
	.woocommerce-shop .woocommerce-main > h1,
	.post-type-archive-product .woocommerce-main > .page-title,
	.post-type-archive-product .woocommerce-main > h1 {
		font-size: clamp(2.25rem, 10vw, 2.625rem) !important;
	}

	.catalog-toolbar {
		align-items: stretch;
		flex-direction: column;
		gap: 0.7rem;
	}

	.woocommerce .catalog-toolbar .woocommerce-result-count {
		margin: 0;
	}

	.woocommerce .catalog-toolbar .woocommerce-ordering,
	.woocommerce .catalog-toolbar .woocommerce-ordering select {
		width: 100%;
		min-width: 0;
	}
}

@media (max-width: 559px) {
	.home .homepage-section-heading-row {
		align-items: flex-start;
	}

	.home-products__catalog-cta .button {
		width: 100%;
	}

	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: 1fr !important;
		gap: 0.8rem !important;
	}

	.woocommerce ul.products li.product.etebar-shop-card,
	.woocommerce-page ul.products li.product.etebar-shop-card {
		display: grid !important;
		grid-template-columns: clamp(112px, 34vw, 138px) minmax(0, 1fr);
		grid-template-rows: 1fr auto;
		min-width: 0;
		min-height: 170px;
	}

	.etebar-shop-card__image {
		grid-row: 1 / 3;
		min-height: 100%;
	}

	.woocommerce ul.products li.product .etebar-shop-card__image img,
	.woocommerce ul.products li.product .etebar-shop-card__image--placeholder img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image--placeholder img {
		height: 100% !important;
		min-height: 170px;
		border: 0;
		border-inline-end: 1px solid var(--etebar-border);
		aspect-ratio: auto;
		object-fit: cover;
		padding: 0.4rem;
	}

	.etebar-shop-card__body,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
		grid-column: 2;
		padding: 0.9rem 0.85rem 0;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.home .home-products__grid .etebar-shop-card--home .woocommerce-loop-product__title {
		font-size: 1.125rem;
	}

	.woocommerce ul.products li.product .price,
	.home .home-products__grid .etebar-shop-card--home .price {
		margin-bottom: 0.55rem !important;
		font-size: 1.2rem;
	}

	.etebar-shop-card__footer,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
		grid-column: 2;
		padding: 0 0.85rem 0.85rem;
	}

	.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	.woocommerce ul.products li.product .etebar-shop-card__footer .added_to_cart {
		min-height: 44px;
		font-size: 0.875rem;
	}

	.site-footer__grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.site-footer__brand {
		grid-column: auto;
	}

	.site-footer__heading {
		margin-bottom: 0.2rem;
	}
}

[dir="rtl"] .home .homepage-process .process-list li,
[dir="rtl"] .home-trust__benefits li,
[dir="rtl"] .catalog-toolbar,
[dir="rtl"] .site-footer {
	letter-spacing: 0;
}

[dir="rtl"] .woocommerce .catalog-toolbar .woocommerce-ordering select {
	padding-right: 0.7rem;
	padding-left: 2.2rem;
}

@media (min-width: 1181px) {
	.site-header .site-nav__list li,
	.site-header .site-nav__list li:first-child,
	.site-header .site-nav__list li:nth-child(3),
	.site-header .site-nav__list li:last-child {
		display: list-item;
	}
}

.woocommerce-shop .woocommerce-main > .container > .page-title,
.woocommerce-shop .woocommerce-main > .container > h1,
.post-type-archive-product .woocommerce-main > .container > .page-title,
.post-type-archive-product .woocommerce-main > .container > h1 {
	max-width: 100%;
	margin: 0 !important;
	font-size: clamp(2.875rem, 4vw, 3.625rem) !important;
	line-height: 1.02 !important;
}

.commerce-category-nav--shop ul {
	width: 100%;
	min-width: 0;
}

.commerce-category-nav--shop li {
	width: auto;
	min-width: 0;
}

.woocommerce-pagination .page-numbers .prev,
.woocommerce-pagination .page-numbers .next {
	display: inline-flex !important;
	width: auto;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
}

@media (max-width: 700px) {
	.woocommerce-shop .woocommerce-main > .container > .page-title,
	.woocommerce-shop .woocommerce-main > .container > h1,
	.post-type-archive-product .woocommerce-main > .container > .page-title,
	.post-type-archive-product .woocommerce-main > .container > h1 {
		font-size: clamp(2.25rem, 10vw, 2.625rem) !important;
	}
}

/* Final targeted commerce cleanup — July 2026. */

.home .homepage-process .process-list li,
.home .homepage-process .process-list li:nth-child(n) {
	background: color-mix(in srgb, var(--etebar-gold) 7%, var(--etebar-ivory));
}

.home .homepage-process .process-list li:hover {
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-ivory));
}

.home .home-products .homepage-section-heading-row {
	display: block;
}

.home .home-products .homepage-section-heading-row .section-heading {
	max-width: none;
}

.home-trust__benefits li,
.home-trust__benefits li:nth-child(n),
.home-trust__benefit--accent {
	background: transparent;
}

.site-footer .footer-menu__placeholder {
	color: rgb(247 242 232 / 68%);
	cursor: default;
}

.site-footer__placeholder-note {
	max-width: 30ch;
	margin-top: 0.7rem;
	color: rgb(247 242 232 / 66%);
	font-size: 0.875rem;
}

/* Keep the shop introduction compact and visually continuous. */

.woocommerce-shop .woocommerce-main,
.tax-product_cat .woocommerce-main,
.post-type-archive-product .woocommerce-main {
	padding-block: clamp(1.35rem, 2.4vw, 2.25rem) clamp(3.5rem, 6vw, 5rem);
}

.etebar-shop-intro {
	margin-top: 0.35rem;
	line-height: 1.45;
}

.catalog-discovery {
	margin: clamp(0.6rem, 1vw, 0.85rem) 0 0.45rem;
	border-block: 0;
	padding-block: 0.2rem;
}

.catalog-discovery__intro {
	margin-bottom: 0.5rem;
}

.catalog-toolbar {
	margin-bottom: 1rem;
	border-top: 1px solid color-mix(in srgb, var(--etebar-border) 72%, transparent);
	padding-top: 0.5rem;
	padding-bottom: 0;
}

.woocommerce .catalog-toolbar .woocommerce-result-count,
.woocommerce .catalog-toolbar .woocommerce-ordering {
	display: flex;
	align-items: center;
	margin-block: 0;
}

/* One quiet card frame; imagery and content are separated by spacing, not boxes. */

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home {
	border-color: color-mix(in srgb, var(--etebar-navy) 14%, var(--etebar-border));
	background: var(--etebar-paper);
	box-shadow: 0 8px 22px rgb(7 31 48 / 4%);
}

.woocommerce ul.products li.product.etebar-shop-card::before,
.woocommerce-page ul.products li.product.etebar-shop-card::before,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home::before {
	display: none;
}

.woocommerce ul.products li.product.etebar-shop-card:hover,
.woocommerce-page ul.products li.product.etebar-shop-card:hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 52%, var(--etebar-border));
	box-shadow: 0 12px 28px rgb(7 31 48 / 7%);
}

.woocommerce ul.products li.product.etebar-shop-card:focus-within,
.woocommerce-page ul.products li.product.etebar-shop-card:focus-within {
	border-color: var(--etebar-gold);
}

.etebar-shop-card__image,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image {
	position: relative;
	display: block;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: color-mix(in srgb, var(--etebar-muted) 72%, var(--etebar-paper));
}

.etebar-shop-card__image:not(.etebar-shop-card__image--placeholder),
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image:not(.etebar-shop-card__image--placeholder) {
	border-block-end: 1px solid color-mix(in srgb, var(--etebar-navy) 10%, var(--etebar-border));
	background: #fff;
}

.etebar-shop-card__image::before,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image::before {
	display: none;
}

.woocommerce ul.products li.product .etebar-shop-card__image img,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img {
	width: 100%;
	height: auto;
	min-height: 0;
	margin: 0;
	border: 0;
	background: #fff;
	aspect-ratio: 1 / 0.78;
	object-fit: contain;
	padding: 0.4rem;
}

.woocommerce-cart .wc-block-cart-item__image:has(img:not([src*="woocommerce-placeholder"])),
.woocommerce-checkout .wc-block-components-order-summary-item__image:has(img:not([src*="woocommerce-placeholder"])) {
	border: 1px solid color-mix(in srgb, var(--etebar-navy) 10%, var(--etebar-border));
	border-radius: 7px;
	background: #fff !important;
	padding: 0.25rem;
}

.woocommerce-cart .wc-block-cart-item__image img:not([src*="woocommerce-placeholder"]),
.woocommerce-checkout .wc-block-components-order-summary-item__image img:not([src*="woocommerce-placeholder"]) {
	background: #fff;
	object-fit: contain;
}

.etebar-shop-card__image--placeholder {
	display: grid;
	place-items: center;
	background: color-mix(in srgb, var(--etebar-muted) 82%, var(--etebar-paper));
}

.etebar-shop-card__placeholder-visual {
	display: grid;
	width: 100%;
	min-height: 0;
	place-items: center;
	align-content: center;
	gap: 0.6rem;
	padding: 1rem;
	color: color-mix(in srgb, var(--etebar-navy) 70%, var(--etebar-gray));
	aspect-ratio: 1 / 0.78;
	text-align: center;
}

.etebar-shop-card__placeholder-visual svg {
	width: 42px;
	height: 42px;
	color: color-mix(in srgb, var(--etebar-green) 72%, var(--etebar-navy));
}

.etebar-shop-card__placeholder-visual > span {
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
}

.etebar-shop-card__body,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
	padding: 0.9rem 0.9rem 0;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.home .home-products__grid .etebar-shop-card--home .woocommerce-loop-product__title {
	margin-bottom: 0.4rem;
}

.etebar-shop-card__unit,
.etebar-shop-card__status {
	margin-bottom: 0.5rem;
}

.woocommerce ul.products li.product .price,
.home .home-products__grid .etebar-shop-card--home .price {
	margin-bottom: 0.7rem !important;
	padding-top: 0.2rem;
}

.etebar-shop-card__footer,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
	padding: 0 0.9rem 0.9rem;
}

.etebar-shop-card__image:focus-visible,
.woocommerce ul.products li.product .woocommerce-loop-product__title a:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: -3px;
}

/* Native WooCommerce links, presented as one pagination control. */

.woocommerce-pagination .page-numbers {
	display: inline-flex;
	max-width: 100%;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0;
	border: 1px solid color-mix(in srgb, var(--etebar-navy) 22%, var(--etebar-border)) !important;
	border-radius: 7px;
	overflow: hidden;
}

.woocommerce-pagination .page-numbers > li + li {
	margin-inline-start: -1px;
}

.woocommerce-pagination .page-numbers > li > a,
.woocommerce-pagination .page-numbers > li > span {
	display: inline-flex !important;
	min-width: 44px;
	min-height: 44px;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	border: 0;
	border-inline-start: 1px solid color-mix(in srgb, var(--etebar-navy) 16%, var(--etebar-border));
	border-radius: 0;
	padding: 0.55rem 0.75rem !important;
	white-space: nowrap;
}

.woocommerce-pagination .page-numbers > li:first-child > a,
.woocommerce-pagination .page-numbers > li:first-child > span {
	border-inline-start: 0;
}

nav.woocommerce-pagination ul.page-numbers > li > span.current {
	border-color: var(--etebar-navy) !important;
	background: var(--etebar-navy) !important;
	color: var(--etebar-paper) !important;
}

.commerce-category-nav--shop::after {
	display: none !important;
}

.woocommerce-pagination .page-numbers > li > a > span {
	display: inline !important;
	min-width: 0;
	min-height: 0;
	border: 0;
	padding: 0 !important;
}

.woocommerce-pagination .page-numbers > li > a:focus-visible {
	position: relative;
	z-index: 1;
	outline: 3px solid var(--etebar-gold);
	outline-offset: -3px;
}

@media (max-width: 700px) {
	.home .homepage-process .process-list li,
	.home .homepage-process .process-list li:nth-child(n) {
		grid-template-columns: 48px minmax(0, 1fr);
		gap: 0.75rem;
		background: transparent;
		padding: 0.65rem 0;
	}

	.home .homepage-process .process-list li:hover {
		background: transparent;
	}

	.home #how-it-works .process-list::before {
		inset-inline-start: 23px;
	}

	.home .homepage-process__step-mark {
		width: 48px;
		height: 48px;
	}

	.home .homepage-process .process-list p {
		line-height: 1.5;
	}

	.home .home-trust {
		padding-block: 2rem;
	}

	.home-trust__heading {
		gap: 0.25rem;
	}

	.home-trust__heading p:last-child {
		font-size: 0.9375rem;
		line-height: 1.5;
	}

	.home-trust__benefits {
		margin-top: 1.35rem;
	}

	.home-trust__benefits li,
	.home-trust__benefits li:nth-child(n),
	.home-trust__benefits #delivery-proof,
	.home-trust__benefit--accent {
		grid-template-columns: 44px minmax(0, 1fr);
		gap: 0.75rem;
		border: 0;
		border-bottom: 1px solid color-mix(in srgb, var(--etebar-gold) 30%, var(--etebar-border));
		background: transparent;
		padding: 0.65rem 0;
	}

	.commerce-category-nav--shop {
		width: 100%;
	}

	.home-trust__benefits li:last-child {
		border-bottom: 0;
	}

	.home-trust__icon {
		width: 44px;
		height: 44px;
	}

	.home-trust__icon svg {
		width: 22px;
		height: 22px;
	}

	.home-trust__number {
		margin-bottom: 0.18rem;
	}

	.home-trust__benefits h3 {
		margin-bottom: 0.3rem;
		font-size: 1.2rem;
	}

	.home-trust__benefits p {
		font-size: 0.9375rem;
		line-height: 1.48;
	}

	.home .home-trust__links {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		gap: 0 1rem;
		margin-top: 0.65rem;
	}

	.home .home-trust__links .text-link {
		display: inline-flex;
		width: auto !important;
		min-height: 44px;
		flex: 0 1 auto;
		align-items: center;
		font-size: 0.9375rem;
	}

	.woocommerce-shop .woocommerce-main,
	.tax-product_cat .woocommerce-main,
	.post-type-archive-product .woocommerce-main {
		padding-top: 1rem;
	}

	.etebar-shop-intro {
		margin-top: 0.4rem;
	}

	.catalog-discovery {
		margin-top: 0.75rem;
		margin-bottom: 0.45rem;
		padding-block: 0.35rem;
	}

	.catalog-discovery__intro {
		margin-bottom: 0.4rem;
	}

	.commerce-category-nav--shop ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0.45rem;
		padding: 0 !important;
		padding-inline-end: 0 !important;
	}

	.commerce-category-nav--shop li,
	.commerce-category-nav--shop a {
		width: 100%;
	}

	.commerce-category-nav--shop li:first-child {
		grid-column: 1 / -1;
	}

	.commerce-category-nav--shop a {
		height: 100%;
		justify-content: center;
		padding: 0.55rem 0.6rem;
		text-align: center;
	}

	.catalog-toolbar {
		gap: 0.5rem;
		margin-bottom: 0.8rem;
		padding-top: 0.6rem;
	}
}

@media (max-width: 559px) {
	.etebar-shop-card__image,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__image {
		border: 0;
	}

	.woocommerce ul.products li.product .etebar-shop-card__image img,
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__image img {
		height: 100% !important;
		min-height: 168px;
		border: 0;
		aspect-ratio: auto;
		object-fit: contain;
		padding: 0.25rem;
	}

	.etebar-shop-card__placeholder-visual {
		width: 100%;
		height: 100%;
		min-height: 168px;
		gap: 0.45rem;
		padding: 0.6rem;
		aspect-ratio: auto;
	}

	.etebar-shop-card__placeholder-visual svg {
		width: 36px;
		height: 36px;
	}

	.etebar-shop-card__placeholder-visual > span {
		font-size: 0.8125rem;
	}

	.etebar-shop-card__body,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__body {
		padding: 0.75rem 0.75rem 0;
	}

	.etebar-shop-card__footer,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
		padding: 0 0.75rem 0.75rem;
	}

	.woocommerce-pagination .page-numbers > li > a,
	.woocommerce-pagination .page-numbers > li > span {
		padding-inline: 0.65rem !important;
	}
}

@media (max-width: 374px) {
	.commerce-category-nav--shop ul {
		grid-template-columns: 1fr;
	}

	.commerce-category-nav--shop li:first-child {
		grid-column: auto;
	}
}

/* Homepage process: connected editorial sequence. */

.home #how-it-works.homepage-process {
	position: relative;
	overflow: clip;
	padding-block: 2rem 3.5rem;
	background: var(--etebar-ivory);
}

.home #how-it-works .homepage-process__heading {
	max-width: 860px;
	margin: 0 auto 2.75rem;
	text-align: center;
}

.home #how-it-works .homepage-process__heading .eyebrow {
	display: block;
	margin: 0;
	color: var(--etebar-navy);
	font-size: 0.8125rem;
	text-align: center;
}

.home #how-it-works .homepage-process__heading .eyebrow::before {
	content: none;
}

.home #how-it-works .homepage-process__heading .eyebrow::after {
	content: "";
	display: block;
	width: 64px;
	margin: 0.5rem auto 0;
	border-top: 1px solid var(--etebar-gold);
}

.home #how-it-works .homepage-process__heading h2 {
	max-width: none;
	margin: 0.65rem 0 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(2.25rem, 3.6vw, 3rem);
	font-weight: 600;
	line-height: 1.03;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

.home #how-it-works .homepage-process__flow {
	position: relative;
	max-width: 1240px;
	margin-inline: auto;
	padding: 0;
	background: transparent;
}

.home #how-it-works .process-list {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.home #how-it-works .process-list::before {
	content: "";
	position: absolute;
	z-index: 0;
	top: 39.5px;
	inset-inline: 12.5%;
	height: 1.5px;
	background: var(--etebar-gold);
}

.home #how-it-works .process-list li,
.home #how-it-works .process-list li:nth-child(n) {
	position: relative;
	z-index: 1;
	display: flex;
	min-width: 0;
	min-height: 0;
	flex-direction: column;
	align-items: center;
	gap: 0;
	margin: 0;
	padding: 0 clamp(0.75rem, 2vw, 1.5rem);
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	text-align: center;
	transform: none;
	transition: none;
}

.home #how-it-works .process-list li:hover {
	transform: none;
}

.home #how-it-works .process-list li::before {
	content: none;
}

.home #how-it-works .process-list li:not(:last-child)::after {
	content: none;
	display: none;
}

.home #how-it-works .homepage-process__step-mark {
	position: relative;
	z-index: 2;
	display: grid;
	width: 79px;
	height: 79px;
	flex: 0 0 79px;
	grid-template-rows: 1fr;
	place-content: center;
	place-items: center;
	gap: 0;
	margin: 0 auto 0.8rem;
	border: 3px solid var(--etebar-ivory);
	border-radius: 50%;
	outline: 1px solid var(--etebar-gold);
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.home #how-it-works .homepage-process__step-mark > span {
	position: absolute;
	bottom: calc(100% + 0.625rem);
	left: 50%;
	display: block;
	width: auto;
	min-width: 0;
	height: auto;
	padding: 0 0.15rem;
	border: 0;
	border-radius: 0;
	background: var(--etebar-ivory);
	color: color-mix(in srgb, var(--etebar-gold) 84%, var(--etebar-gray));
	font-family: var(--etebar-serif);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	letter-spacing: 0;
	transform: translateX(-50%);
}

.home #how-it-works .homepage-process__step-mark svg {
	width: 29px;
	height: 29px;
	color: var(--etebar-gold-light);
}

.home #how-it-works .homepage-process__step-copy {
	display: grid;
	width: 100%;
	min-width: 0;
	grid-template-rows: minmax(2.3em, auto) auto;
	text-align: center;
}

.home #how-it-works .process-list h3 {
	display: flex;
	max-width: 270px;
	min-height: 2.3em;
	align-items: flex-start;
	justify-content: center;
	margin: 0 auto;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.40625rem;
	font-weight: 600;
	line-height: 1.15;
	text-wrap: balance;
}

.home #how-it-works .process-list p {
	max-width: 280px;
	margin: 0.35rem auto 0;
	color: color-mix(in srgb, var(--etebar-gray) 60%, var(--etebar-navy));
	font-size: 1rem;
	line-height: 1.42;
	text-align: center;
}

@media (min-width: 701px) and (max-width: 1024px) {
	.home #how-it-works .process-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.25rem;
	}

	.home #how-it-works .process-list::before {
		content: none;
	}

	.home #how-it-works .process-list li:not(:last-child)::after {
		display: none;
	}

	.home #how-it-works .process-list li:nth-child(odd)::after {
		content: "";
		position: absolute;
		z-index: 0;
		top: 37px;
		inset-inline-start: 50%;
		inset-inline-end: auto;
		display: block;
		width: calc(100% + 2rem);
		height: 1.5px;
		border: 0;
		background: var(--etebar-gold);
		transform: none;
	}

	.home #how-it-works .homepage-process__step-mark {
		width: 74px;
		height: 74px;
		flex-basis: 74px;
	}
}

@media (max-width: 700px) {
	.home #how-it-works.homepage-process {
		padding-block: 1.75rem 1.5rem;
	}

	.home #how-it-works .homepage-process__heading {
		margin-bottom: 2.5rem;
		padding-inline: 0.25rem;
	}

	.home #how-it-works .homepage-process__heading h2 {
		font-size: clamp(2rem, 9vw, 2.25rem);
		line-height: 1.08;
	}

	.home #how-it-works .process-list {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 1.2rem;
	}

	.home #how-it-works .process-list::before {
		content: "";
		top: 35px;
		bottom: 35px;
		inset-inline-start: 35px;
		inset-inline-end: auto;
		width: 1.5px;
		height: auto;
		background: var(--etebar-gold);
	}

	.home #how-it-works .process-list li,
	.home #how-it-works .process-list li:nth-child(n) {
		display: grid;
		grid-template-columns: 70px minmax(0, 1fr);
		align-items: center;
		column-gap: 1rem;
		padding: 0;
		text-align: start;
	}

	.home #how-it-works .process-list li::after,
	.home #how-it-works .process-list li:not(:last-child)::after {
		display: none;
	}

	.home #how-it-works .homepage-process__step-mark {
		grid-column: 1;
		width: 70px;
		height: 70px;
		flex-basis: 70px;
		margin: 0;
		border-width: 3px;
		outline-width: 1px;
	}

	.home #how-it-works .homepage-process__step-mark > span {
		position: absolute;
		bottom: calc(100% + 0.625rem);
		left: 50%;
		width: auto;
		min-width: 0;
		height: auto;
		padding: 0 0.15rem;
		border: 0;
		font-size: 1.0625rem;
		transform: translateX(-50%);
	}

	.home #how-it-works .homepage-process__step-mark svg {
		width: 28px;
		height: 28px;
	}

	.home #how-it-works .homepage-process__step-copy {
		grid-column: 2;
		grid-template-rows: auto auto;
		text-align: start;
	}

	.home #how-it-works .process-list h3 {
		min-height: 0;
		font-size: 1.375rem;
		line-height: 1.22;
		text-align: start;
	}

	.home #how-it-works .process-list p {
		max-width: none;
		margin-top: 0.3rem;
		font-size: 1rem;
		line-height: 1.4;
		text-align: start;
	}
}

@media (max-width: 430px) {
	html[lang="fa-AF"] .commerce-category-nav--shop ul,
	html[lang="ps-AF"] .commerce-category-nav--shop ul {
		grid-template-columns: 1fr;
	}

	html[lang="fa-AF"] .commerce-category-nav--shop li:first-child,
	html[lang="ps-AF"] .commerce-category-nav--shop li:first-child {
		grid-column: auto;
	}
}

/* Final precedence for the trust/shop/bundle pass. */

.home .home-products.woocommerce ul.products.home-products__grid,
.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.home-trust__benefits p {
	font-size: 1rem;
	line-height: 1.55;
}

@media (min-width: 701px) and (max-width: 1050px) {
	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 700px) {
	.home-trust__benefits p {
		font-size: 0.9375rem;
	}
}

@media (max-width: 559px) {
	.home .home-products.woocommerce ul.products.home-products__grid,
	.home.woocommerce-page .home-products.woocommerce ul.products.home-products__grid {
		grid-template-columns: 1fr !important;
	}
}

/* Final precedence: navigation, language and catalog-card pass. */

.site-header .language-switcher .language-switcher__button {
	display: inline-flex;
	min-width: 104px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 0.42rem;
	padding: 0.45rem 0.7rem;
}

.site-header .language-switcher__native {
	font-size: 0.8125rem;
	line-height: 1.1;
	white-space: nowrap;
}

.site-header .header-cart {
	position: relative;
	min-width: 96px;
	justify-content: flex-start;
	padding-right: 2rem;
}

.site-header .header-cart__count,
html[dir="rtl"] .site-header .header-cart__count {
	top: 3px;
	inset-inline-start: auto;
	inset-inline-end: auto;
	left: auto !important;
	right: 3px !important;
	min-width: 18px;
	height: 18px;
	border-width: 1px;
	padding-inline: 0.22rem;
	background: var(--etebar-gold);
	color: var(--etebar-navy-dark);
	font-size: 0.625rem;
	font-variant-numeric: tabular-nums;
}

.woocommerce ul.products li.product.etebar-shop-card,
.woocommerce-page ul.products li.product.etebar-shop-card {
	transform: none;
}

.woocommerce ul.products li.product.etebar-shop-card:hover,
.woocommerce-page ul.products li.product.etebar-shop-card:hover {
	transform: none;
}

.etebar-shop-card__footer,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.65rem;
	margin-top: auto;
}

.etebar-shop-card__footer--details {
	grid-template-columns: 1fr;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .price,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .price {
	margin: 0 !important;
	padding: 0;
	font-size: clamp(1.2rem, 1.45vw, 1.35rem);
	line-height: 1.15;
}

.woocommerce ul.products li.product .etebar-shop-card__footer .button,
.woocommerce ul.products li.product .etebar-shop-card__footer .added_to_cart,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .button,
.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .added_to_cart {
	width: auto;
	min-width: 112px;
	min-height: 44px;
	padding: 0.62rem 0.75rem;
	white-space: normal;
}

.woocommerce-pagination {
	display: none !important;
}

@media (max-width: 700px) {
	.site-header .language-switcher .language-switcher__button {
		min-width: 72px;
		padding-inline: 0.55rem;
	}

	.site-header .header-cart,
	html[dir="rtl"] .site-header .header-cart {
		width: 44px;
		min-width: 44px;
		justify-content: flex-start;
		padding-right: 1.08rem;
		padding-left: 0.42rem;
	}
}

@media (max-width: 559px) {
	.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	.woocommerce ul.products li.product .etebar-shop-card__footer .added_to_cart,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .button,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .added_to_cart {
		min-width: 104px;
		font-size: 0.8125rem;
	}
}

@media (max-width: 374px) {
	.site-header .language-switcher .language-switcher__button {
		min-width: 64px;
		padding-inline: 0.4rem;
	}

	.etebar-shop-card__footer,
	.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
		gap: 0.45rem;
	}

	.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	.woocommerce ul.products li.product .etebar-shop-card__footer .added_to_cart {
		min-width: 98px;
		padding-inline: 0.55rem;
	}
}

/* Focused product-card hierarchy: quiet category capsule and one purchase row. */

.etebar-shop-card__type,
.home .home-products__grid .etebar-shop-card__type {
	display: inline-flex;
	width: fit-content;
	max-width: 100%;
	align-items: center;
	align-self: flex-start;
	order: -1;
	margin: 0 0 0.6rem;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 58%, var(--etebar-green));
	border-radius: 999px;
	background: color-mix(in srgb, var(--etebar-ivory) 72%, var(--etebar-paper));
	padding: 0.2rem 0.5rem;
	color: color-mix(in srgb, var(--etebar-navy) 82%, var(--etebar-green));
	font-family: var(--etebar-sans);
	font-size: 0.75rem;
	font-weight: 650;
	line-height: 1.25;
	letter-spacing: 0;
	text-transform: none;
	box-shadow: none;
}

.woocommerce ul.products li.product.etebar-shop-card .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product.etebar-shop-card .woocommerce-loop-product__title,
.home .home-products__grid li.product.etebar-shop-card--home .woocommerce-loop-product__title {
	min-height: 2.36em;
	margin: 0 0 0.5rem;
	font-size: clamp(1.3125rem, 1.55vw, 1.375rem);
	line-height: 1.18;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .price,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .price,
.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .price {
	margin: 0 !important;
	padding: 0;
	color: var(--etebar-navy);
	font-size: clamp(1.375rem, 1.65vw, 1.5rem);
	font-weight: 600;
	line-height: 1.1;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .button,
.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .added_to_cart {
	display: inline-flex;
	width: auto;
	min-width: 112px;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	margin: 0;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 86%, var(--etebar-navy));
	border-radius: 10px;
	background: color-mix(in srgb, var(--etebar-gold) 88%, var(--etebar-ivory));
	color: var(--etebar-navy);
	padding: 0.65rem 0.85rem;
	font-size: 0.875rem;
	font-weight: 750;
	line-height: 1.15;
	white-space: normal;
	box-shadow: none;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .added_to_cart {
	border-color: var(--etebar-navy);
	background: var(--etebar-navy);
	color: var(--etebar-paper);
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button.added,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button.added,
.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .button.added {
	display: none;
}

@media (max-width: 559px) {
	.woocommerce ul.products li.product.etebar-shop-card .woocommerce-loop-product__title,
	.woocommerce-page ul.products li.product.etebar-shop-card .woocommerce-loop-product__title,
	.home .home-products__grid li.product.etebar-shop-card--home .woocommerce-loop-product__title {
		font-size: 1.3125rem;
	}

	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
	.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
	.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart {
		min-width: 112px;
		min-height: 46px;
	}
}

/* Final shop-only card polish: concise labels and denser equal-height rows. */

.woocommerce-shop .etebar-shop-card__type,
.post-type-archive-product .etebar-shop-card__type,
.tax-product_cat .etebar-shop-card__type {
	margin-bottom: 0.4rem;
	border-color: color-mix(in srgb, var(--etebar-gold) 30%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-ivory) 48%, var(--etebar-paper));
	padding: 0.14rem 0.4rem;
	font-weight: 600;
}

.woocommerce-shop ul.products li.product.etebar-shop-card .etebar-shop-card__image img,
.post-type-archive-product ul.products li.product.etebar-shop-card .etebar-shop-card__image img,
.tax-product_cat ul.products li.product.etebar-shop-card .etebar-shop-card__image img,
.woocommerce-shop .etebar-shop-card__placeholder-visual,
.post-type-archive-product .etebar-shop-card__placeholder-visual,
.tax-product_cat .etebar-shop-card__placeholder-visual {
	aspect-ratio: 1 / 0.74;
}

.woocommerce-shop .etebar-shop-card__body,
.post-type-archive-product .etebar-shop-card__body,
.tax-product_cat .etebar-shop-card__body {
	padding: 0.7rem 0.8rem 0;
}

.woocommerce-shop ul.products li.product.etebar-shop-card .woocommerce-loop-product__title,
.post-type-archive-product ul.products li.product.etebar-shop-card .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product.etebar-shop-card .woocommerce-loop-product__title {
	min-height: 2.24em;
	margin-bottom: 0.35rem;
	line-height: 1.12;
}

.woocommerce-shop .etebar-shop-card__footer,
.post-type-archive-product .etebar-shop-card__footer,
.tax-product_cat .etebar-shop-card__footer {
	padding: 0 0.8rem 0.7rem;
}

.woocommerce-shop ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
.woocommerce-shop ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.post-type-archive-product ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
.post-type-archive-product ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.tax-product_cat ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
.tax-product_cat ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart {
	min-height: 44px;
	padding: 0.55rem 0.75rem;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.005em;
}

.woocommerce-shop ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.post-type-archive-product ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart,
.tax-product_cat ul.products li.product.etebar-shop-card .etebar-shop-card__footer .added_to_cart {
	border-color: var(--etebar-navy);
	background: var(--etebar-navy);
	color: var(--etebar-paper);
}

/* Focused card accent polish: presentation only. */

.etebar-shop-card__type,
.home .home-products__grid .etebar-shop-card__type {
	color: color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-navy));
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border-color: color-mix(in srgb, var(--etebar-gold) 62%, var(--etebar-navy-dark));
	border-radius: 10px;
	background: color-mix(in srgb, var(--etebar-gold) 62%, var(--etebar-navy-dark));
	color: #fff !important;
	padding: 0.55rem 0.7rem;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:hover,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:focus-visible,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:hover,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:focus-visible,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:focus-visible {
	background: color-mix(in srgb, var(--etebar-gold) 56%, var(--etebar-navy-dark));
	color: #fff !important;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	content: "→";
	position: static;
	display: inline-block;
	margin: 0;
	font-family: Arial, sans-serif;
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1;
	transform: none;
}

/* Compact customer-facing Why Etebar benefits. */

.home .home-trust {
	padding-block: clamp(2.75rem, 5vw, 4rem);
	background: color-mix(in srgb, var(--etebar-muted) 72%, var(--etebar-paper));
}

.home .home-trust__heading {
	display: block;
	max-width: 760px;
	margin-inline: auto;
	text-align: center;
}

.home .home-trust__heading .eyebrow {
	margin: 0 0 0.55rem;
	color: var(--etebar-navy);
	font-size: 0.8125rem;
}

.home .home-trust__heading h2 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(2.1rem, 3.4vw, 2.75rem);
	line-height: 1.08;
}

.home #why-etebar .home-trust__heading > p:last-child {
	max-width: 62ch;
	margin: 0.75rem auto 0;
	color: color-mix(in srgb, var(--etebar-gray) 72%, var(--etebar-navy));
	font-size: 1rem;
	line-height: 1.55;
}

.home .home-trust__benefits {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: clamp(1.6rem, 3vw, 2.25rem) 0 0;
	border-block: 1px solid color-mix(in srgb, var(--etebar-gold) 34%, var(--etebar-border));
	padding: 0;
}

.home .home-trust__benefits li,
.home .home-trust__benefits li:nth-child(n),
.home .home-trust__benefits #delivery-proof {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	align-content: start;
	gap: 0.85rem;
	min-height: 0;
	border: 0;
	background: transparent;
	padding: clamp(1.25rem, 2.4vw, 1.8rem);
}

.home .home-trust__benefits li + li {
	border-inline-start: 1px solid color-mix(in srgb, var(--etebar-gold) 28%, var(--etebar-border));
}

.home .home-trust__icon {
	width: 44px;
	height: 44px;
	border-radius: 9px;
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.home .home-trust__icon svg {
	width: 23px;
	height: 23px;
}

.home .home-trust__benefits h3 {
	margin: 0 0 0.4rem;
	color: var(--etebar-navy);
	font-size: clamp(1.2rem, 1.6vw, 1.35rem);
	line-height: 1.2;
}

.home .home-trust__benefits p {
	margin: 0;
	color: color-mix(in srgb, var(--etebar-gray) 70%, var(--etebar-navy));
	font-size: 0.9375rem;
	line-height: 1.5;
}

.home .home-trust__links {
	display: none;
}

@media (max-width: 700px) {
	.home .home-trust {
		padding-block: 2.25rem;
	}

	.home .home-trust__heading {
		text-align: start;
	}

	.home #why-etebar .home-trust__heading > p:last-child {
		margin-inline: 0;
	}

	.home .home-trust__benefits {
		grid-template-columns: 1fr;
		margin-top: 1.35rem;
	}

	.home .home-trust__benefits li,
	.home .home-trust__benefits li:nth-child(n),
	.home .home-trust__benefits #delivery-proof {
		border: 0;
		padding: 1rem 0;
	}

	.home .home-trust__benefits li + li {
		border-block-start: 1px solid color-mix(in srgb, var(--etebar-gold) 28%, var(--etebar-border));
		border-inline-start: 0;
	}
}

/* Homepage-only CTA and trust refinement. */

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
	min-height: 46px;
	gap: 10px;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-navy));
	border-radius: 11px;
	background: var(--etebar-gold) !important;
	color: #fff !important;
	padding: 0.625rem 0.9rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.005em;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(7, 31, 48, 0.12);
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible {
	background: color-mix(in srgb, var(--etebar-gold) 88%, var(--etebar-navy)) !important;
	color: #fff !important;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	color: #fff;
	font-family: inherit;
	font-size: 1.05rem;
	font-weight: 600;
	line-height: 1;
	transform: translateY(-0.03em);
}

html[dir="rtl"] .home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	content: "←";
}

.home .home-products__catalog-cta .button.button--primary {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding-block: 0.75rem;
	line-height: 1;
}

.home .home-trust {
	padding-block: clamp(2.5rem, 4.25vw, 3.5rem);
}

.home .home-trust__heading {
	max-width: 820px;
}

.home .home-trust__heading h2 {
	font-size: clamp(2rem, 3.1vw, 2.625rem);
	line-height: 1.1;
}

.home .home-trust__heading p:last-child {
	margin-top: 0.65rem;
}

.home .home-trust__benefits {
	margin-top: clamp(1.4rem, 2.4vw, 1.8rem);
	border-block-end: 0;
	padding-block-start: clamp(1.15rem, 2vw, 1.4rem);
}

.home .home-trust__benefits li,
.home .home-trust__benefits li:nth-child(n),
.home .home-trust__benefits #delivery-proof {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	padding: 0.1rem clamp(1.25rem, 2.2vw, 1.8rem) 0.2rem;
}

.home .home-trust__benefits li:first-child {
	padding-inline-start: 0;
}

.home .home-trust__benefits li:last-child {
	padding-inline-end: 0;
}

.home .home-trust__icon {
	width: 40px;
	height: 40px;
	border-radius: 8px;
}

.home .home-trust__icon svg {
	width: 21px;
	height: 21px;
}

.home .home-trust__benefits h3 {
	margin-bottom: 0.3rem;
	font-size: clamp(1.175rem, 1.45vw, 1.3rem);
	line-height: 1.22;
}

.home .home-trust__benefits p {
	color: color-mix(in srgb, var(--etebar-gray) 64%, var(--etebar-navy));
	line-height: 1.48;
}

@media (max-width: 700px) {
	.home .home-trust {
		padding-block: 2rem;
	}

	.home .home-trust__benefits {
		margin-top: 1.15rem;
		padding-block-start: 0.15rem;
	}

	.home .home-trust__benefits li,
	.home .home-trust__benefits li:nth-child(n),
	.home .home-trust__benefits #delivery-proof {
		display: grid;
		grid-template-columns: 40px minmax(0, 1fr);
		gap: 0.75rem;
		padding: 0.85rem 0;
	}
}

/* Final precedence: exact product CTA plus homepage trust and FAQ composition. */

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 10px;
	border: 1px solid #a98237;
	border-radius: 8px;
	background: #b99145 !important;
	background-image: none !important;
	color: #fff !important;
	padding: 0 17px;
	font-family: var(--etebar-sans);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	box-shadow: none;
	transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible {
	border-color: #a98237;
	background: #a67f35 !important;
	background-image: none !important;
	color: #fff !important;
	box-shadow: none;
	transform: translateY(-2px);
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):active {
	transform: translateY(0);
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	content: "›";
	margin: 0;
	color: #fff;
	display: inline-block;
	font-family: var(--etebar-sans);
	font-size: 22px;
	font-weight: 500;
	line-height: 1;
	transform: translateY(-1px);
	transition: transform 160ms ease;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after {
	transform: translate(2px, -1px);
}

html[dir="rtl"] .home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	content: "›";
}

.home .home-products__catalog-cta .button.button--primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding-block: 0.75rem;
	line-height: 1;
	text-align: center;
}

.home .home-trust {
	padding-block: 4rem;
}

.home .home-trust__heading {
	display: block;
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.home .home-trust__heading .eyebrow {
	display: block;
	width: 100%;
	margin-bottom: 0.55rem;
	color: var(--etebar-navy);
	text-align: center;
}

.home #why-etebar .home-trust__heading h2 {
	max-width: 760px;
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(62px, 4.5vw, 66px);
	line-height: 1.05;
}

.home #why-etebar .home-trust__subtitle {
	max-width: 720px;
	margin: 18px auto 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 27px;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
}

.home #why-etebar .home-trust__heading > p:last-child {
	max-width: 62ch;
	margin: 16px auto 0;
	font-size: 17px;
	line-height: 1.6;
}

.home .home-trust__benefits {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 1140px;
	margin: 2.25rem auto 0;
	border: 0;
	padding: 0;
}

.home .home-trust__benefits li,
.home .home-trust__benefits li:nth-child(n),
.home .home-trust__benefits #delivery-proof {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.85rem;
	border: 0;
	background: transparent;
	padding: 0 clamp(1.35rem, 2.3vw, 2rem);
	text-align: center;
}

.home .home-trust__benefits li:first-child {
	padding-inline-start: 0;
}

.home .home-trust__benefits li:last-child {
	padding-inline-end: 0;
}

.home .home-trust__benefits li:nth-child(n + 2) {
	border-block-start: 0;
	border-inline-start: 1px solid var(--etebar-border);
}

.home .home-trust__icon {
	width: 46px;
	height: 46px;
	border-radius: 8px;
}

.home .home-trust__icon svg {
	width: 23px;
	height: 23px;
}

.home .home-trust__benefits h3 {
	margin-bottom: 0.4rem;
	font-size: clamp(1.05rem, 1.3vw, 1.2rem);
	line-height: 1.25;
}

.home .home-trust__benefits p {
	font-size: 0.9375rem;
	line-height: 1.52;
}

.home .faq-preview {
	padding-block: 4rem;
}

.home .faq-preview .container--narrow {
	max-width: 1060px;
}

.home .faq-preview .homepage-section-heading-row {
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin-bottom: 1.5rem;
	border: 0;
	padding: 0;
	text-align: center;
}

.home #faq .homepage-section-heading-row .section-heading {
	text-align: center;
}

.home #faq .homepage-section-heading-row .section-heading .eyebrow {
	display: block;
	width: 100%;
	color: var(--etebar-navy);
	text-align: center;
}

.home #why-etebar .home-trust__heading .eyebrow,
.home #faq .homepage-section-heading-row .section-heading .eyebrow {
	margin-bottom: 14px;
	color: var(--etebar-navy);
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0.12em;
	line-height: 1.2;
	text-align: center;
}

.home #why-etebar .home-trust__heading .eyebrow::after,
.home #faq .homepage-section-heading-row .section-heading .eyebrow::after {
	display: block;
	width: 44px;
	height: 1px;
	margin: 9px auto 0;
	background: color-mix(in srgb, var(--etebar-gold) 58%, var(--etebar-border));
	content: "";
}

.home #faq .homepage-section-heading-row .section-heading h2 {
	font-size: clamp(3rem, 3.6vw, 3.25rem);
	line-height: 1.08;
}

.home .faq-preview .homepage-section-heading-row > .text-link {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	align-self: center;
	border: 1px solid var(--etebar-navy);
	border-radius: 8px;
	background: transparent;
	color: var(--etebar-navy);
	padding: 0 14px;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}

.home .faq-preview .homepage-section-heading-row > .text-link:hover,
.home .faq-preview .homepage-section-heading-row > .text-link:focus-visible {
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
	color: var(--etebar-navy);
	text-decoration: none;
}

.home .faq-preview .accordion {
	margin-top: 0;
	overflow: hidden;
	border: 1px solid var(--etebar-border);
	border-radius: 12px;
	background: #fffdf8;
}

.home .faq-preview .accordion__item {
	border: 0;
}

.home .faq-preview .accordion__item + .accordion__item {
	border-block-start: 1px solid var(--etebar-border);
}

.home .faq-preview .accordion__trigger {
	width: 100%;
	min-height: 66px;
	margin: 0;
	padding: 14px 20px;
	font-size: 1.0625rem;
	line-height: 1.35;
	text-align: start;
}

.home .faq-preview .accordion__trigger:hover {
	background: color-mix(in srgb, var(--etebar-gold) 9%, #fffdf8);
}

.home .faq-preview .accordion__trigger:focus-visible {
	outline: 2px solid var(--etebar-navy);
	outline-offset: -2px;
	background: color-mix(in srgb, var(--etebar-gold) 9%, #fffdf8);
}

.home .faq-preview .accordion__symbol {
	position: relative;
	width: 32px;
	height: 32px;
	flex-basis: 32px;
	border-color: color-mix(in srgb, var(--etebar-gold) 44%, var(--etebar-border));
	border-radius: 50%;
	background: var(--etebar-paper);
	font-size: 0;
}

.home .faq-preview .accordion__symbol::before,
.home .faq-preview .accordion__symbol::after {
	position: absolute;
	width: 10px;
	height: 1.5px;
	background: var(--etebar-navy);
	content: "";
}

.home .faq-preview .accordion__symbol::after {
	transform: rotate(90deg);
}

.home .faq-preview .accordion__trigger[aria-expanded="true"] .accordion__symbol::after {
	display: none;
}

.home .faq-preview .accordion__panel {
	padding-block: 0 1.15rem;
	padding-inline: 20px 64px;
	font-size: 1rem;
	line-height: 1.6;
}

@media (max-width: 700px) {
	.home #why-etebar .home-trust__heading .eyebrow,
	.home #faq .homepage-section-heading-row .section-heading .eyebrow {
		font-size: 16px;
	}

	.home .home-trust {
		padding-block: 3rem;
	}

	.home .home-trust__heading {
		text-align: center;
	}

	.home #why-etebar .home-trust__heading h2 {
		font-size: clamp(42px, 11vw, 46px);
	}

	.home #why-etebar .home-trust__subtitle {
		margin-top: 16px;
		font-size: 22px;
	}

	.home #why-etebar .home-trust__heading > p:last-child {
		margin: 14px auto 0;
		font-size: 16px;
	}

	.home .home-trust__benefits {
		grid-template-columns: minmax(0, 1fr);
		margin-top: 1.75rem;
	}

	.home .home-trust__benefits li,
	.home .home-trust__benefits li:nth-child(n),
	.home .home-trust__benefits #delivery-proof {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0.9rem;
		border: 0;
		padding: 1.25rem 0;
		text-align: center;
	}

	.home .home-trust__benefits li:nth-child(n + 2) {
		border-block-start: 1px solid var(--etebar-border);
		border-inline-start: 0;
	}

	.home .faq-preview {
		padding-block: 3rem;
	}

	.home .faq-preview .homepage-section-heading-row {
		align-items: center;
		margin-bottom: 1.25rem;
		text-align: center;
	}

	.home .faq-preview .homepage-section-heading-row > .text-link {
		align-self: center;
		margin-top: 0.25rem;
	}

	.home #faq .homepage-section-heading-row .section-heading h2 {
		font-size: clamp(2.25rem, 10vw, 2.65rem);
	}

	.home .faq-preview .accordion__trigger {
		min-height: 66px;
		padding-inline: 16px;
		font-size: 1rem;
	}

	.home .faq-preview .accordion__panel {
		padding-inline: 16px 56px;
	}
}

/* Homepage section system: one centered rhythm for primary content sections. */

.home .home-section {
	--home-section-header-width: 53.75rem;
	--home-section-body-gap: clamp(2rem, 3.2vw, 2.75rem);
	--home-section-space-y: clamp(4.5rem, 7vw, 5.75rem);
}

.home #how-it-works.home-section,
.home #shop-essentials.home-section,
.home #why-etebar.home-section,
.home #faq.home-section {
	padding-block: var(--home-section-space-y);
}

.home .home-section .home-section__intro-row {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
	border: 0;
	padding: 0;
	text-align: center;
}

.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header {
	display: block;
	width: 100%;
	max-width: var(--home-section-header-width);
	margin: 0 auto;
	padding: 0;
	text-align: center;
}

.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header .eyebrow.home-section__kicker {
	display: block;
	width: auto;
	margin: 0 0 0.75rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: 0.12em;
	text-align: center;
	text-transform: uppercase;
}

.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header .eyebrow.home-section__kicker::before,
.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header .eyebrow.home-section__kicker::after {
	display: none;
	content: none;
}

.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header h2.home-section__title {
	width: 100%;
	max-width: none;
	margin: 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(2.75rem, 4.2vw, 3.75rem);
	font-weight: 600;
	line-height: 1.05;
	letter-spacing: -0.035em;
	text-align: center;
	text-wrap: balance;
}

.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header p.home-section__subtitle {
	max-width: 42ch;
	margin: 1rem auto 0;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.25rem, 1.55vw, 1.375rem);
	font-weight: 550;
	line-height: 1.3;
	text-align: center;
}

.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header p.home-section__intro {
	max-width: 62ch;
	margin: 0.875rem auto 0;
	color: color-mix(in srgb, var(--etebar-gray) 70%, var(--etebar-navy));
	font-family: var(--etebar-sans);
	font-size: 1.125rem;
	font-weight: 400;
	line-height: 1.6;
	text-align: center;
}

.home .home-section .home-section__footer {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 2rem;
	text-align: center;
}

.home .home-section .home-section__footer .home-section__action {
	margin: 0;
}

.home #faq .home-section__footer .home-section__action {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--etebar-navy);
	border-radius: 8px;
	padding: 0 1rem;
	color: var(--etebar-navy);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}

.home #how-it-works .home-section__body,
.home #shop-essentials .home-section__body,
.home #why-etebar .home-section__body,
.home #faq .home-section__body {
	margin-block-start: var(--home-section-body-gap);
	margin-inline-start: 0;
	margin-inline-end: 0;
}

.home #shop-essentials.woocommerce ul.products.home-section__body {
	margin-block-start: var(--home-section-body-gap) !important;
}

.home #faq .home-section__body--narrow {
	width: 100%;
	max-width: 66.25rem;
}

.home #why-etebar .home-trust__benefits li,
.home #why-etebar .home-trust__benefits li:nth-child(n) {
	align-items: center;
	text-align: center;
}

html[dir="rtl"] .home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header .eyebrow.home-section__kicker {
	letter-spacing: 0;
}

@media (max-width: 700px) {
	.home .home-section {
		--home-section-body-gap: 2rem;
		--home-section-space-y: 3.5rem;
	}

	.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header .eyebrow.home-section__kicker {
		margin-bottom: 0.625rem;
		font-size: 0.9375rem;
	}

	.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header h2.home-section__title {
		font-size: clamp(2.375rem, 10.25vw, 2.75rem);
		line-height: 1.06;
	}

	.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header p.home-section__subtitle {
		margin-top: 0.875rem;
		font-size: 1.1875rem;
	}

	.home .site-main :is(#how-it-works, #shop-essentials, #why-etebar, #faq) .section-heading.home-section__header p.home-section__intro {
		margin-top: 0.75rem;
		font-size: 1rem;
	}

	.home #why-etebar .home-trust__benefits li,
	.home #why-etebar .home-trust__benefits li:nth-child(n) {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0.9rem;
		text-align: center;
	}
}

/* Homepage conversion polish: unified controls, concise three-step flow and tighter rhythm. */

.site-header .etebar-product-search__controls,
.site-header [data-language-dropdown-toggle],
.site-header .header-cart,
.site-header .header-search-toggle,
.site-header .menu-toggle {
	height: 44px;
	min-height: 44px;
	border-width: 1px;
	border-radius: 8px;
	font-family: var(--etebar-sans);
}

.site-header .etebar-product-search__controls {
	grid-template-columns: minmax(0, 1fr) 44px;
	border-color: rgb(247 242 232 / 26%);
}

.site-header .etebar-product-search input[type="search"] {
	min-height: 42px;
	padding: 0 0.875rem;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0;
}

.site-header .etebar-product-search input[type="search"]::placeholder {
	color: #5e6974;
	font-family: var(--etebar-sans);
	font-weight: 450;
}

.site-header .etebar-product-search button {
	width: 44px;
	min-width: 44px;
	min-height: 42px;
}

.site-header__actions,
.site-header__utility {
	align-items: center;
	gap: 0.45rem;
}

.site-header [data-language-dropdown-toggle] {
	min-width: 76px;
	gap: 0.35rem;
	padding: 0 0.625rem;
	font-size: 0.8125rem;
}

.site-header [data-language-dropdown-toggle] .language-switcher__native {
	font-family: var(--etebar-sans);
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1;
}

.site-header .header-cart {
	min-width: 72px;
	gap: 0.375rem;
	padding: 0 0.625rem;
	font-family: var(--etebar-sans);
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1;
}

.site-header .header-cart__count {
	top: -0.3rem;
	inset-inline-end: -0.3rem;
}

.home #how-it-works.home-section,
.home #shop-essentials.home-section {
	padding-block-start: clamp(3.75rem, 5.25vw, 4.5rem);
}

@media (min-width: 701px) {
	.home #how-it-works .process-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}

	.home #how-it-works .process-list::before {
		content: "";
		inset-inline: 16.6667%;
	}

	.home #how-it-works .process-list li::after,
	.home #how-it-works .process-list li:nth-child(n)::after {
		display: none;
		content: none;
	}
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
	min-height: 46px;
	gap: 0.625rem;
	border-color: #866124;
	background: #966f2b !important;
	padding: 0 1rem;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1;
	transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible {
	border-color: #79571f;
	background: #876323 !important;
	transform: translateY(-1px);
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	content: "›";
	font-family: var(--etebar-sans);
	font-size: 1.625rem;
	font-weight: 500;
	line-height: 0.75;
	transform: translateY(-0.08em);
	transition: transform 160ms ease;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after {
	transform: translate(3px, -0.08em);
}

html[dir="rtl"] .home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	content: "‹";
}

html[dir="rtl"] .home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
html[dir="rtl"] .home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after {
	transform: translate(-3px, -0.08em);
}

.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .added_to_cart {
	min-height: 46px;
	border-radius: 8px;
	padding: 0 1rem;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1;
}

.home #shop-essentials .home-section__footer .button,
.home #faq .home-section__footer .home-section__action {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 0 1.25rem;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1;
	text-align: center;
}

@media (max-width: 700px) {
	.site-header__actions,
	.site-header__utility,
	html[dir="rtl"] .site-header__actions,
	html[dir="rtl"] .site-header__utility {
		gap: 0.25rem;
	}

	.site-header [data-language-dropdown-toggle] {
		min-width: 50px;
		padding-inline: 0.45rem;
	}

	.site-header .header-cart {
		min-width: 44px;
		padding-inline: 0.5rem;
	}

	.home #how-it-works.home-section,
	.home #shop-essentials.home-section {
		padding-block-start: 3rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added)::after {
		transition: none;
	}

	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
	.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible {
		transform: none;
	}
}

/* Final homepage refinement: tighter rhythm, exact geometry and calmer utility type. */

body :is(button, input, select, textarea, label, legend, .button, .text-link, .eyebrow, .site-nav, .footer-menu, .site-footer__heading, .commerce-category-nav, .catalog-toolbar, .etebar-shop-card__type, .accordion__trigger) {
	font-family: var(--etebar-sans);
}

body :is(button, label, legend, .button, .text-link, .eyebrow, .site-nav a, .site-footer__heading, .commerce-category-nav a, .commerce-category-nav strong, .catalog-discovery__intro p, .catalog-toolbar, .etebar-shop-card__type, .accordion__trigger) {
	font-weight: 600;
}

.site-footer__heading,
.site-footer .footer-menu a,
.site-footer .footer-menu__placeholder,
.commerce-category-nav :is(a, strong, small),
.catalog-discovery__intro p,
.catalog-toolbar,
.etebar-shop-card__type {
	font-family: var(--etebar-sans);
}

.site-footer__heading,
.commerce-category-nav :is(a, strong),
.catalog-discovery__intro p,
.etebar-shop-card__type {
	font-weight: 600;
}

body select,
.catalog-toolbar select,
.woocommerce .woocommerce-ordering select,
.woocommerce .catalog-toolbar .woocommerce-ordering select {
	font-family: var(--etebar-sans);
	font-weight: 500;
}

.site-header .etebar-product-search__controls {
	height: 44px;
	grid-template-columns: minmax(0, 1fr) 42px;
	border: 1px solid rgb(247 242 232 / 30%);
	border-radius: 9px;
	background: var(--etebar-paper);
	box-shadow: none;
	overflow: hidden;
}

.site-header .etebar-product-search input[type="search"] {
	height: 42px;
	min-height: 42px;
	padding: 0 0.875rem;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1;
}

.site-header .etebar-product-search input[type="search"]::placeholder {
	color: #66717b;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 400;
	opacity: 1;
}

.site-header .etebar-product-search button,
.site-header .etebar-product-search button[type="submit"] {
	width: 42px;
	min-width: 42px;
	height: 42px;
	min-height: 42px;
	border: 0;
	border-inline-start: 1px solid rgb(3 19 33 / 12%);
	border-radius: 0;
	background: color-mix(in srgb, var(--etebar-gold-light) 78%, var(--etebar-ivory));
	color: var(--etebar-navy);
	padding: 0;
}

.site-header [data-language-dropdown-toggle],
.site-header .header-cart {
	height: 44px;
	min-height: 44px;
	border-radius: 8px;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1;
}

.site-header [data-language-dropdown-toggle] {
	min-width: 76px;
	padding-inline: 0.625rem;
}

.site-header [data-language-dropdown-toggle] .language-switcher__native {
	font-size: 0.875rem;
	font-weight: 600;
}

.site-header .header-cart {
	min-width: 68px;
	gap: 0.35rem;
	padding-inline: 0.55rem;
}

.home .home-section {
	--home-section-body-gap: clamp(1.75rem, 2.5vw, 2.25rem);
	--home-section-space-y: clamp(3rem, 4vw, 3.5rem);
}

.home #how-it-works.home-section,
.home #shop-essentials.home-section,
.home #why-etebar.home-section,
.home #faq.home-section {
	padding-block: var(--home-section-space-y);
}

.home .home-section .home-section__footer {
	margin-top: 1.5rem;
}

.home #how-it-works .homepage-process__step-mark {
	inline-size: 79px;
	min-inline-size: 79px;
	max-inline-size: 79px;
	block-size: 79px;
	min-block-size: 79px;
	max-block-size: 79px;
	aspect-ratio: 1 / 1;
	box-sizing: border-box;
	place-items: center;
	padding: 0;
	border-radius: 50%;
}

.home #how-it-works .homepage-process__step-mark svg {
	display: block;
	margin: auto;
}

.home #faq .home-section__body--narrow {
	width: min(100%, 66.25rem);
	margin-inline: auto !important;
}

.home #faq .accordion__trigger {
	font-family: var(--etebar-sans);
	font-weight: 600;
}

.home #why-etebar .home-section__subtitle {
	margin-top: 0.75rem;
}

.home #why-etebar .home-section__intro {
	margin-top: 0.625rem;
}

.home #why-etebar .home-trust__benefits.home-section__body {
	margin-block-start: 1.75rem;
}

.home #why-etebar .home-trust__benefits li,
.home #why-etebar .home-trust__benefits li:nth-child(n) {
	gap: 0.625rem;
	padding-block: 0.5rem;
}

.home #why-etebar .home-trust__benefits h3 {
	margin: 0 0 0.25rem;
	font-weight: 600;
}

.home #why-etebar .home-trust__benefits p {
	line-height: 1.48;
}

.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .added_to_cart,
.home #shop-essentials .home-section__footer .button,
.home #faq .home-section__footer .home-section__action {
	font-family: var(--etebar-sans);
	font-weight: 600;
}

body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after {
	font-size: 1.625rem !important;
	font-weight: 500;
	line-height: 0.75;
	transform: translateY(-0.08em) !important;
}

body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible {
	transform: translateY(-1px) !important;
}

body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after {
	transform: translate(3px, -0.08em) !important;
}

html[dir="rtl"] body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
html[dir="rtl"] body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after {
	transform: translate(-3px, -0.08em) !important;
}

.site-footer__grid {
	gap: clamp(1.75rem, 4vw, 3.5rem);
	padding-top: clamp(2.25rem, 3.75vw, 3rem);
	padding-bottom: clamp(1.75rem, 3vw, 2.5rem);
}

@media (max-width: 700px) {
	.home .home-section {
		--home-section-body-gap: 1.5rem;
		--home-section-space-y: 2.5rem;
	}

	.home #how-it-works .homepage-process__step-mark {
		inline-size: 70px;
		min-inline-size: 70px;
		max-inline-size: 70px;
		block-size: 70px;
		min-block-size: 70px;
		max-block-size: 70px;
	}

	.site-header [data-language-dropdown-toggle] {
		min-width: 50px;
		padding-inline: 0.45rem;
	}

	.site-header .header-cart {
		min-width: 44px;
		padding-inline: 0.5rem;
	}

	.home #why-etebar .home-trust__benefits.home-section__body {
		margin-block-start: 1.5rem;
	}

	.home #why-etebar .home-trust__benefits li,
	.home #why-etebar .home-trust__benefits li:nth-child(n) {
		gap: 0.55rem;
		padding-block: 0.875rem;
	}

	.site-footer__grid {
		gap: 1.25rem;
		padding-top: 2rem;
		padding-bottom: 1.5rem;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1.25rem 1rem !important;
        padding-block: 2rem 1.5rem !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible {
		transform: none !important;
	}

	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after {
		transform: translateY(-0.08em) !important;
	}
}

/* Final CTA, process-marker and homepage-rhythm alignment. */

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.single-product .etebar-product__purchase form.cart .single_add_to_cart_button {
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	gap: 0.625rem;
	border: 1px solid #865d21;
	border-radius: 8px;
	background: #9a6e25 !important;
	color: #fff !important;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	box-shadow: none;
	transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
	min-height: 52px;
	border-radius: 8px;
	padding-inline: 1.125rem;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:hover,
.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:focus-visible {
	border-color: #79531d;
	background: #895f1f !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:not(.loading)::after {
	position: static;
	display: inline-block;
	margin: 0;
	content: "›";
	color: #fff;
	font-family: var(--etebar-sans);
	font-size: 1.625rem !important;
	font-weight: 500;
	line-height: 0.75;
	transform: translateY(-0.08em);
	transition: transform 160ms ease;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:hover:not(.loading)::after,
.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:focus-visible:not(.loading)::after {
	transform: translate(3px, -0.08em);
}

html[dir="rtl"] :is(.woocommerce, .woocommerce-page) ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
html[dir="rtl"] .single-product .etebar-product__purchase form.cart .single_add_to_cart_button:not(.loading)::after {
	content: "‹";
}

html[dir="rtl"] :is(.woocommerce, .woocommerce-page) ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
html[dir="rtl"] :is(.woocommerce, .woocommerce-page) ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
html[dir="rtl"] .single-product .etebar-product__purchase form.cart .single_add_to_cart_button:hover:not(.loading)::after,
html[dir="rtl"] .single-product .etebar-product__purchase form.cart .single_add_to_cart_button:focus-visible:not(.loading)::after {
	transform: translate(-3px, -0.08em);
}

.home #how-it-works .homepage-process__step-mark {
	display: flex;
	width: 79px;
	min-width: 79px;
	max-width: 79px;
	height: 79px;
	min-height: 79px;
	max-height: 79px;
	flex: 0 0 79px;
	aspect-ratio: 1 / 1;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border: 3px solid var(--etebar-ivory);
	border-radius: 999px;
	outline: 0;
	box-shadow: 0 0 0 1px var(--etebar-gold);
	transform: none;
}

.home #how-it-works .homepage-process__step-mark > span {
	left: 50%;
	right: auto;
	width: max-content;
	text-align: center;
	transform: translateX(-50%);
}

.home #how-it-works .homepage-process__step-mark svg {
	display: block;
	width: 29px;
	height: 29px;
	flex: 0 0 29px;
	margin: 0;
}

.home .home-section {
	--home-section-space-y: clamp(2.75rem, 3.4vw, 3rem);
}

@media (max-width: 700px) {
	.home .home-section {
		--home-section-space-y: 2.25rem;
	}

	.home #how-it-works .homepage-process__step-mark {
		width: 70px;
		min-width: 70px;
		max-width: 70px;
		height: 70px;
		min-height: 70px;
		max-height: 70px;
		flex-basis: 70px;
	}

	.home #how-it-works .homepage-process__step-mark svg {
		width: 28px;
		height: 28px;
		flex-basis: 28px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
	.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
	.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
	.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:hover,
	.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:focus-visible {
		transform: none;
	}

	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
	.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:hover:not(.loading)::after,
	.single-product .etebar-product__purchase form.cart .single_add_to_cart_button:focus-visible:not(.loading)::after {
		transform: translateY(-0.08em);
	}
}

/* Keep the homepage hero CTA rhythm stable after responsive legacy rules. */

.home .hero .button-row {
	gap: 1rem;
}

/* Focused header, logo, CTA, process and type polish — July 2026. */

.site-header {
	background-color: #031321;
}

.site-logo--header,
.site-logo--footer {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}

.site-logo--header {
	width: 96px;
	height: 80px;
	min-height: 80px;
	max-height: none;
	flex: 0 0 96px;
	overflow: visible;
}

.site-logo--footer {
	width: 215px;
	height: auto;
}

.site-logo--header img,
.site-logo--footer img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	object-fit: contain;
	transform: none;
}

.site-logo--header img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 88px;
	max-width: none;
	max-height: none;
	transform: translate(-50%, -50%) translateY(6px);
}

.site-header__inner {
	min-height: 80px;
}

@media (min-width: 1181px) {
	.site-header__inner {
		grid-template-columns: max-content max-content minmax(1.5rem, 1fr) minmax(300px, 340px) max-content;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: max-content minmax(300px, 340px) minmax(1.5rem, 1fr) max-content max-content;
	}
}

.site-header .etebar-product-search__controls {
	height: 44px;
	grid-template-columns: minmax(0, 1fr) 44px;
	border-color: rgb(247 242 232 / 34%);
	border-radius: 10px;
	background: #fbf8f1;
	box-shadow: none;
}

.site-header .etebar-product-search__controls:focus-within {
	border-color: var(--etebar-gold-light);
	box-shadow: 0 0 0 3px rgb(215 174 95 / 20%);
}

.site-header .etebar-product-search input[type="search"] {
	height: 42px;
	min-height: 42px;
	padding-inline: 0.95rem;
	font-family: var(--etebar-sans);
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0;
}

.site-header .etebar-product-search input[type="search"]::placeholder {
	color: #5f6974;
	font-family: var(--etebar-sans);
	font-size: 0.9rem;
	font-weight: 400;
}

.site-header .etebar-product-search button,
.site-header .etebar-product-search button[type="submit"] {
	width: 44px;
	min-width: 44px;
	height: 42px;
	min-height: 42px;
	border-inline-start-color: rgb(3 19 33 / 14%);
	background: #e5c77d;
	color: var(--etebar-navy-dark);
}

.site-header .etebar-product-search button:hover,
.site-header .etebar-product-search button:focus-visible {
	background: #d9b861;
}

.site-header [data-language-dropdown-toggle],
.site-header .header-cart {
	height: 44px;
	min-height: 44px;
	border-color: rgb(247 242 232 / 26%);
	border-radius: 9px;
	background: rgb(247 242 232 / 4%);
	font-family: var(--etebar-sans);
	font-size: 0.84rem;
	font-weight: 600;
}

.site-header [data-language-dropdown-toggle] {
	min-width: 92px;
	gap: 0.45rem;
	justify-content: center;
	padding-inline: 0.7rem;
}

.site-header [data-language-dropdown-toggle] .language-switcher__native {
	font-family: var(--etebar-sans);
	font-size: 0.84rem;
	font-weight: 600;
}

html[dir="rtl"] .site-header [data-language-dropdown-toggle] .language-switcher__native {
	font-family: var(--etebar-arabic);
	font-weight: 500;
}

.site-header .language-switcher__globe {
	display: block;
	width: 20px;
	height: 12px;
	border-radius: 2px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 36'%3E%3Crect width='60' height='36' fill='%23012169'/%3E%3Cpath d='M0 0 60 36M60 0 0 36' stroke='%23fff' stroke-width='9'/%3E%3Cpath d='M0 0 60 36M60 0 0 36' stroke='%23c8102e' stroke-width='5'/%3E%3Cpath d='M30 0v36M0 18h60' stroke='%23fff' stroke-width='13'/%3E%3Cpath d='M30 0v36M0 18h60' stroke='%23c8102e' stroke-width='7'/%3E%3C/svg%3E") center / cover no-repeat;
	overflow: hidden;
}

.site-header .language-switcher__globe > * {
	display: none;
}

html[data-etebar-language="fa_AF"] .site-header .language-switcher__globe,
html[data-etebar-language="ps_AF"] .site-header .language-switcher__globe {
	display: none;
}

.site-header .language-switcher__chevron {
	width: 0.6rem;
	height: 0.4rem;
	margin-inline-start: 0.05rem;
}

.site-header .header-cart {
	min-width: 74px;
	gap: 0.4rem;
	padding-inline: 0.65rem;
}

.site-header .header-cart__count {
	position: static;
	display: inline-grid;
	min-width: 18px;
	height: 18px;
	place-items: center;
	border: 0;
	border-radius: 999px;
	background: var(--etebar-gold-light);
	color: var(--etebar-navy-dark);
	padding-inline: 0.3rem;
	font-family: var(--etebar-sans);
	font-size: 0.64rem;
	font-weight: 600;
	line-height: 1;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
	width: auto;
	min-width: 0;
	height: 40px;
	min-height: 40px;
	gap: 0.5rem;
	border: 1px solid #d2ae5d;
	border-radius: 8px;
	background: #d2ae5d !important;
	color: #fff !important;
	padding: 0 13px;
	font-size: 14px;
	font-weight: 600;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
	width: auto;
	height: 40px;
	min-height: 40px;
	gap: 0.5rem;
	border: 1px solid #d2ae5d;
	border-radius: 8px;
	background: #d2ae5d !important;
	color: #fff !important;
	padding: 0 13px;
	font-size: 14px;
	font-weight: 600;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible {
	border-color: #c29a48;
	background: #c29a48 !important;
	color: #fff !important;
	transform: translateY(-1px);
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:not(.loading)::after {
	font-size: 22px !important;
	transform: translateY(-2px) !important;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover:not(.loading)::after,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible:not(.loading)::after {
	transform: translate(3px, -2px) !important;
}

html[dir="rtl"] body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
html[dir="rtl"] body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
html[dir="rtl"] body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover:not(.loading)::after,
html[dir="rtl"] body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible:not(.loading)::after {
	transform: translate(-3px, -2px) !important;
}

.home #how-it-works {
	scroll-margin-top: 96px;
}

.home .site-main .hero__eyebrow {
	font-size: 15px;
}

.home .hero__lead {
	font-size: 18px;
	line-height: 1.65;
}

.home .hero .button {
	font-size: 15px;
}

.home #how-it-works .homepage-process__step-mark svg {
	width: 35px;
	height: 35px;
	flex-basis: 35px;
	stroke-width: 1.7;
}

.site-footer__heading {
	color: #e2bd72;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.025em;
	text-transform: none;
}

html[dir="rtl"] .site-footer__heading {
	letter-spacing: 0;
}

.site-footer .footer-menu a,
.home #faq .accordion__trigger {
	font-family: var(--etebar-sans);
	font-weight: 500;
}

@media (max-width: 1180px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		grid-template-columns: max-content minmax(0, 1fr);
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) max-content;
	}

	.site-logo--header {
		width: 87px;
		height: 72px;
		min-height: 72px;
		flex-basis: 87px;
	}

	.site-logo--header img {
		height: 80px;
	}
}

@media (max-width: 700px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		grid-template-columns: max-content minmax(0, 1fr);
		column-gap: 0.55rem;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) max-content;
	}

	.site-logo--header {
		width: 76px;
		height: 56px;
		min-height: 56px;
		max-height: none;
		flex-basis: 76px;
	}

	.site-logo--header img {
		height: 70px;
		max-height: none;
		transform: translate(-50%, -50%) translateY(2px);
	}

	.site-logo--footer {
		width: 170px;
	}

	.site-header [data-language-dropdown-toggle] {
		min-width: 70px;
		padding-inline: 0.5rem;
	}

	.site-header .language-switcher__chevron {
		display: block;
	}

	.site-header .header-cart {
		min-width: 44px;
		padding-inline: 0.45rem;
	}

	.site-header .header-cart__count {
		min-width: 16px;
		height: 16px;
		padding-inline: 0.2rem;
		font-size: 0.58rem;
	}

	.home #how-it-works .homepage-process__step-mark svg {
		width: 32px;
		height: 32px;
		flex-basis: 32px;
	}
}

@media (max-width: 430px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		grid-template-columns: max-content minmax(0, 1fr);
		padding-inline: 0.75rem;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) max-content;
	}
}

@media (max-width: 700px) {
	.site-header__inner {
		min-height: 72px;
	}

	.home #how-it-works {
		scroll-margin-top: 84px;
	}

	.home .site-main .hero__eyebrow {
		font-size: 13px;
	}

	.home .hero__lead {
		font-size: 16px;
	}

	.home .hero .button {
		font-size: 15px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover,
	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible {
		transform: none;
	}

	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover:not(.loading)::after,
	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible:not(.loading)::after {
		transform: translateY(-2px) !important;
	}
}

/* Single floating navigation capsule; the page remains visible around the header. */

.site-header {
	position: sticky;
	top: 10px;
	z-index: 1000;
	display: block;
	width: min(calc(100% - 32px), var(--etebar-container));
	max-width: var(--etebar-container);
	min-height: 76px;
	margin: 10px auto 0;
	border: 1px solid rgb(198 160 82 / 28%);
	border-radius: 18px;
	background: #031321;
	padding: 8px 18px;
	box-shadow: 0 10px 28px rgb(3 19 33 / 18%);
	backdrop-filter: none;
	overflow: visible;
    margin-block-end: calc(-1 * var(--etebar-header-overlap));
}

body.admin-bar .site-header {
	top: 42px;
}

.site-header__inner,
html[dir="rtl"] .site-header__inner {
	position: relative;
	width: 100%;
	max-width: none;
	min-height: 58px;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	padding: 0;
	box-shadow: none;
}

.site-logo--header {
	position: relative;
	display: inline-flex;
	width: 210px;
	height: auto;
	min-height: 0;
	max-height: 62px;
	flex: 0 0 210px;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}

.site-logo--header img {
	position: static;
	display: block;
	width: 210px;
	height: auto;
	max-width: 210px;
	max-height: 62px;
	object-fit: contain;
	transform: none;
}

@media (min-width: 1181px) {
	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		display: flex;
		grid-template-columns: none;
		align-items: center;
		gap: clamp(1rem, 1.35vw, 1.25rem);
	}

	.site-header__nav-group,
	html[dir="rtl"] .site-header__nav-group {
		position: static;
		display: block;
		width: auto;
		flex: 0 0 auto;
		margin: 0;
	}

	.site-header .site-nav__list {
		flex-wrap: nowrap;
		gap: clamp(0.8rem, 1vw, 1.05rem);
	}

	.site-header .site-nav__list a,
	.site-header .site-nav__secondary > a {
		height: 44px;
		padding-inline: 0.1rem;
		font-family: var(--etebar-sans);
		font-size: 15px;
		font-weight: 600;
	}

	.site-header__search-panel,
	.site-header__search-panel[hidden],
	html[dir="rtl"] .site-header__search-panel,
	html[dir="rtl"] .site-header__search-panel[hidden] {
		position: static;
		display: block;
		width: auto;
		min-width: 220px;
		max-width: 280px;
		flex: 0 1 280px;
		margin-inline-start: auto;
	}

	.site-header__search-inner {
		display: block;
	}

	.site-header__actions,
	html[dir="rtl"] .site-header__actions {
		width: auto;
		flex: 0 0 auto;
		gap: 8px;
		margin: 0;
	}

	.site-header__utility,
	html[dir="rtl"] .site-header__utility {
		gap: 8px;
	}
}

.site-header .etebar-product-search__controls {
	height: 44px;
	min-height: 44px;
	border-radius: 10px;
	background: #fbf8f1;
	overflow: hidden;
}

.site-header .etebar-product-search input[type="search"] {
	height: 42px;
	min-height: 42px;
	font-family: var(--etebar-sans);
}

.site-header .etebar-product-search button,
.site-header .etebar-product-search button[type="submit"] {
	height: 42px;
	min-height: 42px;
	border-radius: 0;
}

.site-header [data-language-dropdown-toggle],
.site-header .header-cart {
	height: 44px;
	min-height: 44px;
	border-color: rgb(247 242 232 / 26%);
	border-radius: 9px;
	font-family: var(--etebar-sans);
	font-size: 0.84rem;
	font-weight: 600;
}

.site-header [data-language-dropdown-toggle] {
	gap: 0.4rem;
	padding-inline: 0.65rem;
}

.site-header .header-cart {
	position: relative;
	min-width: 68px;
	gap: 0.35rem;
	padding-inline: 0.6rem;
}

.site-header .header-cart:has(.header-cart__count) {
	padding-inline-end: 1.7rem;
}

.site-header .header-cart__count {
	position: absolute;
	inset-block-start: 4px;
	inset-inline-end: 4px;
	min-width: 15px;
	height: 15px;
	padding-inline: 0.2rem;
	font-size: 0.56rem;
}

@media (max-width: 1180px) {
	.site-header {
		width: calc(100% - 20px);
		min-height: 60px;
		margin-top: 10px;
		border-radius: 14px;
		padding: 6px 10px;
	}

	.home .site-header {
		position: sticky;
		top: 10px;
	}

	.site-header__inner,
	html[dir="rtl"] .site-header__inner {
		display: grid;
		width: 100%;
		min-height: 46px;
		margin: 0;
		grid-template-columns: 125px minmax(0, 1fr);
		align-items: center;
		column-gap: 5px;
		border-radius: 0;
		padding: 0;
	}

	html[dir="rtl"] .site-header__inner {
		grid-template-columns: minmax(0, 1fr) 125px;
	}

	.site-logo--header {
		width: 125px;
		height: auto;
		min-height: 0;
		max-height: 44px;
		flex-basis: 125px;
	}

	.site-logo--header img {
		position: static;
		width: 125px;
		height: auto;
		max-width: 125px;
		max-height: 44px;
		transform: none;
	}

	.site-header__actions,
	html[dir="rtl"] .site-header__actions {
		width: auto;
		max-width: 100%;
		gap: 3px;
		justify-self: end;
	}

	html[dir="rtl"] .site-header__actions {
		justify-self: start;
	}

	.site-header__utility,
	html[dir="rtl"] .site-header__utility {
		gap: 4px;
	}
}

@media (max-width: 782px) {
	body.admin-bar .site-header {
		top: 56px;
	}
}

@media (max-width: 700px) {
	.site-header [data-language-dropdown-toggle] {
		width: 74px;
		min-width: 74px;
		max-width: 74px;
		gap: 0.25rem;
		padding-inline: 0.35rem;
		font-size: 0.8rem;
	}

	html[dir="rtl"] .site-header [data-language-dropdown-toggle] {
		width: 60px;
		min-width: 60px;
		max-width: 60px;
	}

	.site-header .header-cart {
		width: 44px;
		min-width: 44px;
		padding-inline: 0.4rem;
	}
}

@media (min-width: 1181px) {
	.site-header__inner > .site-logo--header {
		order: 0 !important;
	}

	.site-header__inner > .site-header__nav-group {
		order: 1 !important;
	}

	.site-header__inner > .site-header__search-panel {
		order: 2 !important;
	}

	.site-header__inner > .site-header__actions {
		order: 3 !important;
	}
}

/* Targeted final layout polish: continuous hero backdrop and tighter section rhythm. */

body.home {
	--home-floating-header-flow: 89px;
	background-color: #031525;
}

.home .site-main {
	margin-block-start: calc(-1 * var(--home-floating-header-flow));
}

.home .hero {
	padding-block-start: clamp(3.5rem, 7vw, 6rem);
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
	align-items: center;
	padding-inline: 12.6875px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):not(.loading)::after,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:not(.loading)::after {
	display: inline-block;
	font-size: 27px !important;
	font-weight: 500;
	line-height: 1;
	transform: translateY(-2.5px) !important;
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover:not(.loading)::after,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible:not(.loading)::after {
	transform: translate(2px, -2.5px) !important;
}

html[dir="rtl"] :is(.woocommerce, .woocommerce-page) ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover:not(.loading)::after,
html[dir="rtl"] :is(.woocommerce, .woocommerce-page) ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible:not(.loading)::after,
html[dir="rtl"] body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover:not(.loading)::after,
html[dir="rtl"] body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible:not(.loading)::after {
	transform: translate(-2px, -2.5px) !important;
}

.home .home-section {
	--home-section-space-y: clamp(2.375rem, 2.9vw, 2.625rem);
}

.home #why-etebar .home-trust__benefits.home-section__body {
	width: 100%;
	margin-block-start: 1.375rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home #why-etebar .home-trust__benefits li,
.home #why-etebar .home-trust__benefits li:nth-child(n) {
	width: 100%;
	justify-content: flex-start;
}

.home #why-etebar .home-trust__benefits li > div {
	width: 100%;
}

.home #faq .home-section__body--narrow {
	width: min(100%, var(--home-section-header-width));
	max-width: var(--home-section-header-width);
	margin-inline: auto !important;
}

.site-logo--footer {
	width: 240px;
	height: auto;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.site-footer {
	background-color: #071f30;
	background-image: none;
}

.site-logo--footer img {
	position: static;
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	max-height: none;
	object-fit: contain;
	transform: none;
}

@media (max-width: 1180px) {
	body.home {
		--home-floating-header-flow: 70px;
	}
}

@media (max-width: 700px) {
	.home .home-section {
		--home-section-space-y: 1.95rem;
	}

	.home #why-etebar .home-trust__benefits.home-section__body {
		margin-block-start: 1.25rem;
		grid-template-columns: 1fr;
	}

	.site-logo--footer {
		width: 190px;
	}
}

/* Targeted request-card and floating-header refinement. */

.site-header,
.home .site-header {
	background: rgb(3 19 33 / 94%);
	-webkit-backdrop-filter: blur(12px) saturate(115%);
	backdrop-filter: blur(12px) saturate(115%);
}

.woocommerce ul.products > li.etebar-request-card,
.woocommerce-page ul.products > li.etebar-request-card {
	display: flex !important;
	width: 100% !important;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	float: none !important;
	flex-direction: column;
	border: 1px solid var(--etebar-border);
	border-radius: 9px;
	background: var(--etebar-paper);
	box-shadow: none;
	list-style: none;
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

/* Approved shop additions */

.woocommerce-shop .woocommerce-main,
.post-type-archive-product .woocommerce-main {
    padding-block-start: calc(var(--etebar-header-overlap) + 1.5rem);
}

.woocommerce-pagination.etebar-pagination--enhanced {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

.etebar-shop-load-more {
    display: grid;
    justify-items: center;
    gap: 0.5rem;
    margin: 1.75rem 0 0;
}

.etebar-shop-load-more[hidden] {
    display: none;
}

.etebar-shop-load-more .button {
    min-width: 210px;
    min-height: 48px;
}

.etebar-shop-load-more .button[hidden] {
    display: none;
}

.etebar-shop-load-more p {
    min-height: 1.4em;
    margin: 0;
    color: var(--etebar-gray);
    font-size: 0.875rem;
}

.etebar-request-card--ending {
    display: grid;
    width: 100%;
    max-width: none;
    grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1fr);
    align-items: stretch;
    margin: clamp(2rem, 4vw, 3rem) 0 0;
    overflow: hidden;
    border: 1px solid var(--etebar-border);
    border-radius: 10px;
    background: var(--etebar-paper);
}

.etebar-request-card--ending .etebar-request-card__visual {
	    height: 100%;
	    min-height: 160px;
}

.etebar-request-card--ending .etebar-request-card__content {
	    justify-content: center;
	    padding: clamp(1.35rem, 2.5vw, 1.9rem);
}

.etebar-request-card--ending .etebar-request-card__visual svg {
	    width: 76px;
	    height: 76px;
}

.etebar-request-card--ending .etebar-request-card__content > p:not(.etebar-request-card__kicker) {
	    max-width: 64ch;
	    font-size: 1rem;
	    line-height: 1.6;
}

.etebar-bundle-contents__header {
    display: flex;
    min-height: 54px;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.etebar-bundle-contents__header h3 {
    margin: 0;
    font-family: var(--etebar-sans);
    font-size: 1rem;
}

.etebar-bundle-contents__header small {
    color: var(--etebar-gray);
    font-size: 0.8125rem;
    font-weight: 650;
}

/* Approved shop additions */

@media (max-width: 700px) {

    .etebar-request-card--ending {
        grid-template-columns: 1fr;
    }

	    .etebar-request-card--ending .etebar-request-card__visual {
	        min-height: 96px;
	    }
}

.etebar-request-card:hover {
	border-color: rgb(198 160 82 / 62%);
	box-shadow: 0 9px 22px rgb(3 19 33 / 7%);
	transform: translateY(-1px);
}

.etebar-request-card__visual {
	display: grid;
	width: 100%;
	height: 128px;
	min-height: 128px;
	flex: 0 0 128px;
	place-items: center;
	border-block-end: 1px solid rgb(198 160 82 / 30%);
	background: var(--etebar-navy);
	color: var(--etebar-gold-light);
}

.etebar-request-card__visual svg {
	display: block;
	width: 56px;
	height: 56px;
}

.etebar-request-card__content {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	padding: 16px 15px 15px;
	text-align: start;
}

.etebar-request-card__kicker {
	margin: 0 0 0.35rem;
	color: var(--etebar-gold-dark);
	font-family: var(--etebar-sans);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.11em;
	line-height: 1.3;
	text-transform: uppercase;
}

.etebar-request-card__content h2 {
	margin: 0 0 0.5rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.3rem, 1.55vw, 1.45rem);
	line-height: 1.18;
}

.etebar-request-card__content > p:not(.etebar-request-card__kicker) {
	margin: 0 0 0.9rem;
	color: var(--etebar-text-muted);
	font-size: 0.9375rem;
	line-height: 1.5;
}

.etebar-request-card__action.button.button--primary {
	display: inline-flex;
	width: fit-content;
	min-height: 44px;
	margin-top: auto;
	align-items: center;
	justify-content: center;
	padding: 0.65rem 0.9rem;
	border-radius: 8px;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
}

.etebar-request-card__action.button.button--primary:hover,
.etebar-request-card__action.button.button--primary:focus-visible {
	transform: translateY(-1px);
}

html[dir="rtl"] .etebar-request-card__kicker {
	letter-spacing: 0;
}

@media (max-width: 559px) {
	.etebar-request-card__visual {
		height: 108px;
		min-height: 108px;
		flex-basis: 108px;
	}

	.etebar-request-card__content {
		padding: 15px;
	}

	.etebar-request-card__action.button.button--primary {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.etebar-request-card,
	.etebar-request-card:hover,
	.etebar-request-card__action.button.button--primary:hover,
	.etebar-request-card__action.button.button--primary:focus-visible {
		transition: none;
		transform: none;
	}
}

/* Targeted floating-header transparency and desktop hero artwork fit. */

.site-header,
.home .site-header {
	border: 1px solid rgb(198 160 82 / 28%);
	background: rgb(3 19 33 / 94%);
	box-shadow: 0 10px 28px rgb(3 19 33 / 18%);
	-webkit-backdrop-filter: blur(14px) saturate(115%);
	backdrop-filter: blur(14px) saturate(115%);
    margin-block-end: calc(-1 * var(--etebar-header-overlap));
}

@media (min-width: 1181px) {
	.home .hero {
		overflow: hidden;
		background: #000a14;
	}

	.home .hero__layout {
		min-height: 520px;
	}

	.home .hero .hero-editorial img,
	html[data-etebar-language^="en"] .home .hero .hero-editorial__image--ltr {
		top: auto;
		right: 0;
		bottom: 0;
		width: auto;
		height: 565px;
		max-height: none;
		object-fit: contain;
		object-position: right center;
		-webkit-mask-image: none;
		mask-image: none;
	}

	html[data-etebar-language^="fa"] .home .hero .hero-editorial__image--rtl,
	html[data-etebar-language^="ps"] .home .hero .hero-editorial__image--rtl {
		top: auto;
		right: auto;
		bottom: 0;
		left: 0;
		width: auto;
		height: 565px;
		max-height: none;
		object-fit: contain;
		object-position: left center;
		-webkit-mask-image: none;
		mask-image: none;
	}
}

/* Focused Special Request presentation: Etebar commerce system, normal document flow. */

.site-logo,
.site-logo img {
	-webkit-user-drag: none;
	-webkit-user-select: none;
	user-select: none;
}

body.page-template-page-special-request {
	--special-request-header-flow: 89px;
	background: #031321;
}

.special-request-page {
	margin-block-start: 0;
	background: #f5f0e6;
}

.special-request-page .order-request-hero {
	padding: calc(var(--special-request-header-flow) + 3rem) 0 2.875rem !important;
	background: #031321 !important;
	background-image: none !important;
}

.special-request-page .order-request-hero::before,
.special-request-page .order-request-hero::after {
	display: none !important;
	background: none !important;
}

.special-request-page .order-request-hero__layout {
	display: grid;
	min-height: 0 !important;
	grid-template-columns: minmax(0, 1.35fr) minmax(250px, 0.65fr) !important;
	align-items: center;
	gap: clamp(2rem, 6vw, 5rem) !important;
}

.special-request-page .order-request-hero__intro {
	max-width: 720px;
}

.special-request-page .order-request-hero__intro .eyebrow,
.special-request-page .order-request-process .eyebrow,
.special-request-page .order-request-item__label,
.special-request-page .order-request-success .eyebrow {
	color: #c6a052 !important;
	font-family: var(--etebar-sans) !important;
	font-size: 0.875rem !important;
	font-weight: 600;
	letter-spacing: 0.11em;
	line-height: 1.4;
}

.special-request-page .order-request-hero__intro h1 {
	max-width: 15ch;
	margin: 0 0 1rem;
	color: #f7f2e8;
	font-family: var(--etebar-serif);
	font-size: clamp(3rem, 5vw, 4.5rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 0.98;
}

.special-request-page .order-request-hero__intro > p:last-of-type {
	max-width: 57ch;
	margin: 0;
	color: rgb(247 242 232 / 82%);
	font-size: clamp(1rem, 1.25vw, 1.125rem);
	line-height: 1.7;
}

.special-request-page .order-request-hero__aside {
	padding: 0.25rem 0 0.25rem clamp(1.25rem, 3vw, 2rem);
	border-inline-start: 1px solid rgb(198 160 82 / 60%);
}

.special-request-page .order-request-hero__aside p {
	max-width: 31ch;
	margin: 0 0 1rem;
	color: #f7f2e8;
	font-family: var(--etebar-sans);
	font-size: 1rem;
	line-height: 1.6;
}

.special-request-page .order-request-hero__aside ul {
    display: grid;
    gap: 0.45rem;
    max-width: 40ch;
    margin: 0 0 1rem;
    padding-inline-start: 1.1rem;
    color: #f7f2e8;
    font: 600 0.9rem/1.45 var(--etebar-sans);
}

.special-request-page .order-request-hero__aside .text-link {
	color: #d7b875;
}

.special-request-page .order-request-process {
	padding: clamp(2.5rem, 4vw, 3.25rem) 0;
	border-block: 1px solid rgb(198 160 82 / 28%);
	background: #fbf8f1;
    padding-block: clamp(2rem, 3vw, 2.6rem);
}

.special-request-page .order-request-process .container {
	display: block !important;
}

.special-request-page .order-request-process__heading {
	max-width: 620px;
	margin: 0 0 clamp(1.25rem, 2vw, 1.75rem);
	padding: 0 !important;
    margin-bottom: 1rem;
}

.special-request-page .order-request-process__heading h2 {
	margin: 0;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: clamp(2rem, 3.3vw, 3rem);
	font-weight: 500;
	line-height: 1.08;
}

.special-request-page .order-request-process__steps {
	display: grid !important;
	margin: 0;
	padding: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1.25rem, 3vw, 2.25rem) !important;
	border-block-start: 1px solid rgb(198 160 82 / 58%);
	padding-block-start: 1.25rem;
	list-style: none;
}

.special-request-page .order-request-process__steps li {
	display: grid;
	min-width: 0;
	margin: 0;
	padding: 0;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: 0.9rem;
	border: 0 !important;
	border-block-start: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.special-request-page .order-request-process__steps li > span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid rgb(198 160 82 / 72%);
	border-radius: 50%;
	background: #031321 !important;
	color: #f3d99c !important;
	font-size: 0.73rem;
	font-weight: 600;
}

.special-request-page .order-request-process__steps p {
	margin: 0;
	color: #59636b;
	font-family: var(--etebar-sans);
	font-size: 1rem;
	line-height: 1.55;
}

.special-request-page .order-request-process__steps strong {
	display: block;
	margin: 0 0 0.35rem;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.2;
}

.special-request-page .order-request-content {
	padding: clamp(2.75rem, 6vw, 5rem) 0 clamp(3.5rem, 7vw, 6rem) !important;
	background: #f5f0e6 !important;
}

.special-request-page .order-request-layout {
	display: grid !important;
	max-width: 980px;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 1.5rem !important;
}

.special-request-page .order-request-summary {
	position: static !important;
	top: auto !important;
	display: block !important;
	margin: 0 !important;
}

.special-request-page .order-request-summary > *,
.special-request-page .order-request-item {
	position: static !important;
	margin: 0 !important;
	padding: clamp(1.5rem, 3vw, 2rem) !important;
	border: 1px solid rgb(198 160 82 / 52%) !important;
	border-radius: 9px !important;
	background: #fbf8f1 !important;
	box-shadow: none !important;
}

.special-request-page .order-request-item h2 {
	margin: 0 0 1rem;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: clamp(1.65rem, 3vw, 2.1rem);
	font-weight: 500;
	line-height: 1.12;
}

.special-request-page .order-request-item ul {
	display: grid;
	margin: 0 0 1rem;
	padding: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem 1.25rem;
	list-style: none;
}

.special-request-page .order-request-item li {
	position: relative;
	padding-inline-start: 1rem;
	color: #4f5c66;
	font-family: var(--etebar-sans);
	font-size: 0.92rem;
	line-height: 1.45;
}

.special-request-page .order-request-item li::before {
	position: absolute;
	inset-block-start: 0.6em;
	inset-inline-start: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #c6a052;
	content: "";
}

.special-request-page .text-link,
.special-request-page .order-request-item .text-link {
	color: #173a55;
	text-decoration-color: #c6a052;
	text-underline-offset: 0.25em;
}

.special-request-page .order-request-panel {
	padding: 0 !important;
	border: 1px solid rgb(198 160 82 / 58%) !important;
	border-radius: 9px !important;
	background: #fbf8f1 !important;
	box-shadow: none !important;
	overflow: hidden;
}

.special-request-page .order-request-panel__intro {
	padding: clamp(1.6rem, 4vw, 2.5rem) !important;
	border-block-end: 1px solid rgb(198 160 82 / 30%);
	background: #f7f2e8;
    padding-block: clamp(1.25rem, 2.5vw, 1.75rem) !important;
}

.special-request-page .order-request-panel__intro h2 {
	margin: 0 0 0.55rem;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: clamp(2rem, 4vw, 2.75rem);
	font-weight: 500;
	line-height: 1.08;
}

.special-request-page .order-request-panel__intro > p:last-child {
	max-width: 64ch;
	margin: 0;
	color: #59636b;
	font-family: var(--etebar-sans);
	font-size: 1rem;
	line-height: 1.6;
}

.special-request-page .order-request-form {
	counter-reset: request-section;
	padding: 0 !important;
}

.special-request-page .order-request-form .order-request-form__group {
	position: relative;
	margin: 0 !important;
	padding: clamp(1.5rem, 3.5vw, 2.25rem) clamp(1.6rem, 4vw, 2.5rem) !important;
	counter-increment: none !important;
	border: 0 !important;
	border-block-end: 1px solid rgb(198 160 82 / 24%) !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.special-request-page .order-request-form .order-request-form__group:last-child {
	border-block-end: 0 !important;
}

.special-request-page .order-request-form__group legend {
	width: 100%;
	margin: 0 0 0.4rem;
	padding: 0;
	counter-increment: request-section;
	color: #031321 !important;
	font-family: var(--etebar-serif);
	font-size: 1.65rem !important;
	font-weight: 600;
	line-height: 1.25;
}

.special-request-page .order-request-form__group legend::before {
	display: inline-grid !important;
	width: 28px !important;
	height: 28px !important;
	margin-inline-end: 0.65rem !important;
	place-items: center;
	border: 1px solid rgb(198 160 82 / 70%) !important;
	border-radius: 50% !important;
	background: #031321 !important;
	color: #f3d99c !important;
	content: counter(request-section) !important;
	font-family: var(--etebar-sans) !important;
	font-size: 0.73rem !important;
	font-weight: 600 !important;
}

.special-request-page .order-request-form__help {
	margin: 0 0 1.2rem;
	color: #677078 !important;
	font-family: var(--etebar-sans);
	font-size: 0.95rem;
	line-height: 1.5;
}

.special-request-page .order-request-form .field-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.special-request-page .order-request-form label {
	margin: 0 0 1rem;
}

.special-request-page .order-request-form label:last-child,
.special-request-page .order-request-form .field-grid label {
	margin-bottom: 0;
}

.special-request-page .order-request-form label > span:not(.order-request-field-error) {
	color: #173a55 !important;
	font-family: var(--etebar-sans) !important;
	font-size: 0.9375rem;
	font-weight: 600;
}

.special-request-page .order-request-form label span em {
	color: #7e6734 !important;
	font-size: 0.72rem;
	font-style: normal;
	font-weight: 600;
}

.special-request-page .order-request-form input,
.special-request-page .order-request-form textarea {
	min-height: 48px;
	margin-top: 0.45rem;
	border: 1px solid #b8b2a5 !important;
	border-radius: 7px !important;
	background: #fffdf8 !important;
	color: #031321 !important;
	font-family: var(--etebar-sans);
	font-size: 1rem;
	box-shadow: none !important;
}

.special-request-page .order-request-form textarea {
	min-height: 84px;
	resize: vertical;
}

.special-request-page .order-request-form input:focus,
.special-request-page .order-request-form textarea:focus {
	border-color: #c6a052 !important;
	outline: 0;
	box-shadow: none !important;
}

.special-request-page .order-request-form input:focus-visible,
.special-request-page .order-request-form textarea:focus-visible,
.special-request-page .order-request-form button:focus-visible,
.special-request-page a:focus-visible {
	outline: 3px solid #173a55 !important;
	outline-offset: 3px;
	box-shadow: 0 0 0 2px #f3d99c !important;
}

.special-request-page .order-request-form [aria-invalid="true"] {
	border-color: #8f3443 !important;
	background: #fff9f8 !important;
}

.special-request-page .order-request-form__confirmation {
	background: #f7f2e8 !important;
}

.special-request-page .order-request-consent {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: 0.75rem;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.special-request-page .order-request-consent input {
	width: 20px;
	height: 20px;
	min-height: 20px;
	margin: 0.15rem 0 0;
	accent-color: #173a55;
}

.special-request-page .order-request-consent span {
	color: #374854 !important;
	font-size: 0.94rem;
	font-weight: 500 !important;
	line-height: 1.55;
}

.special-request-page .order-request-submit {
	display: flex;
	margin-top: 1.25rem;
	align-items: center;
}

.special-request-page .order-request-submit .button,
.special-request-page .button--primary {
	background: #173a55 !important;
	color: #fff !important;
	font-family: var(--etebar-sans) !important;
	font-size: 0.9375rem;
}

.special-request-page .order-request-errors,
.special-request-page .order-request-success {
	border-color: rgb(198 160 82 / 58%) !important;
	background: #fbf8f1 !important;
	color: #031321 !important;
	box-shadow: none !important;
}

.special-request-page .order-request-success {
	max-width: 860px;
	margin-inline: auto;
}

.special-request-page .order-request-success__reference {
	color: #7e6734 !important;
}

.special-request-page [id] {
	scroll-margin-top: 120px;
}

html[dir="rtl"] .special-request-page .order-request-hero__aside {
	padding-right: clamp(1.25rem, 3vw, 2rem);
	padding-left: 0;
}

@media (max-width: 760px) {
	body.page-template-page-special-request {
		--special-request-header-flow: 70px;
	}

	.special-request-page .order-request-hero {
		padding: calc(var(--special-request-header-flow) + 3.25rem) 0 3rem !important;
	}

	.special-request-page .order-request-hero__layout {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 1.75rem !important;
	}

	.special-request-page .order-request-hero__intro h1 {
		font-size: clamp(2.45rem, 11vw, 3.25rem);
	}

	.special-request-page .order-request-hero__aside {
		padding-inline-start: 1rem;
	}

	.special-request-page .order-request-process {
		padding: 2.75rem 0;
	}

	.special-request-page .order-request-process__steps,
	.special-request-page .order-request-item ul,
	.special-request-page .order-request-form .field-grid {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.special-request-page .order-request-process__steps {
		gap: 1.25rem !important;
	}

	.special-request-page .order-request-content {
		padding: 2.5rem 0 4rem !important;
	}

	.special-request-page .order-request-summary > *,
	.special-request-page .order-request-item,
	.special-request-page .order-request-panel__intro,
	.special-request-page .order-request-form .order-request-form__group {
		padding: 1.35rem !important;
	}

	.special-request-page .order-request-submit .button {
		width: 100%;
	}

	html[dir="rtl"] .special-request-page .order-request-hero__aside {
		padding-right: 1rem;
	}
}

/* Approved homepage trust hierarchy. */

.home #why-etebar.home-trust {
	padding-block: 1rem !important;
	background: #f5f0e6;
}

.home #why-etebar .home-section__intro-row,
.home #why-etebar .home-trust__heading {
	width: 100%;
	max-width: 1040px !important;
	margin-inline: auto;
	text-align: center;
}

.home #why-etebar .home-trust__heading .home-section__kicker {
	margin: 0 0 0.55rem;
	color: #173a55;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	line-height: 1.4;
	text-transform: uppercase;
}

.home #why-etebar .home-trust__heading .home-section__kicker::before,
.home #why-etebar .home-trust__heading .home-section__kicker::after {
	display: none !important;
}

.home #why-etebar .home-trust__heading .home-section__title {
	max-width: none;
	margin: 0;
	color: #08283d;
	font-family: var(--etebar-serif);
	font-size: clamp(2.35rem, 3.3vw, 3rem);
	font-weight: 600;
	letter-spacing: -0.035em;
	line-height: 1.05;
}

.home #why-etebar .home-trust__heading .home-section__intro {
	width: 100%;
	max-width: 1000px !important;
	margin: 0.7rem auto 0;
	color: #4d606d;
	font-family: var(--etebar-sans);
	font-size: 1rem;
	line-height: 1.55;
}

.home #why-etebar .home-trust__divider {
	display: block;
	width: 56px;
	height: 2px;
	margin: 0.5rem auto 0;
	border-radius: 2px;
	background: #c6a052;
}

.home #why-etebar .home-trust__benefits.home-section__body {
	display: grid !important;
	width: 100%;
	margin: 0.7rem 0 0 !important;
	padding: 0 !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2.5vw, 2rem) !important;
	list-style: none;
}

.home #why-etebar .home-trust__benefits li,
.home #why-etebar .home-trust__benefits li:nth-child(n) {
	display: grid !important;
	width: 100% !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 clamp(0.25rem, 1vw, 0.75rem) !important;
	grid-template-columns: 42px minmax(0, 1fr) !important;
	justify-items: start !important;
	align-items: start;
	gap: 0.55rem !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: start !important;
}

.home #why-etebar .home-trust__icon {
	display: grid;
	width: 42px;
	height: 42px;
	margin: 0;
	place-items: center;
	border: 1px solid rgb(198 160 82 / 72%);
	border-radius: 50%;
	background: #08283d;
	color: #f0cf85;
}

.home #why-etebar .home-trust__icon svg {
	width: 20px;
	height: 20px;
}

.home #why-etebar .home-trust__benefits li > div {
	width: 100%;
}

.home #why-etebar .home-trust__benefits h3 {
	margin: 0;
	color: #08283d;
	font-family: var(--etebar-serif);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.2;
}

.special-request-page .order-request-form__group legend.screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	padding: 0 !important;
	border: 0 !important;
	white-space: nowrap !important;
}

.home #why-etebar .home-trust__benefits p {
	max-width: 34ch;
	margin: 0.3rem 0 0;
	color: #526572;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	line-height: 1.42;
}

.home #why-etebar .home-trust__cards {
	display: grid;
	margin: 0.65rem 0 0;
	padding: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	list-style: none;
}

.home #why-etebar .home-trust__cards li {
	min-width: 0;
	margin: 0;
	padding: 0.65rem 0.9rem;
	border: 1px solid rgb(198 160 82 / 44%);
	border-radius: 9px;
	background: #fbf8f1;
	box-shadow: none;
	text-align: start;
}

.home #why-etebar .home-trust__cards h3 {
	margin: 0 0 0.45rem;
	color: #08283d;
	font-family: var(--etebar-serif);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.22;
}

.home #why-etebar .home-trust__cards p {
	margin: 0;
	color: #526572;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem;
	line-height: 1.42;
}

/* Remove leading zero glyphs from legacy customer-visible step labels without changing their text or data. */

.products-overview-page dt::first-letter,
.contact-page .contact-route__label::first-letter {
	font-size: 0;
}

.how-it-works-page .process-list--page,
.category-detail-page--caution .product-detail-grid {
	counter-reset: visible-step;
}

.how-it-works-page .process-list--page > li,
.category-detail-page--caution .product-detail-card {
	counter-increment: visible-step;
}

.how-it-works-page .process-list--page > li > span,
.category-detail-page--caution .product-detail-card__meta > span {
	font-size: 0 !important;
}

.how-it-works-page .process-list--page > li > span::after,
.category-detail-page--caution .product-detail-card__meta > span::after {
	content: counter(visible-step);
	font-size: 0.75rem;
}

@media (max-width: 700px) {
	.home #why-etebar.home-trust {
		padding-block: 2.25rem !important;
	}

	.home #why-etebar .home-trust__heading .home-section__title {
		font-size: clamp(2.15rem, 10vw, 2.65rem);
	}

	.home #why-etebar .home-trust__heading .home-section__intro {
		font-size: 1rem;
	}

	.home #why-etebar .home-trust__benefits.home-section__body,
	.home #why-etebar .home-trust__cards {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 0.85rem !important;
	}

	.home #why-etebar .home-trust__benefits li,
	.home #why-etebar .home-trust__benefits li:nth-child(n) {
		grid-template-columns: 42px minmax(0, 1fr) !important;
		justify-items: start !important;
		align-items: start;
		padding: 0.85rem 0 !important;
		text-align: start !important;
	}

	.home #why-etebar .home-trust__benefits p {
		max-width: none;
		margin-inline: 0;
	}

	.home #why-etebar .home-trust__cards li {
		padding: 1rem;
	}
}

/* Focused usability pass: simplified homepage trust and aligned Special Request form. */

.home #why-etebar.home-trust {
	padding-block: 2rem !important;
}

.home #why-etebar .home-trust__heading {
	max-width: 960px !important;
}

.home #why-etebar .home-trust__heading .home-section__intro {
	max-width: 680px !important;
	margin-top: 0.85rem;
}

.home #why-etebar .home-trust__divider {
	margin-top: 0.85rem;
}

.home #why-etebar .home-trust__benefits.home-section__body {
	margin-top: 1.5rem !important;
	gap: 1.25rem !important;
}

.home #why-etebar .home-trust__benefits li,
.home #why-etebar .home-trust__benefits li:nth-child(n),
.home #why-etebar .home-trust__benefits #delivery-proof {
	display: flex !important;
	min-height: 168px;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.75rem !important;
	padding: 1.25rem !important;
	border: 1px solid rgb(198 160 82 / 46%) !important;
	border-radius: 10px !important;
	background: #fbf8f1 !important;
	box-shadow: 0 10px 24px rgb(3 19 33 / 4%) !important;
	text-align: start !important;
}

.home #why-etebar .home-trust__icon {
	display: inline-flex;
	width: 48px;
	height: 48px;
	min-width: 48px;
	flex: 0 0 48px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
}

.home #why-etebar .home-trust__icon svg {
	width: 24px;
	height: 24px;
}

.home #why-etebar .home-trust__benefits h3 {
	margin: 0 0 0.35rem;
	font-size: 1.375rem;
	line-height: 1.22;
}

.home #why-etebar .home-trust__benefits p {
	max-width: 34ch;
	margin: 0;
	font-size: 1rem;
	line-height: 1.55;
}

.special-request-page .order-request-process__steps {
	align-items: stretch;
}

.special-request-page .order-request-process__steps li {
	display: block;
}

.special-request-page .order-request-process__title-row {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 14px;
}

.special-request-page .order-request-process__badge {
	display: inline-flex;
	width: 40px;
	height: 40px;
	min-width: 40px;
	flex: 0 0 40px;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	border: 1px solid rgb(198 160 82 / 72%);
	border-radius: 50%;
	background: #031321;
	color: #f3d99c;
	padding: 0;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1;
}

.special-request-page .order-request-process__title-row h3 {
	margin: 0;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.2;
}

.special-request-page .order-request-process__steps li > p {
	max-width: 34ch;
	margin: 0.75rem 0 0 54px;
}

.special-request-page .order-request-content {
	padding-block: 3.25rem 5rem !important;
}

.special-request-page .order-request-layout {
	max-width: 1080px;
	gap: 0 !important;
}

.special-request-page .order-request-summary > *,
.special-request-page .order-request-item {
	padding: 1.5rem 1.75rem !important;
}

.special-request-page .order-request-item h2 {
	margin-bottom: 0.65rem;
    font-size: 1.55rem;
}

.special-request-page .order-request-item ul {
	margin-bottom: 0.65rem;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 0.5rem 1rem;
}

.special-request-page .order-request-form {
	counter-reset: none;
}

.special-request-page .order-request-form .order-request-form__group {
	padding: 2rem 2.5rem !important;
}

.special-request-page .order-request-form .order-request-form__group + .order-request-form__group {
	margin-top: 0 !important;
}

.special-request-page .order-request-form__group legend {
	width: 100%;
	margin: 0;
	padding: 0;
	counter-increment: none;
	font-size: 1.7rem !important;
	line-height: 1.2;
}

.special-request-page .order-request-form__group legend::before {
	display: none !important;
	content: none !important;
}

.special-request-page .order-request-form__title-row {
	display: flex;
	width: 100%;
	min-width: 0;
	align-items: center;
	gap: 12px;
}

.special-request-page .order-request-form__title-row h3 {
	margin: 0;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.2;
}

.special-request-page .order-request-form__badge {
	display: inline-flex;
	width: 34px;
	height: 34px;
	min-width: 34px;
	flex: 0 0 34px;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	border: 1px solid rgb(198 160 82 / 72%);
	border-radius: 50%;
	background: #031321;
	color: #f3d99c;
	padding: 0;
	font-family: var(--etebar-sans);
	font-size: 0.82rem;
	font-weight: 600;
	line-height: 1;
}

.special-request-page .order-request-form__help {
	margin: 1.5rem 0;
	font-size: 1rem;
	line-height: 1.55;
}

.special-request-page .order-request-form .field-grid {
	gap: 1.25rem 1rem;
}

.special-request-page .order-request-form label {
	margin: 0 0 1.25rem;
}

.special-request-page .order-request-form input,
.special-request-page .order-request-form textarea {
	min-height: 56px;
	font-size: 1rem;
	line-height: 1.45;
}

.special-request-page .order-request-form textarea {
	min-height: 96px;
}

.special-request-page .order-request-form input:focus,
.special-request-page .order-request-form textarea:focus {
	border-color: #173a55 !important;
}

.special-request-page .order-request-form input:focus-visible,
.special-request-page .order-request-form textarea:focus-visible {
	outline: 3px solid rgb(198 160 82 / 58%) !important;
	outline-offset: 2px;
	box-shadow: 0 0 0 1px #173a55 !important;
}

.special-request-page .order-request-field-error {
	display: block;
	margin-top: 0.5rem;
	font-size: 0.875rem;
	line-height: 1.45;
}

.special-request-page .order-request-form__confirmation .order-request-consent {
	margin-top: 1.5rem;
}

.special-request-page .order-request-submit {
	margin-top: 1.5rem;
}

.special-request-page .order-request-submit .button {
	min-height: 52px;
}

.special-request-page [id],
.special-request-page fieldset {
	scroll-margin-top: 132px;
}

html[dir="rtl"] .special-request-page .order-request-process__steps li > p {
	margin-right: 54px;
	margin-left: 0;
}

@media (max-width: 700px) {
	.home #why-etebar.home-trust {
		padding-block: 3.25rem !important;
	}

	.home #why-etebar .home-trust__heading {
		text-align: center;
	}

	.home #why-etebar .home-trust__benefits.home-section__body {
		margin-top: 1.75rem !important;
		gap: 1rem !important;
	}

	.home #why-etebar .home-trust__benefits li,
	.home #why-etebar .home-trust__benefits li:nth-child(n),
	.home #why-etebar .home-trust__benefits #delivery-proof {
		min-height: 0;
		align-items: flex-start;
		padding: 1.35rem !important;
		text-align: start !important;
	}

	.special-request-page .order-request-process__steps {
		gap: 1.5rem !important;
	}

	.special-request-page .order-request-process__title-row h3 {
		font-size: 1.25rem;
	}

	.special-request-page .order-request-process__steps li > p {
		max-width: none;
	}

	.special-request-page .order-request-content {
		padding-block: 2.75rem 3rem !important;
	}

	.special-request-page .order-request-summary > *,
	.special-request-page .order-request-item {
		padding: 1.35rem !important;
	}

	.special-request-page .order-request-item ul {
		gap: 0.75rem;
        grid-template-columns: 1fr;
	}

	.special-request-page .order-request-form .order-request-form__group {
		padding: 1.875rem 1.25rem !important;
        padding-block: 1.5rem !important;
	}

	.special-request-page .order-request-form__group legend {
		font-size: 1.45rem !important;
	}

	.special-request-page .order-request-form__title-row h3 {
		font-size: 1.45rem;
	}

	.special-request-page .order-request-form__badge {
		width: 34px;
		height: 34px;
		min-width: 34px;
		flex-basis: 34px;
	}

	.special-request-page .order-request-form__help {
		margin-block: 1.5rem;
	}

	.special-request-page .order-request-form .field-grid {
		gap: 1.25rem;
	}
}

/* Approved Delivery Proof additions */

.delivery-proof-page .content-detail-hero {
    display: block;
}

.delivery-proof-page .content-detail-hero__intro {
    max-width: 820px;
}

.delivery-proof-page .page-hero h1 {
    max-width: 16ch;
    font-size: clamp(3rem, 5vw, 4.8rem);
}

.delivery-proof-page__note {
    margin-top: 1rem !important;
    color: var(--etebar-gold-light) !important;
    font-size: 0.95rem !important;
    font-weight: 600;
}

.delivery-proof-page__content {
    background: var(--etebar-ivory);
}

.delivery-proof-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.delivery-proof-cards article {
    min-width: 0;
    border: 1px solid var(--etebar-border);
    border-top: 2px solid var(--etebar-gold);
    border-radius: var(--etebar-surface-radius);
    background: var(--etebar-paper);
    padding: clamp(1.35rem, 2.5vw, 1.8rem);
    box-shadow: var(--etebar-surface-shadow);
}

.delivery-proof-cards h2,
.delivery-proof-receive h2 {
    margin: 0 0 0.65rem;
    color: var(--etebar-navy);
    font-size: clamp(1.35rem, 2vw, 1.65rem);
    line-height: 1.2;
}

.delivery-proof-cards p {
    margin: 0;
    color: var(--etebar-gray);
    font-family: var(--etebar-sans);
    line-height: 1.65;
}

.delivery-proof-receive {
    display: grid;
    grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.3fr);
    align-items: start;
    gap: 2rem;
    margin-top: 1.25rem;
    border: 1px solid var(--etebar-border);
    border-radius: var(--etebar-surface-radius);
    background: color-mix(in srgb, var(--etebar-muted) 55%, var(--etebar-paper));
    padding: clamp(1.35rem, 3vw, 2rem);
}

.delivery-proof-receive ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem 1.25rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.delivery-proof-receive li {
    position: relative;
    padding-inline-start: 1rem;
    color: var(--etebar-navy);
    font-family: var(--etebar-sans);
    font-weight: 600;
    line-height: 1.5;
}

.delivery-proof-receive li::before {
    position: absolute;
    inset-block-start: 0.62em;
    inset-inline-start: 0;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--etebar-gold);
    content: "";
}

.delivery-proof-page .page-hero {
    padding-block: clamp(2.75rem, 4.5vw, 4rem);
}

.delivery-proof-page__content {
    padding-block: clamp(2.5rem, 4vw, 3.5rem);
}

.delivery-proof-flow {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0;
    padding: 0;
    border-block: 1px solid var(--etebar-border);
    list-style: none;
}

.delivery-proof-flow li {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 0.85rem;
    padding: 1.5rem;
}

.delivery-proof-flow li + li {
    border-inline-start: 1px solid var(--etebar-border);
}

.delivery-proof-flow li > span {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid var(--etebar-gold);
    border-radius: 50%;
    background: var(--etebar-navy);
    color: var(--etebar-paper);
    font-weight: 600;
}

.delivery-proof-flow h2,
.delivery-proof-options h2 {
    margin: 0 0 0.45rem;
    font-size: 1.25rem;
}

.delivery-proof-flow p,
.delivery-proof-options p {
    margin: 0;
    color: var(--etebar-gray);
    line-height: 1.6;
}

.delivery-proof-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    margin-top: 1.25rem;
    background: var(--etebar-border);
    border: 1px solid var(--etebar-border);
}

.delivery-proof-options article {
    padding: 1.25rem 1.5rem;
    background: var(--etebar-paper);
}

/* Approved Delivery Proof additions */

@media (max-width: 700px) {

    .delivery-proof-cards,
    .delivery-proof-receive {
        grid-template-columns: 1fr;
    }

    .delivery-proof-receive {
        gap: 0.75rem;
    }

    .delivery-proof-receive ul {
        grid-template-columns: 1fr;
    }

    .delivery-proof-flow,
    .delivery-proof-options {
        grid-template-columns: 1fr;
    }

    .delivery-proof-flow li + li {
        border-block-start: 1px solid var(--etebar-border);
        border-inline-start: 0;
    }

    .delivery-proof-flow li {
        padding: 1.1rem 0.25rem;
    }

    .delivery-proof-options article {
        padding: 1.1rem;
    }
}

/* Targeted hero-edge, numbered-badge and Special Request consent refinements. */

.home .hero .hero-editorial img.hero-editorial__image--ltr {
	-webkit-mask-image:
		linear-gradient(to right, transparent 0, #000 42px, #000 100%),
		linear-gradient(to bottom, transparent 0, #000 20px, #000 100%);
	-webkit-mask-composite: source-in;
	mask-image:
		linear-gradient(to right, transparent 0, #000 42px, #000 100%),
		linear-gradient(to bottom, transparent 0, #000 20px, #000 100%);
	mask-composite: intersect;
}

.home .hero .hero-editorial img.hero-editorial__image--rtl {
	-webkit-mask-image:
		linear-gradient(to left, transparent 0, #000 42px, #000 100%),
		linear-gradient(to bottom, transparent 0, #000 20px, #000 100%);
	-webkit-mask-composite: source-in;
	mask-image:
		linear-gradient(to left, transparent 0, #000 42px, #000 100%),
		linear-gradient(to bottom, transparent 0, #000 20px, #000 100%);
	mask-composite: intersect;
}

.special-request-page .order-request-process__badge,
.special-request-page .order-request-form__badge,
.etebar-checkout-progress__number {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	padding: 0;
	font-variant-numeric: tabular-nums;
	font-weight: 600;
	line-height: 1;
	text-align: center;
}

.special-request-page .order-request-process__badge {
	width: 40px;
	height: 40px;
	font-size: 16px;
}

.special-request-page .order-request-form__badge {
	width: 34px;
	height: 34px;
	font-size: 15px;
}

.etebar-checkout-progress__number {
	width: 42px;
	height: 42px;
	font-size: 15px;
}

.special-request-page .order-request-process__title-row,
.special-request-page .order-request-form__title-row {
	align-items: center;
}

.special-request-page .order-request-form__confirmation .order-request-consent {
	display: flex !important;
	margin: 1.5rem 0 !important;
	align-items: flex-start;
	gap: 13px;
}

.special-request-page .order-request-form__confirmation .order-request-consent input[type="checkbox"] {
	width: 22px;
	height: 22px;
	min-width: 22px;
	min-height: 22px;
	flex: 0 0 22px;
	margin: 0.1rem 0 0;
	padding: 0;
	accent-color: #173a55;
}

.special-request-page .order-request-form__confirmation .order-request-consent input[type="checkbox"]:focus-visible {
	border-color: #173a55 !important;
	outline: 3px solid rgb(198 160 82 / 65%) !important;
	outline-offset: 3px;
	box-shadow: 0 0 0 1px #173a55 !important;
}

.special-request-page .order-request-form__confirmation .order-request-consent span {
	margin: 0 !important;
	color: #374854 !important;
	font-size: 1rem !important;
	font-weight: 500 !important;
	line-height: 1.5;
}

.special-request-page .order-request-consent a {
	color: #173a55;
	font-weight: 600;
	text-decoration-color: #c6a052;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.special-request-page .order-request-consent a:hover {
	color: #7d612d;
}

.special-request-page .order-request-consent a:focus-visible {
	border-radius: 2px;
	outline: 3px solid #c6a052 !important;
	outline-offset: 2px;
	box-shadow: 0 0 0 1px #173a55 !important;
}

.special-request-page .order-request-field-error--consent {
	margin: -0.75rem 0 1.5rem calc(22px + 13px);
}

html[dir="rtl"] .special-request-page .order-request-field-error--consent {
	margin-right: calc(22px + 13px);
	margin-left: 0;
}

@media (max-width: 1180px) {
	.home .hero .hero-editorial img.hero-editorial__image--ltr,
	.home .hero .hero-editorial img.hero-editorial__image--rtl {
		-webkit-mask-image:
			linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 18px), transparent 100%),
			linear-gradient(to bottom, transparent 0, #000 26px, #000 100%);
		-webkit-mask-composite: source-in;
		mask-image:
			linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 18px), transparent 100%),
			linear-gradient(to bottom, transparent 0, #000 26px, #000 100%);
		mask-composite: intersect;
	}
}

@media (max-width: 700px) {
	.special-request-page .order-request-form__confirmation .order-request-consent span {
		font-size: 0.9375rem !important;
	}
}

/* Special Request wizard: progressive enhancement over the complete server form. */

.special-request-wizard__progress {
	position: relative;
	padding: 1.75rem 2.5rem 1.5rem;
	border-bottom: 1px solid rgb(198 160 82 / 34%);
	background: #f7f2e8;
}

.special-request-wizard__progress ol {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	list-style: none;
}

.special-request-wizard__progress ol::before {
	position: absolute;
	top: 21px;
	inset-inline: 12.5%;
	height: 1px;
	background: rgb(23 58 85 / 28%);
	content: "";
}

.special-request-wizard__progress li {
	position: relative;
	z-index: 1;
	display: grid;
	min-width: 0;
	justify-items: center;
	gap: 0.65rem;
	color: #63717c;
	font-family: var(--etebar-sans);
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.3;
	text-align: center;
}

.special-request-wizard__progress-badge {
	display: inline-flex;
	width: 42px;
	height: 42px;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	border: 1px solid rgb(23 58 85 / 42%);
	border-radius: 50%;
	padding: 0;
	background: #fffdf8;
	color: #173a55;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1;
}

.special-request-wizard__progress-check {
	display: none;
	width: 19px;
	height: 19px;
}

.special-request-wizard__progress li.is-active,
.special-request-wizard__progress li.is-complete {
	color: #031321;
}

.special-request-wizard__progress li.is-active .special-request-wizard__progress-badge {
	border-color: #c6a052;
	background: #173a55;
	color: #f3d99c;
	box-shadow: 0 0 0 3px rgb(198 160 82 / 18%);
}

.special-request-wizard__progress li.is-complete .special-request-wizard__progress-badge {
	border-color: #173a55;
	background: #173a55;
	color: #f3d99c;
}

.special-request-wizard__progress li.is-complete .special-request-wizard__progress-number {
	display: none;
}

.special-request-wizard__progress li.is-complete .special-request-wizard__progress-check {
	display: block;
}

.order-request-form.is-wizard-ready .order-request-form__group {
	border-top: 0 !important;
}

.order-request-form.is-wizard-ready [data-wizard-step][hidden] {
	display: none !important;
}

.special-request-wizard__actions {
	display: flex;
	margin-top: 1.75rem;
	align-items: center;
	justify-content: space-between;
	gap: 0.875rem;
}

.special-request-wizard__actions .button {
	min-width: 132px;
	min-height: 48px;
}

.special-request-wizard__actions .button:only-child {
	margin-inline-start: auto;
}

.special-request-wizard__back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.45rem;
	border: 1px solid rgb(23 58 85 / 46%) !important;
	background: transparent !important;
	color: #173a55 !important;
	font-family: var(--etebar-sans) !important;
	font-size: 0.9375rem;
	font-weight: 600;
}

.special-request-wizard__back svg {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
}

html[dir="rtl"] .special-request-wizard__back svg {
	transform: scaleX(-1);
}

.special-request-wizard__back:hover {
	border-color: #c6a052 !important;
	background: rgb(198 160 82 / 10%) !important;
}

.special-request-map {
	margin-top: 1.75rem;
	border: 1px solid rgb(198 160 82 / 48%);
	border-radius: 12px;
	padding: 1.5rem;
	background: #f3ede1;
}

.special-request-map__heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
}

.special-request-map__heading h4 {
	margin: 0;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: 1.35rem;
	line-height: 1.25;
}

.special-request-map__heading span {
	color: #7d612d;
	font-family: var(--etebar-sans);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.special-request-map > p {
	max-width: 66ch;
	margin: 0.65rem 0 1.1rem;
	color: #52616c;
	font-size: 1rem;
	line-height: 1.55;
}

.special-request-map__ui > label {
	display: block;
	margin-bottom: 0.55rem !important;
	color: #173a55;
	font-size: 0.9375rem;
	font-weight: 600;
}

.special-request-map__ui gmp-basic-place-autocomplete,
.special-request-map__ui gmp-place-autocomplete {
	display: block;
	width: 100%;
	background-color: #fffdf8;
	border: 1px solid rgb(23 58 85 / 18%);
	border-radius: 10px;
	color: #031321;
	color-scheme: light;
	font: 400 1rem/1.45 var(--etebar-sans);
}

.special-request-map__ui gmp-basic-place-autocomplete::part(input),
.special-request-map__ui gmp-place-autocomplete::part(input) {
	min-height: 3rem;
	padding: 0.85rem 1rem;
}

.special-request-map__canvas {
	width: 100%;
	height: 410px;
	margin-top: 1rem;
	overflow: hidden;
	border: 1px solid rgb(23 58 85 / 24%);
	border-radius: 10px;
	background: #e8e2d6;
}

.special-request-map__resolved,
.special-request-map__fallback {
	margin: 1rem 0 0 !important;
	border-inline-start: 3px solid #c6a052;
	padding: 0.8rem 1rem;
	background: #fffaf1;
	color: #374854 !important;
	font-size: 0.9375rem !important;
	line-height: 1.5 !important;
}

.special-request-review {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: 1.75rem;
}

.special-request-review section {
	min-width: 0;
	border: 1px solid rgb(198 160 82 / 38%);
	border-radius: 10px;
	padding: 1.15rem 1.25rem;
	background: #fffdf8;
}

.special-request-review header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 0.7rem;
}

.special-request-review h4 {
	margin: 0;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: 1.125rem;
	line-height: 1.3;
}

.special-request-review header button {
	min-width: 44px;
	min-height: 44px;
	border: 0;
	border-radius: 6px;
	padding: 0.4rem 0.55rem;
	background: transparent;
	color: #173a55;
	font-family: var(--etebar-sans);
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: #c6a052;
	text-underline-offset: 3px;
	cursor: pointer;
}

.special-request-review dl,
.special-request-review dl > div {
	margin: 0;
}

.special-request-review dl > div {
	display: grid;
	grid-template-columns: minmax(105px, 0.42fr) minmax(0, 1fr);
	gap: 0.75rem;
	padding-block: 0.55rem;
	border-top: 1px solid rgb(198 160 82 / 24%);
}

.special-request-review [data-review-row][hidden] {
	display: none;
}

.special-request-review dt {
	color: #66727b;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.45;
}

.special-request-review dd {
	min-width: 0;
	color: #173a55;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.5;
	overflow-wrap: anywhere;
	white-space: pre-line;
}

.special-request-page .special-request-wizard__actions button:focus-visible,
.special-request-review header button:focus-visible {
	outline: 3px solid #c6a052 !important;
	outline-offset: 2px;
	box-shadow: 0 0 0 1px #173a55 !important;
}

.order-request-form.is-wizard-ready .order-request-form__title-row h3:focus {
	outline: none;
}

@media (max-width: 700px) {
	.special-request-wizard__progress {
		padding: 1.25rem 0.75rem 1rem;
	}

	.special-request-wizard__progress ol::before {
		top: 18px;
	}

	.special-request-wizard__progress li {
		gap: 0.45rem;
		font-size: 0.68rem;
		line-height: 1.25;
	}

	.special-request-wizard__progress-badge {
		width: 36px;
		height: 36px;
		font-size: 0.875rem;
	}

	.special-request-wizard__actions {
		margin-top: 1.5rem;
		gap: 0.65rem;
	}

	.special-request-wizard__actions .button {
		min-width: 0;
		flex: 1 1 auto;
		padding-inline: 0.9rem;
	}

	.special-request-wizard__back {
		max-width: 112px;
	}

	.special-request-map {
		margin-top: 1.5rem;
		padding: 1.15rem;
	}

	.special-request-map__heading h4 {
		font-size: 1.2rem;
	}

	.special-request-map__canvas {
		height: 300px;
	}

	.special-request-review {
		grid-template-columns: 1fr;
		gap: 0.8rem;
	}

	.special-request-review section {
		padding: 1rem;
	}

	.special-request-review dl > div {
		grid-template-columns: 1fr;
		gap: 0.15rem;
	}
}

/* Cohesive WooCommerce single-product composition — July 2026. */

body.single-product .woocommerce-main {
	overflow: clip;
	padding-top: 0;
	background: var(--etebar-ivory);
}

body.single-product .woocommerce-main > .container {
	width: min(calc(100% - 3rem), 1120px);
}

body.single-product .etebar-product__hero {
	position: relative;
	margin-bottom: 0;
	padding-block: clamp(2rem, 4vw, 3.25rem);
	background: #031321;
	box-shadow: 0 0 0 100vmax #031321;
	clip-path: inset(0 -100vmax);
    padding-block-start: calc(var(--etebar-header-height) + 1.5rem);
}

body.single-product .etebar-product__breadcrumb {
	margin: 0 0 1.25rem;
	color: rgb(247 242 232 / 72%);
	font-size: 0.82rem;
	line-height: 1.4;
}

body.single-product .etebar-product__breadcrumb a {
	color: #e2bd72;
}

body.single-product .etebar-product__breadcrumb a:hover {
	color: #fffaf0;
}

body.single-product .etebar-product__layout {
	display: grid;
	grid-template-columns: minmax(0, 1.27fr) minmax(380px, 1fr);
	align-items: start;
	gap: clamp(1.75rem, 3.5vw, 3.25rem);
}

body.single-product .etebar-product__intro,
body.single-product .etebar-product__request-panel {
	min-width: 0;
}

body.single-product .etebar-product__media {
	display: grid;
	width: 100%;
	aspect-ratio: 1 / 1;
	place-items: center;
	overflow: hidden;
	margin: 0;
	border: 1px solid rgb(215 174 95 / 30%);
	border-radius: 10px;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	background: #f5efe4;
	box-shadow: 0 18px 44px rgb(0 0 0 / 14%);
}

body.single-product .etebar-product__media::before,
body.single-product .etebar-product__media::after {
	display: none;
}

body.single-product .etebar-product__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	margin: 0;
	padding: 0;
	object-fit: contain;
	object-position: center;
	filter: none;
}

body.single-product .etebar-product__placeholder-visual {
	width: 100%;
	height: 100%;
	min-height: 0;
	background: transparent;
}

body.single-product .etebar-product__media-footer,
body.single-product .etebar-product__media-label,
body.single-product .etebar-product__status {
	display: none;
}

body.single-product .etebar-product__request-panel {
	position: static;
	top: auto;
	overflow: visible;
	border: 1px solid rgb(215 174 95 / 28%);
	border-radius: 10px;
	padding: clamp(1.35rem, 2.5vw, 2rem);
	background: #fffaf0;
	box-shadow: 0 18px 44px rgb(0 0 0 / 12%);
}

body.single-product .etebar-product__request-panel::before {
	display: none;
}

body.single-product .etebar-product__quote-label {
	margin: 0 0 0.6rem;
	color: #6c5425;
	font-size: 0.72rem;
	letter-spacing: 0.1em;
	line-height: 1.3;
	text-transform: uppercase;
}

body.single-product .etebar-product__request-panel h1.product_title {
	max-width: 15ch;
	margin: 0 0 0.8rem;
	color: var(--etebar-navy);
	font-size: clamp(2.5rem, 4vw, 3.8rem);
	font-weight: 600;
	letter-spacing: -0.035em;
	line-height: 1.02;
	text-wrap: balance;
}

html[dir="rtl"] body.single-product .etebar-product__request-panel h1.product_title {
	max-width: 100%;
	letter-spacing: 0;
	line-height: 1.22;
}

body.single-product.woocommerce div.product .etebar-product__request-panel p.price {
	margin: 0 0 0.8rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(1.6rem, 2.4vw, 2rem);
	font-weight: 650;
	line-height: 1.15;
}

body.single-product .etebar-product__description,
body.single-product .etebar-product__description p {
	margin: 0;
	color: #3f4850 !important;
	font-size: 0.96rem;
	line-height: 1.6;
}

body.single-product .etebar-product__purchase {
	margin-top: 1.15rem;
	border-block: 1px solid #e3d9c8;
	padding-block: 1rem;
}

body.single-product .etebar-product__quantity-label {
	display: block;
	margin-bottom: 0.5rem;
	color: var(--etebar-navy);
	font-size: 0.78rem;
	font-weight: 750;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart {
	display: grid;
	grid-template-columns: 138px minmax(0, 1fr);
	gap: 0.75rem;
	align-items: stretch;
	margin: 0;
}

body.single-product .etebar-product__purchase form.cart .quantity {
	display: grid;
	width: 138px;
	height: 54px;
	grid-template-columns: 44px 50px 44px;
	align-items: stretch;
	overflow: hidden;
	margin: 0;
	border: 1px solid #bcae97;
	border-radius: 8px;
	background: #fff;
}

body.single-product .etebar-product__purchase form.cart .quantity .screen-reader-text {
	position: absolute;
}

body.single-product .etebar-product__purchase form.cart .quantity .qty {
	width: 50px;
	height: 52px;
	min-height: 52px;
	-moz-appearance: textfield;
	border: 0;
	border-inline: 1px solid #ded4c3;
	border-radius: 0;
	padding: 0;
	background: #fff;
	color: var(--etebar-navy);
	font-size: 1rem;
	font-weight: 750;
	text-align: center;
}

body.single-product .etebar-product__purchase form.cart .quantity .qty::-webkit-inner-spin-button,
body.single-product .etebar-product__purchase form.cart .quantity .qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

body.single-product .etebar-quantity-step {
	display: grid;
	min-width: 44px;
	min-height: 52px;
	place-items: center;
	border: 0;
	background: #f8f1e5;
	color: var(--etebar-navy);
	font-size: 1.25rem;
	font-weight: 650;
	cursor: pointer;
}

body.single-product .etebar-quantity-step:hover {
	background: #eee1c9;
}

body.single-product .etebar-quantity-step:disabled {
	cursor: not-allowed;
	opacity: 0.42;
}

body.single-product .etebar-quantity-step:focus-visible,
body.single-product .etebar-product__purchase form.cart .quantity .qty:focus-visible {
	position: relative;
	z-index: 1;
	outline: 3px solid var(--etebar-gold);
	outline-offset: -3px;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
	width: 100%;
	height: 54px;
	min-height: 54px;
	justify-content: center;
	border: 1px solid #c39a4c;
	border-radius: 8px;
	padding-inline: 1.25rem;
	background: #d7ae5f !important;
	color: #061525 !important;
	font-size: 0.96rem;
	font-weight: 750;
	box-shadow: 0 7px 18px rgb(215 174 95 / 17%);
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible {
	border-color: #b88d3c;
	background: #e0bb70 !important;
	color: #061525 !important;
	box-shadow: 0 10px 22px rgb(215 174 95 / 24%);
	transform: translateY(-1px);
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:active {
	box-shadow: 0 5px 14px rgb(215 174 95 / 14%);
	transform: none;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:not(.loading)::after {
	color: #061525;
}

body.single-product .etebar-product__delivery-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 1rem 0 0;
	border: 1px solid #e3d9c8;
	border-radius: 8px;
	padding: 0.35rem 0.75rem;
	background: #f9f3e8;
}

body.single-product .etebar-product__delivery-facts li,
body.single-product .etebar-product__delivery-facts li:nth-child(n) {
	display: grid;
	min-height: 0;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 0.55rem;
	align-items: center;
	border: 0;
	border-bottom: 1px solid #e5dccd;
	padding: 0.7rem 0.5rem;
}

body.single-product .etebar-product__delivery-facts li:nth-last-child(-n + 2) {
	border-bottom: 0;
}

body.single-product .etebar-product__delivery-facts li:last-child {
	grid-column: 1 / -1;
}

body.single-product .etebar-product__delivery-facts svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: #8c6a2d;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}

body.single-product .etebar-product__delivery-facts span {
	color: #3f4850;
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.35;
}

body.single-product .etebar-video-proof-option--product {
	margin-top: 1rem;
	border: 1px solid #d8c7a8;
	border-radius: 8px;
	padding: 0.9rem;
	background: #fffdf8;
}

body.single-product .etebar-video-proof-option--product > label {
	align-items: flex-start;
	gap: 0.65rem;
}

body.single-product .etebar-video-proof-option--product input[type="checkbox"] {
	width: 20px;
	height: 20px;
	flex-basis: 20px;
	margin-top: 0.1rem;
}

body.single-product .etebar-video-proof-option--product label span {
	gap: 0.25rem;
}

body.single-product .etebar-video-proof-option--product label strong {
	color: var(--etebar-navy);
	font-size: 0.9rem;
	line-height: 1.35;
}

body.single-product .etebar-video-proof-option--product label small {
	color: #4c555d;
	font-size: 0.78rem;
	font-weight: 500;
	line-height: 1.45;
}

body.single-product .etebar-video-proof-option--product > p {
	margin: 0.45rem 0 0 1.8rem;
	color: #697178;
	font-size: 0.72rem;
	line-height: 1.4;
}

html[dir="rtl"] body.single-product .etebar-video-proof-option--product > p {
	margin-right: 1.8rem;
	margin-left: 0;
}

body.single-product .etebar-video-proof-option--product .button {
	min-height: 34px;
	margin: 0.55rem 0 0 1.8rem;
	border: 0;
	padding: 0.25rem 0;
	background: transparent;
	color: var(--etebar-green);
	font-size: 0.76rem;
	font-weight: 750;
	text-decoration: underline;
	text-underline-offset: 3px;
	box-shadow: none;
}

html[dir="rtl"] body.single-product .etebar-video-proof-option--product .button {
	margin-right: 1.8rem;
	margin-left: 0;
}

body.single-product .etebar-video-proof-option--product .button:hover,
body.single-product .etebar-video-proof-option--product .button:focus-visible {
	background: transparent;
	color: var(--etebar-navy);
}

body.single-product .etebar-product__special-request {
	margin-top: 1rem;
	border-top: 1px solid #e3d9c8;
	padding-top: 0.85rem;
}

body.single-product .etebar-product__special-request p {
	margin: 0 0 0.2rem;
	color: #646d74;
	font-size: 0.76rem;
}

body.single-product .etebar-product__special-request a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	color: var(--etebar-green);
	font-size: 0.84rem;
	font-weight: 750;
}

html[dir="rtl"] body.single-product .etebar-product__special-request a span {
	transform: rotate(180deg);
}

body.single-product .etebar-product__details {
	display: grid;
	max-width: 1120px;
	grid-template-columns: minmax(220px, 0.38fr) minmax(0, 1fr);
	gap: 1rem clamp(2rem, 5vw, 4.5rem);
	margin: 0;
	border: 0;
	border-bottom: 1px solid var(--etebar-border);
	border-radius: 0;
	padding: clamp(2.5rem, 5vw, 4rem) 0;
	background: transparent;
	box-shadow: none;
}

body.single-product .etebar-product__details::before {
	display: none;
}

body.single-product .etebar-product__details-intro {
	grid-column: 1;
}

body.single-product .etebar-product__details-intro .eyebrow {
	margin-bottom: 0.6rem;
	color: var(--etebar-green);
}

body.single-product .etebar-product__details-intro h2 {
	margin: 0;
	color: var(--etebar-navy);
	font-size: clamp(2rem, 3vw, 2.8rem);
	line-height: 1.05;
}

body.single-product .etebar-product__long-description,
body.single-product .etebar-product__records,
body.single-product .etebar-product__details > .etebar-bundle-contents,
body.single-product .etebar-product__details > .etebar-bundle-compare {
	grid-column: 2;
}

body.single-product .etebar-product__long-description {
	color: #46515a;
	font-size: 0.95rem;
	line-height: 1.65;
}

body.single-product .etebar-product__long-description > :last-child {
	margin-bottom: 0;
}

body.single-product .etebar-product__details .etebar-product__records {
	margin: 0;
	border-top: 1px solid var(--etebar-border);
}

body.single-product .etebar-product__details .etebar-product__records div {
	display: grid;
	grid-template-columns: minmax(120px, 0.32fr) minmax(0, 1fr);
	gap: 1rem;
	border-bottom: 1px solid var(--etebar-border);
	padding: 0.8rem 0;
}

body.single-product .etebar-product__details .etebar-product__records dt {
	color: var(--etebar-green);
	font-size: 0.7rem;
}

body.single-product .etebar-product__details .etebar-product__records dd {
	color: #3f4850;
	font-size: 0.9rem;
	line-height: 1.5;
}

body.single-product .etebar-product__details > .etebar-bundle-contents {
	margin-top: 0.25rem;
}

body.single-product .etebar-product__details > .etebar-bundle-compare {
	margin-top: 0;
}

body.single-product .etebar-product__related-shell {
	padding-block: clamp(2.75rem, 5vw, 4rem);
}

body.single-product .etebar-product__related-shell > .eyebrow {
	margin-bottom: 0.55rem;
}

body.single-product .etebar-product__related-shell .related.products > h2 {
	margin-bottom: 1.5rem;
	color: var(--etebar-navy);
	font-size: clamp(2rem, 3vw, 2.8rem);
}

body.single-product .etebar-product__related-shell .related.products {
	margin: 0;
}

body.single-product .etebar-product__related-shell .related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1rem;
	margin: 0 !important;
}

body.single-product .etebar-product__related-shell .related.products ul.products li.product {
	width: auto !important;
	margin: 0 !important;
}

body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__footer {
	grid-template-columns: minmax(max-content, 1fr) minmax(0, auto);
}

body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__footer .price {
	min-width: max-content;
	direction: ltr;
	unicode-bidi: isolate;
	white-space: nowrap;
}

@media (max-width: 860px) {
	body.single-product .woocommerce-main > .container {
		width: min(calc(100% - 2.75rem), 1120px);
	}

	body.single-product .etebar-product__layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.4rem;
	}

	body.single-product .etebar-product__request-panel {
		max-width: none;
	}

	body.single-product .etebar-product__details {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	body.single-product .etebar-product__details-intro,
	body.single-product .etebar-product__long-description,
	body.single-product .etebar-product__records,
	body.single-product .etebar-product__details > .etebar-bundle-contents,
	body.single-product .etebar-product__details > .etebar-bundle-compare {
		grid-column: 1;
	}

	body.single-product .etebar-product__related-shell .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 430px) {
	body.single-product .woocommerce-main > .container {
		width: calc(100% - 2.75rem);
	}

	body.single-product .etebar-product__hero {
		padding-block: 1.35rem 2rem;
	}

	body.single-product .etebar-product__breadcrumb {
		margin-bottom: 0.9rem;
		font-size: 0.76rem;
	}

	body.single-product .etebar-product__media {
		border-radius: 8px;
		padding: 1.25rem;
	}

	body.single-product .etebar-product__request-panel {
		border-radius: 8px;
		padding: 1.2rem;
	}

	body.single-product .etebar-product__request-panel h1.product_title {
		font-size: clamp(2.25rem, 11vw, 3rem);
	}

	body.single-product.woocommerce div.product .etebar-product__purchase form.cart {
		grid-template-columns: 1fr;
	}

	body.single-product .etebar-product__purchase form.cart .quantity {
		width: 138px;
	}

	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
		width: 100%;
	}

	body.single-product .etebar-product__delivery-facts {
		grid-template-columns: 1fr;
	}

	body.single-product .etebar-product__delivery-facts li,
	body.single-product .etebar-product__delivery-facts li:nth-child(n),
	body.single-product .etebar-product__delivery-facts li:nth-last-child(-n + 2) {
		grid-column: auto;
		border-bottom: 1px solid #e5dccd;
	}

	body.single-product .etebar-product__delivery-facts li:last-child {
		border-bottom: 0;
	}

	body.single-product .etebar-product__details {
		padding-block: 2.5rem;
	}

	body.single-product .etebar-product__details .etebar-product__records div {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	body.single-product .etebar-product__related-shell .related.products ul.products {
		gap: 0.75rem;
	}

	body.single-product .etebar-product__related-shell .related.products li.product {
		min-width: 0;
	}

	body.single-product .etebar-product__related-shell .related.products li.product .button {
		width: 100%;
		min-width: 0;
		white-space: normal;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
		transition: none;
	}

	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover,
	body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible {
		transform: none;
	}
}

/* Final shared header, micro-type and PDP control cleanup. */

body {
	--etebar-page-start-background: var(--etebar-ivory);
}

body :where(h1, h2, h3, h4, h5, h6) {
	font-weight: 500 !important;
}

body :where(button, .button, label, legend, nav a, input[type="submit"], input[type="button"]) {
	font-weight: 500 !important;
}

body :where(strong, b, dt, .eyebrow, .site-footer__heading) {
	font-weight: 600 !important;
}

body.home,
body.single-product,
body.page-template-page-special-request {
	--etebar-page-start-background: #031321;
}

body.page-template-page-faq,
body.page-template-page-contact,
body.page-template-page-delivery-proof,
body.page-template-page-how-it-works,
body.page-template-page-products,
body.page-template-page-order-request,
body.page-template-page-what-you-can-order,
body.page-template-page-food-daily-essentials,
body.page-template-page-family-care-products,
body.page-template-page-home-living-items,
body.page-template-page-appliances-larger-items,
body.page-template-page-winter-heating-supplies {
	--etebar-page-start-background:
		radial-gradient(circle at 82% 45%, rgb(47 107 82 / 25%), transparent 24rem),
		linear-gradient(125deg, #061d30 0%, #031321 100%);
}

body.page-template-page-faq {
	--etebar-page-start-background: var(--etebar-navy-dark);
}

/* Approved FAQ additions */

body.page-template-page-faq,
body.page-template-page-delivery-proof {
    --etebar-page-start-background: var(--etebar-navy-dark);
}

body.page-template-page-faq .page-hero,
body.page-template-page-delivery-proof .page-hero {
    background: var(--etebar-navy-dark);
    background-image: none;
}

body.page-template-page-faq .page-hero::before,
body.page-template-page-faq .page-hero::after,
body.page-template-page-delivery-proof .page-hero::before,
body.page-template-page-delivery-proof .page-hero::after {
    display: none;
    content: none;
}

.faq-page .content-detail-hero {
    display: block;
}

.faq-page .content-detail-hero__intro {
    max-width: 760px;
}

.faq-page .page-hero h1 {
    max-width: 14ch;
    font-size: clamp(3rem, 5vw, 4.8rem);
}

.faq-topic + .faq-topic {
    margin-top: 2.5rem;
}

.faq-topic h2 {
    margin: 0 0 0.85rem;
    color: var(--etebar-navy);
    font-size: clamp(1.55rem, 2.6vw, 2rem);
}

.faq-page .accordion,
.faq-page .accordion--page {
    display: grid;
    gap: 0.65rem;
    border: 0;
}

.faq-page .accordion__item,
.faq-page .accordion--page .accordion__item {
    overflow: hidden;
    border: 1px solid var(--etebar-border);
    border-radius: var(--etebar-surface-radius);
    background: var(--etebar-paper);
}

.faq-page .accordion__item::before {
    display: none;
    content: none;
}

.faq-page .accordion__trigger {
    min-height: 68px;
    gap: 1rem;
    padding: 0.9rem 1rem 0.9rem 1.25rem;
    font-family: var(--etebar-sans);
    font-weight: 600;
    line-height: 1.45;
}

html[dir="rtl"] .faq-page .accordion__trigger {
    padding-right: 1.25rem;
    padding-left: 1rem;
}

.faq-page .accordion__symbol {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
    border-radius: 8px;
    background: var(--etebar-ivory);
    color: var(--etebar-navy);
    font-size: 1.2rem;
}

.faq-page .accordion__panel {
    padding: 0 4.25rem 1.25rem 1.25rem;
}

html[dir="rtl"] .faq-page .accordion__panel {
    padding-right: 1.25rem;
    padding-left: 4.25rem;
}

.faq-page .accordion__panel p {
    max-width: 70ch;
    margin: 0;
    color: var(--etebar-gray);
    font-family: var(--etebar-sans);
    line-height: 1.65;
}

.faq-page .page-hero {
    padding-block: 2.5rem 3.25rem !important;
}

.faq-page__content .container {
    width: min(calc(100% - 32px), 1020px);
    max-width: 1020px;
}

.faq-page .accordion__item,
.faq-page .accordion--page .accordion__item {
	    margin: 0;
	    overflow: visible;
	    border: 0;
	    border-radius: 0;
	    background: transparent;
	    box-shadow: none;
}

.faq-page .accordion,
.faq-page .accordion--page {
	    display: block;
	    overflow: hidden;
	    border: 1px solid var(--etebar-border);
	    border-radius: 10px;
	    background: var(--etebar-paper);
	    box-shadow: none;
}

.faq-page .accordion__item + .accordion__item {
	    border-top: 1px solid var(--etebar-border);
}

.faq-page .accordion__trigger {
	    min-height: 68px;
	    padding: 0.85rem 1rem 0.85rem 1.25rem;
	    font-family: var(--etebar-sans);
	    font-size: 1.0625rem;
	    font-weight: 500 !important;
	    line-height: 1.45;
}

.faq-page .accordion__symbol {
	    width: 40px;
	    height: 40px;
	    flex: 0 0 40px;
	    align-self: center;
	    box-shadow: none;
}

.faq-page .accordion__panel {
	    padding: 0 4.25rem 1.2rem 1.25rem;
}

html[dir="rtl"] .faq-page .accordion__panel {
	    padding-right: 1.25rem;
	    padding-left: 4.25rem;
}

/* Approved FAQ additions */

@media (max-width: 700px) {

    .faq-page .page-hero,
    .contact-page .page-hero {
        padding-block: 30px 34px !important;
    }

    .delivery-proof-page .page-hero {
        padding-block: 2.75rem 3.25rem;
    }

    .faq-page .page-hero h1,
    .delivery-proof-page .page-hero h1 {
        font-size: clamp(2.65rem, 12vw, 3.6rem);
    }

    .faq-page__content,
    .delivery-proof-page__content {
        padding-block: 3rem;
    }

    .faq-topic + .faq-topic {
        margin-top: 2rem;
    }

    .faq-page .accordion__trigger {
        min-height: 64px;
        padding-inline: 1rem;
    }

    .faq-page .accordion__panel,
    html[dir="rtl"] .faq-page .accordion__panel {
        padding: 0 1rem 1.1rem;
    }
}

body.post-type-archive-product,
body.woocommerce-cart,
body.woocommerce-checkout {
	--etebar-page-start-background:
		linear-gradient(180deg, color-mix(in srgb, var(--etebar-muted) 40%, var(--etebar-ivory)), var(--etebar-ivory) 34rem);
}

/* Approved checkout additions */

.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
	    display: grid;
	    grid-template-columns: minmax(0, 1.78fr) minmax(340px, 1fr);
	    gap: clamp(1.5rem, 3vw, 2.5rem);
}

.woocommerce-checkout .wc-block-checkout__main {
	    width: 100%;
	    max-width: none;
	    padding-inline-end: 0;
}

.woocommerce-checkout .etebar-checkout-sticky {
	    position: static;
	    width: 100%;
	    min-height: 68px;
	    margin-top: 1.25rem;
	    transform: none !important;
	    border-radius: 9px;
	    background: var(--etebar-paper);
	    padding: 0.5rem;
	    box-shadow: none;
	    backdrop-filter: none;
}

html[dir="rtl"] .woocommerce-checkout .etebar-checkout-sticky {
	    transform: none !important;
}

.woocommerce-checkout .etebar-checkout-field-help {
	    display: block;
	    margin-top: 0.45rem;
	    color: var(--etebar-gray);
	    font-size: 0.82rem;
	    font-weight: 400;
	    line-height: 1.5;
	    overflow-wrap: anywhere;
	    white-space: normal;
}

/* Approved checkout additions */

@media (max-width: 600px) {

    body.woocommerce-checkout.etebar-checkout-steps-ready {
        padding-bottom: 0 !important;
    }

	    .woocommerce-checkout .wc-block-checkout__main {
	        display: flex;
	        flex-direction: column;
	    }

	    .woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
	        grid-template-columns: minmax(0, 1fr);
	        gap: 1.25rem;
	    }

	    .woocommerce-checkout .wc-block-checkout__sidebar {
	        position: static;
	    }

    .woocommerce-checkout .etebar-checkout-sticky {
        position: static;
        inset: auto;
        order: 99;
        width: 100%;
        min-height: 0;
	        margin: 1rem 0 0;
        transform: none !important;
        grid-template-columns: auto minmax(64px, 0.75fr) minmax(145px, 1.5fr);
        border-radius: 9px;
        padding: 0.5rem;
	        box-shadow: none;
        backdrop-filter: none;
    }

    .woocommerce-checkout .etebar-checkout-sticky__next {
        min-height: 52px;
    }

    .woocommerce-checkout .site-footer {
        margin-bottom: 0;
    }
}

@media (min-width: 1181px) {
	body.home {
		--etebar-page-start-background: #000a14;
	}
}

body :is(
	.eyebrow,
	.home-section__kicker,
	.etebar-product__quote-label,
	.etebar-request-card__kicker,
	.etebar-shop-card__type,
	.products-hero__record-label,
	.order-request-item__label,
	.contact-route__label,
	.proof-record__label,
	.site-footer__heading
) {
	font-family: var(--etebar-sans);
	font-size: 0.78rem;
	font-weight: 600;
	font-stretch: normal;
	font-style: normal;
	letter-spacing: 0.02em !important;
	line-height: 1.4;
}

body :is(
	.woocommerce-breadcrumb,
	.etebar-product__breadcrumb,
	.etebar-shop-breadcrumb,
	.product-detail-card__meta,
	.etebar-shop-card__meta,
	.etebar-product__records dt,
	.special-request-wizard__progress-label,
	.header-search-toggle__label,
	.language-modal__label
) {
	font-family: var(--etebar-sans);
	font-size: 0.78rem;
	font-weight: 600;
	font-stretch: normal;
	font-style: normal;
	letter-spacing: 0.01em !important;
	line-height: 1.45;
}

html[dir="rtl"] body :is(
	.eyebrow,
	.home-section__kicker,
	.etebar-product__quote-label,
	.etebar-request-card__kicker,
	.etebar-shop-card__type,
	.products-hero__record-label,
	.order-request-item__label,
	.contact-route__label,
	.proof-record__label,
	.site-footer__heading,
	.woocommerce-breadcrumb,
	.etebar-product__breadcrumb,
	.etebar-shop-breadcrumb,
	.product-detail-card__meta,
	.etebar-shop-card__meta,
	.etebar-product__records dt,
	.special-request-wizard__progress-label,
	.header-search-toggle__label,
	.language-modal__label
) {
	letter-spacing: 0;
}

body.single-product .etebar-product__quote-label {
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.02em !important;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart::before,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart::after {
	display: none;
	content: none;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart {
	grid-template-columns: 138px minmax(210px, 1fr);
	gap: 0.875rem;
	align-items: center;
}

body.single-product .etebar-product__purchase form.cart .quantity {
	float: none;
	margin: 0;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button {
	display: inline-flex;
	width: 100%;
	height: 54px;
	gap: 0.65rem;
	min-height: 54px;
	float: none;
	margin: 0;
	padding-inline: clamp(1.5rem, 5vw, 2.25rem);
	border-radius: 9px;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.1;
	white-space: nowrap;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:not(.loading)::before {
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	background: currentColor;
	content: "";
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h2l2.2 9.4a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L20 7H6M9.5 20a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm7 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h2l2.2 9.4a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 2-1.6L20 7H6M9.5 20a1 1 0 1 0 0-2 1 1 0 0 0 0 2Zm7 0a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:not(.loading)::after {
	display: none !important;
	content: none !important;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible {
	outline: 3px solid var(--etebar-navy);
	outline-offset: 2px;
}

body.single-product .etebar-product__delivery-facts {
	grid-template-columns: 1fr;
}

body.single-product .etebar-product__delivery-facts li:nth-child(n) {
	grid-column: auto;
	border-bottom: 1px solid #e5dccd;
}

body.single-product .etebar-product__delivery-facts li:last-child {
	border-bottom: 0;
}

body.single-product .etebar-video-proof-option--product .button {
	min-height: 40px;
	margin-block-start: 0.65rem;
	border: 1px solid #bda97f;
	border-radius: 7px;
	padding: 0.45rem 0.8rem;
	background: #f8f1e5;
	color: var(--etebar-navy);
	text-decoration: none;
}

body.single-product .etebar-video-proof-option--product .button:hover {
	border-color: #9f854f;
	background: #f0e3ca;
	color: var(--etebar-navy);
}

body.single-product .etebar-video-proof-option--product .button:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 2px;
}

body.single-product .etebar-product__special-request a {
	max-width: 100%;
	gap: 0;
	border-bottom: 1px solid currentColor;
	padding-bottom: 0.12rem;
	text-decoration: none;
	white-space: nowrap;
}

body.single-product .etebar-product__special-request a span {
	margin-inline-start: 0.32rem;
}

body.single-product .etebar-product__special-request a:hover {
	border-bottom-color: var(--etebar-navy);
	color: var(--etebar-navy);
}

body.single-product .etebar-product__special-request a:focus-visible {
	border-bottom-color: transparent;
	outline: 3px solid var(--etebar-gold);
	outline-offset: 3px;
}

/* Focused floating-header, commerce CTA, proof autosave and Special Request repair. */

html {
	scroll-padding-top: var(--etebar-header-clearance);
}

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
	border-radius: 9px;
}

/* Approved footer additions */

@media (max-width: 700px) {

    .site-footer__brand {
        grid-column: 1 / -1;
    }

    .site-footer__brand > p {
        margin-top: 0.65rem;
    }

    .site-footer .footer-menu {
        grid-template-columns: 1fr;
    }

    .site-footer .footer-menu a {
        min-height: 38px;
        font-size: 0.875rem;
    }

    .site-footer__heading {
        margin-bottom: 0.35rem;
        padding-bottom: 0.45rem;
        font-size: 0.8125rem;
    }
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:hover,
body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:focus-visible {
	border-color: #c39a4c;
	background: var(--etebar-gold) !important;
	color: var(--etebar-ivory) !important;
}

body.single-product.woocommerce div.product .etebar-product__purchase form.cart .button.single_add_to_cart_button:not(.loading)::before {
	background: currentColor;
}

.etebar-video-proof-option__status {
	margin-block: 0.65rem 0 !important;
	color: var(--etebar-navy);
	font-size: 0.875rem !important;
	font-weight: 600;
	line-height: 1.4;
}

.etebar-video-proof-option__status.is-error {
	color: var(--etebar-danger);
}

.etebar-video-proof-option[aria-busy="true"] {
	opacity: 0.72;
}

.special-request-page .order-request-process__steps {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	align-items: stretch;
    gap: clamp(1rem, 2vw, 1.5rem) !important;
    padding-block-start: 1rem;
}

.special-request-page .order-request-process__steps li {
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
}

.special-request-page .order-request-process__title-row {
	width: 100%;
	min-height: 46px;
	align-items: center;
}

.special-request-page .order-request-process__steps li > p {
	max-width: 36ch;
	margin: 0.65rem 0 0;
	padding-inline-start: 54px;
}

html[dir="rtl"] .special-request-page .order-request-process__steps li > p {
	margin-inline: 0;
	padding-inline-start: 54px;
}

.special-request-page .order-request-process__badge,
.special-request-page .order-request-form__badge,
.special-request-wizard__progress li.is-active .special-request-wizard__progress-badge,
.special-request-wizard__progress li.is-complete .special-request-wizard__progress-badge {
	border-color: var(--etebar-gold);
	background: var(--etebar-navy) !important;
	color: var(--etebar-ivory) !important;
}

.special-request-wizard__progress-badge {
	border-color: var(--etebar-border);
	background: var(--etebar-ivory);
	color: var(--etebar-navy);
}

.special-request-wizard__progress ol::before {
	top: 21px;
	inset-inline: 12.5%;
	background: color-mix(in srgb, var(--etebar-navy) 28%, var(--etebar-border));
}

.special-request-page .order-request-form__title-row {
	min-height: 40px;
	align-items: center;
	    gap: 0.75rem;
}

.special-request-page .special-request-type legend {
	display: flex;
	width: 100%;
	align-items: center;
	gap: 0.55rem;
	margin: 0 0 0.7rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 0.9375rem !important;
	font-style: normal;
	font-weight: 600;
	line-height: 1.4;
}

.special-request-page .special-request-type legend em {
	color: #7e6734;
	font-family: var(--etebar-sans);
	font-size: 0.7rem;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0.06em;
	line-height: 1;
	text-transform: uppercase;
}

.special-request-page .special-request-type__choices {
	align-items: stretch;
    gap: 0.75rem;
	    display: grid;
	    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.special-request-page .special-request-type__choices label {
	min-height: 64px;
	align-items: center;
	border-radius: 8px;
	padding: 0.8rem 1rem;
    display: flex;
    box-sizing: border-box;
    margin: 0;
    gap: 0.7rem;
    border-color: var(--etebar-border);
    background: var(--etebar-paper);
    cursor: pointer;
	    height: 64px;
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-content: center;
}

.special-request-page .special-request-type__choices input {
	margin: 0;
	accent-color: var(--etebar-navy);
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
	align-self: center;
}

.special-request-page .special-request-type__choices label > span {
	display: block;
	min-height: 0;
	line-height: 1.35;
}

.special-request-page .order-request-content {
	padding-block-end: 3.5rem !important;
    padding-block: clamp(1.75rem, 4vw, 3rem) clamp(2.5rem, 5vw, 4rem) !important;
}

@media (max-width: 700px) {
	html {
		scroll-padding-top: 94px;
	}

	.special-request-page .order-request-process__steps {
		grid-template-columns: 1fr !important;
	}

	.special-request-page .order-request-process__title-row {
		min-height: 42px;
	}

	.special-request-page .order-request-process__steps li > p,
	html[dir="rtl"] .special-request-page .order-request-process__steps li > p {
		padding-inline-start: 54px;
	}

	.special-request-wizard__progress ol::before {
		top: 18px;
	}

	.special-request-page .order-request-content {
		padding-block-end: 2.5rem !important;
        padding-block: 2rem 2.5rem !important;
	}
}

/* Approved Special Request additions */

.etebar-cart-intro p,
.etebar-cart-special-request {
    margin: 0;
    color: var(--etebar-gray);
    font-family: var(--etebar-sans);
    font-size: 0.95rem;
    line-height: 1.55;
}

.etebar-cart-intro .text-link,
.etebar-cart-special-request .text-link {
    color: var(--etebar-navy);
    font-weight: 600;
}

.etebar-cart-special-request {
    margin-top: 1.25rem;
}

.faq-page .page-hero .eyebrow,
.delivery-proof-page .page-hero .eyebrow,
.special-request-page .eyebrow {
    color: var(--etebar-gold);
    letter-spacing: 0.02em !important;
}

.special-request-page .order-request-process__steps li > p,
html[dir="rtl"] .special-request-page .order-request-process__steps li > p {
    margin-block-start: 0.45rem;
    padding-inline-start: 54px;
}

.special-request-page .order-request-item {
    padding: 1.25rem 1.5rem !important;
}

body.woocommerce-cart :is(.eyebrow, .wc-block-cart-items__header),
.faq-page :is(.eyebrow, .accordion__trigger),
.delivery-proof-page :is(.eyebrow, p, li),
.special-request-page :is(.eyebrow, .order-request-item__label) {
    font-stretch: normal;
    letter-spacing: 0.01em !important;
}

.home .site-main,
.special-request-page {
    padding-block-start: 0;
}

.special-request-page,
.special-request-page .order-request-hero {
    background-color: #031321;
}

.special-request-page .special-request-type__choices label:hover {
    border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-navy));
}

.special-request-page .special-request-type__choices label:has(input:focus-visible) {
    outline: 3px solid color-mix(in srgb, var(--etebar-gold) 45%, transparent);
    outline-offset: 2px;
}

.special-request-page .special-request-type__choices label:has(input:checked) {
    border-color: var(--etebar-navy);
    background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
    box-shadow: inset 0 0 0 1px var(--etebar-navy);
}

.special-request-page :is(
	.special-request-wizard__progress-badge,
	.order-request-form__badge,
	.order-request-process__badge
) {
	    display: grid;
	    box-sizing: border-box;
	    width: 40px;
	    height: 40px;
	    flex: 0 0 40px;
	    place-items: center;
	    border: 1px solid color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-border));
	    border-radius: 50%;
	    padding: 0;
	    background: var(--etebar-ivory);
	    color: var(--etebar-navy);
	    font-family: var(--etebar-sans);
	    font-size: 0.875rem;
	    font-weight: 600;
	    line-height: 1;
	    box-shadow: none;
	    filter: none;
	    outline: 0;
	    transform: none;
}

.special-request-page .special-request-wizard__progress :is(.is-active, .is-complete) .special-request-wizard__progress-badge,
.special-request-page .order-request-form__badge {
	    border-color: color-mix(in srgb, var(--etebar-gold) 72%, var(--etebar-border));
	    background: var(--etebar-navy) !important;
	    color: var(--etebar-ivory) !important;
	    box-shadow: none;
	    filter: none;
	    outline: 0;
	    transform: none;
}

.special-request-page .special-request-wizard__progress-check {
	    display: none;
}

.special-request-page .special-request-wizard__progress-number {
	    display: block !important;
	    font: inherit;
}

.special-request-page .special-request-wizard__progress ol::before {
	    top: 20px;
}

.special-request-page .special-request-type {
	    margin-bottom: 24px;
}

.special-request-page :is(
	.special-request-type legend,
	.order-request-form label > span,
	.special-request-map__ui > label,
	.special-request-map__heading > span
) {
	    color: var(--etebar-navy);
	    font-family: var(--etebar-sans);
	    font-size: 0.875rem !important;
	    font-style: normal;
	    font-weight: 500 !important;
	    letter-spacing: 0 !important;
	    line-height: 1.45;
	    text-transform: none;
}

.special-request-page :is(
	.special-request-type legend em,
	.order-request-form label > span em
) {
	    color: var(--etebar-navy);
	    font-family: inherit;
	    font-size: inherit;
	    font-style: normal;
	    font-weight: inherit;
	    letter-spacing: 0;
	    line-height: inherit;
	    text-transform: none;
}

.special-request-page .order-request-field-help {
	    display: block;
	    margin-top: 0.45rem;
	    color: var(--etebar-gray);
	    font-size: 0.82rem;
	    font-weight: 400;
	    line-height: 1.5;
}

.special-request-page .order-request-consent--whatsapp {
	    margin-top: 0;
	    align-items: flex-start;
	    grid-template-columns: 20px minmax(0, 1fr);
	    column-gap: 0.75rem;
	    cursor: pointer;
}

.special-request-page .order-request-consent--whatsapp > input {
	    grid-column: 1;
	    grid-row: 1;
	    width: 20px !important;
	    height: 20px !important;
	    min-height: 20px !important;
	    align-self: start;
	    margin-block-start: 0.15rem;
}

.special-request-page .order-request-consent--whatsapp > span {
	    grid-column: 2;
	    grid-row: 1;
	    font-size: 0.875rem !important;
	    font-weight: 400 !important;
}

.special-request-wizard__progress-label {
    max-width: 12ch;
    font-size: 0.8rem;
	    font-weight: 500;
    line-height: 1.3;
    text-wrap: balance;
}

/* Approved Special Request additions */

@media (max-width: 700px) {

    .etebar-cart-special-request {
        margin-top: 1rem;
    }

    .special-request-page .special-request-type__choices label {
        height: 74px;
        min-height: 74px;
    }

	    .special-request-page .special-request-type__choices {
	        grid-template-columns: 1fr;
	    }
}

body.single-product .etebar-product__details .etebar-product__records dt {
	min-width: 0;
	background: transparent;
	color: var(--etebar-green-dark);
	font-size: 0.78rem;
	font-weight: 600;
	box-shadow: none;
}

body.single-product .etebar-product__details .etebar-product__records dd {
	margin: 0;
	align-self: center;
}

@media (max-width: 520px) {
	body::before {
		height: 84px;
	}

	body.single-product.woocommerce div.product .etebar-product__purchase form.cart {
		grid-template-columns: 1fr;
		gap: 0.65rem;
	}

	body.single-product .etebar-product__purchase form.cart .quantity {
		width: 138px;
	}
}

/* Approved product-detail additions */

:where(
    .site-main [id],
    .site-main fieldset,
    .site-main h1,
    .site-main h2,
    .site-main h3,
    .woocommerce-breadcrumb,
    .etebar-product__breadcrumb
) {
    scroll-margin-top: var(--etebar-header-clearance);
}

body.single-product .etebar-bundle-contents {
    border: 1px solid var(--etebar-border);
    border-radius: 9px;
    padding: 0 1rem 0.7rem;
    background: var(--etebar-paper);
}

/* Approved product-detail additions */

@media (max-width: 600px) {

    body.single-product .etebar-product__hero {
        padding-block-start: calc(var(--etebar-header-height) + 1rem);
    }
}

/* Approved product-detail additions */

@media (max-width: 520px) {
    body.single-product .etebar-product__related-shell .related.products ul.products {
        grid-template-columns: 1fr !important;
		grid-auto-rows: auto;
		align-items: start;
    }

    body.single-product .etebar-product__related-shell .related.products li.product {
        min-width: 0;
		min-height: 0;
		height: auto !important;
		grid-template-rows: auto auto;
		align-self: start;
		align-content: start;
	}

	body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__image {
		display: grid;
		height: auto;
		min-height: 0;
		align-self: stretch;
		place-items: center;
	}

	body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__image img {
		height: auto !important;
		min-height: 0;
		aspect-ratio: 1 / 1;
		object-fit: contain;
	}

	body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__body {
		flex: none;
    }

    body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__footer {
        grid-template-columns: minmax(0, 1fr);
        align-items: stretch;
		margin-top: 0;
    }

    body.single-product .etebar-product__related-shell .related.products .etebar-shop-card__footer .price {
        justify-self: start;
    }

    body.single-product .etebar-product__related-shell .related.products .button {
		width: 100%;
        min-height: 44px;
    }
}

/* Approved shared-layout additions */

.home .site-main,
.home .hero {
    background-color: #000a14;
}

/* Approved shared-layout additions */

@media (max-width: 600px) {
	.home .site-main #faq .section-heading.home-section__header .eyebrow.home-section__kicker {
		color: var(--etebar-gold);
	}

	body.home .site-main #faq .section-heading.home-section__header h2.home-section__title,
	body.home .site-main #faq .section-heading.home-section__header p.home-section__subtitle,
	body.home .site-main #faq .section-heading.home-section__header p.home-section__intro {
		color: var(--etebar-paper);
	}

	.home #faq .home-section__footer .home-section__action {
		border-color: var(--etebar-gold);
		color: var(--etebar-paper);
	}

	.home #faq .home-section__footer .home-section__action:hover,
	.home #faq .home-section__footer .home-section__action:focus-visible {
		background: var(--etebar-gold);
		color: var(--etebar-navy-dark);
	}

    :root {
        --etebar-header-height: 64px;
        --etebar-header-clearance: 92px;
    }
}

/* Final mobile catalog and checkout controls: targeted 44px targets and compact disclosures. */

.etebar-checkout-progress__label--mobile {
	display: none;
}

@media (max-width: 700px) {
	.site-header__inner > .site-logo--header {
		min-block-size: 44px;
		align-items: center;
	}

	.etebar-account-menu__group a,
	.etebar-account-menu__sign-out,
	.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
	.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer .button,
	.home .home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer .button {
		box-sizing: border-box;
		min-block-size: 44px !important;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		display: flex !important;
		min-block-size: 44px;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		cursor: pointer;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title::after {
		display: block;
		width: 0.55rem;
		height: 0.55rem;
		flex: 0 0 0.55rem;
		border-inline-end: 2px solid currentColor;
		border-block-end: 2px solid currentColor;
		content: "";
		transform: rotate(45deg) translateY(-0.12rem);
		transition: transform 160ms ease;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title[aria-expanded="true"]::after {
		transform: rotate(225deg) translate(-0.1rem, -0.1rem);
	}
}

@media (max-width: 600px) {
	.etebar-checkout-orientation .etebar-checkout-progress li {
		padding-inline: 0.2rem;
	}

	.etebar-checkout-progress button {
		min-height: 68px;
		grid-template-rows: 42px minmax(1.4em, auto);
		gap: 0.125rem;
	}

	.etebar-checkout-progress strong {
		display: block;
		font-size: 0.72rem;
		line-height: 1.3;
		text-wrap: balance;
	}

	.etebar-checkout-progress__label--full {
		display: none;
	}

	.etebar-checkout-progress__label--mobile {
		display: block;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title::after {
		transition: none;
	}
}

/* Homepage mobile hardening: header flow, hero proportions, cards and touch targets. */

@media (max-width: 1180px) {
	body.home .site-header {
		margin-block-end: 0;
	}

	body.home .site-main {
		margin-block-start: 0;
	}

	body.home .hero {
		padding-block-start: 0;
	}

	body.home :is(
		.menu-toggle,
		.header-search-toggle,
		.header-cart,
		.language-switcher__button,
		.hero-cta,
		.home-section__action
	) {
		min-block-size: 44px;
	}

	body.home .site-footer :is(.footer-menu a, .site-footer__actions a) {
		min-block-size: 44px;
	}

	body.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .button {
		min-block-size: 44px !important;
	}
}

@media (max-width: 820px) {
	body.home .hero__layout,
	html[dir="rtl"] body.home .hero__layout,
	html[data-etebar-language^="fa"] body.home .hero__layout,
	html[data-etebar-language^="ps"] body.home .hero__layout {
		grid-template-rows: auto clamp(205px, 56vw, 270px);
		padding-block: clamp(1rem, 3vw, 1.35rem) 0;
	}

	body.home .hero__content,
	html[dir="rtl"] body.home .hero__content {
		max-width: 42rem;
		padding-bottom: clamp(0.75rem, 2.5vw, 1.1rem);
	}

	body.home .hero__eyebrow {
		margin-bottom: 0.45rem;
	}

	body.home .hero h1,
	html[dir="rtl"] body.home .hero h1 {
		max-width: 15ch;
		margin-bottom: 0.55rem;
		font-size: clamp(2.05rem, 7.5vw, 2.55rem);
		line-height: 1.08;
		text-wrap: balance;
	}

	html[dir="rtl"] body.home .hero h1 {
		max-width: 18ch;
		line-height: 1.3;
	}

	body.home .hero__lead,
	html[dir="rtl"] body.home .hero__lead {
		max-width: 40rem;
		margin-bottom: 0.7rem;
		font-size: clamp(0.96rem, 2.2vw, 1.05rem);
	}

	body.home .hero .button-row {
		gap: 0.5rem;
	}

	body.home .hero__visual,
	html[dir="rtl"] body.home .hero__visual {
		height: clamp(205px, 56vw, 270px);
	}

	body.home .hero .hero-editorial img {
		aspect-ratio: 1672 / 941;
		object-fit: contain;
		object-position: center bottom;
	}

	html[dir="rtl"] body.home .hero-cta__arrow {
		transform: scaleX(-1);
	}

	body.home #how-it-works {
		padding-block-start: 1.25rem;
	}
}

@media (max-width: 560px) {
	body.home .hero__layout,
	html[dir="rtl"] body.home .hero__layout,
	html[data-etebar-language^="fa"] body.home .hero__layout,
	html[data-etebar-language^="ps"] body.home .hero__layout {
		grid-template-rows: auto clamp(202px, 56vw, 241px);
		padding-block-start: 1rem;
	}

	body.home .hero h1,
	html[dir="rtl"] body.home .hero h1 {
		font-size: clamp(2rem, 9vw, 2.35rem);
	}

	body.home .hero .button-row {
		width: 100%;
	}

	body.home .hero .hero-cta {
		width: 100%;
		min-width: 0;
		justify-content: center;
	}

	body.home .hero__visual,
	html[dir="rtl"] body.home .hero__visual {
		height: clamp(202px, 56vw, 241px);
	}

	body.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 0.5rem;
	}

	body.home .home-products__grid .etebar-shop-card--home .price {
		width: max-content;
		max-width: 100%;
		flex: 0 0 auto;
		margin: 0 !important;
		direction: ltr;
		font-variant-numeric: tabular-nums;
		unicode-bidi: isolate;
		white-space: nowrap;
	}

	body.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .button {
		min-width: 0 !important;
		min-height: 44px !important;
		flex: 1 1 112px;
		padding-inline: 0.65rem;
	}

	body.home .home-products__grid .etebar-shop-card--home .woocommerce-loop-product__title a {
		display: block;
		min-height: 44px;
	}

	body.home .site-footer .footer-menu a {
		display: inline-flex;
		align-items: center;
	}
}

@media (max-width: 374px) {
	body.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home {
		grid-template-columns: 118px minmax(0, 1fr);
	}

	body.home .home-products__grid .etebar-shop-card--home .etebar-shop-card__footer .button {
		width: 100%;
		flex-basis: 100%;
	}
}


/* ==========================================================================
   Etebar Market mobile homepage V1
   Reference direction: compact app-like commerce layout, without a mobile
   hero asset. Desktop presentation remains unchanged above 820px.
   ========================================================================== */

.homepage-mobile-only {
	display: none;
}

.site-header__mobile-shell {
	display: none;
}

@media (max-width: 820px) {
	body.home {
		--mobile-home-navy: #081b35;
		--mobile-home-gold: #c98a00;
		--mobile-home-bg: #fffdfc;
		--mobile-home-cream: #faf6ef;
		--mobile-home-border: #e7ded1;
		--mobile-home-muted: #667085;
		background: var(--mobile-home-bg);
	}

	body.home .homepage-desktop-only {
		display: none !important;
	}

	/* Shared anchor: keep #how-it-works scrollable on mobile.
	   The desktop process section carries id="how-it-works" -- roughly a hundred
	   rules in this file are keyed on that id -- and front-page.php positions it
	   immediately before the mobile "How it works" block. display:none would
	   leave it with no layout box, so /#how-it-works would scroll nowhere on
	   mobile. Collapsing it to a zero-height, zero-space box instead keeps the
	   fragment resolvable and lands it exactly on the mobile block, while its
	   desktop content stays hidden. Desktop is untouched: this lives inside the
	   max-width:820px query. */
	body.home #how-it-works.homepage-desktop-only {
		display: block !important;
		block-size: 0;
		padding-block: 0;
		margin-block: 0;
		border-block-width: 0;
		overflow: hidden;
	}

	body.home #how-it-works.homepage-desktop-only > * {
		display: none;
	}

	body.home .homepage-mobile-only {
		display: block;
	}

	body.home .container {
		width: min(100% - 36px, 720px);
	}

	/* Mobile header: burger + language rail, centered brand, search + cart rail. */
	body.etebar-mobile-header .site-header {
		position: sticky !important;
		top: 0 !important;
		z-index: 2000 !important;
		width: 100%;
		min-height: 0 !important;
		margin: 0;
		padding: 0 !important;
		border: 0;
		border-bottom: 1px solid rgba(8, 27, 53, 0.10) !important;
		border-radius: 0;
		background: #fffdfc !important;
		box-shadow: 0 4px 14px rgba(8, 27, 53, 0.04) !important;
		backdrop-filter: blur(14px);
		-webkit-backdrop-filter: blur(14px);
		transform: translateY(0) !important;
		transition:
			transform 220ms cubic-bezier(.22, .61, .36, 1),
			box-shadow 220ms ease !important;
		will-change: transform !important;
	}

	body.etebar-mobile-header .site-header.etebar-mobile-header--hidden {
		transform: translateY(-115%) !important;
		box-shadow: none !important;
	}

	/* The desktop logo/nav/actions groups are replaced by the mobile shell
	   below, but the shared product-search overlay (panel + backdrop) lives
	   inside this same container and must stay reachable from the mobile
	   search icon — so only the three desktop-only groups are hidden. */
	body.etebar-mobile-header .site-header > .site-header__inner {
		display: flex !important;
		min-height: 0 !important;
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 0 !important;
	}

	body.etebar-mobile-header .site-header__inner > .site-logo--header,
	body.etebar-mobile-header .site-header__inner > .site-header__nav-group,
	body.etebar-mobile-header .site-header__inner > .site-header__actions {
		display: none !important;
	}

	/* .site-header carries transform/will-change above for the hide-on-scroll
	   effect, which makes it the containing block for these fixed-position
	   overlay elements — so backdrop coverage is pinned in viewport units
	   rather than relying on inset:0 to reach the true viewport edges. */
	body.etebar-mobile-header .site-header__search-backdrop {
		width: 100vw !important;
		height: 100vh !important;
	}

	body.etebar-mobile-header .site-header__search-panel {
		top: 88px !important;
	}

	body.etebar-mobile-header .site-header__mobile-shell {
		position: relative !important;
		display: block !important;
		width: 100%;
		height: 88px !important;
		min-height: 88px !important;
		margin: 0 !important;
		background: #fffdfc !important;
		overflow: visible !important;
	}

	/* Left/right groups are sized to their own content (auto), and the
	   brand sits in the flexible middle column. Because the brand centers
	   in the space left over between the two groups rather than in a
	   mirrored pair of reserved columns, any width difference between the
	   left group (burger + language field) and the right group (search +
	   cart) shifts the brand off true center by half that difference,
	   independent of viewport width — which is why the language field
	   is kept close to the 44px baseline of a single icon button. */
	/* No block padding: every control centres on the bar's true middle.
	   This previously carried `padding-block: 0 4px` so that the header's
	   extra height would read as breathing room under the row, but the
	   side effect was that the burger, language pill, search and cart all
	   sat 2px above the header's optical centre line while the 1px bottom
	   border pulled the perceived centre 0.5px the other way — a visible
	   ~2.5px lift on a 48px control. Centred symmetrically instead. */
	body.etebar-mobile-header .site-header__mobile-bar {
		display: grid !important;
		grid-template-columns: auto minmax(0, 1fr) auto !important;
		align-items: center !important;
		height: 100% !important;
		padding-inline: 12px !important;
		/* 1px of top padding, not zero: the header's own 1px bottom border
		   is part of its visible box, so centring the controls in the
		   88px shell alone left them half a pixel above the 89px header's
		   true centre line. This offsets the border exactly. */
		padding-block: 1px 0 !important;
		column-gap: 6px !important;
	}

	body.etebar-mobile-header .mobile-header-rail {
		display: flex !important;
		align-items: center !important;
		gap: 6px !important;
		width: auto !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start {
		grid-column: 1 !important;
		justify-content: flex-start !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end {
		grid-column: 3 !important;
		justify-content: flex-end !important;
	}

	/* Burger + search/cart — plain square tap targets, strong glyphs */
	body.etebar-mobile-header .mobile-menu-toggle,
	body.etebar-mobile-header .mobile-search-toggle {
		grid-row: 1 !important;
		position: static !important;
		display: grid !important;
		place-items: center !important;
		width: 48px !important;
		height: 48px !important;
		min-width: 48px !important;
		min-height: 48px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 13px !important;
		background: transparent !important;
		color: #081b35 !important;
	}

	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines,
	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines::before,
	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines::after {
		width: 37px !important;
		height: 3.8px !important;
		background: #081b35 !important;
		border-radius: 999px !important;
	}

	/* Even 3-bar spacing. The two pseudo-bars are taken OUT of flow to get
	   it: as static blocks they stack inside the span, so ::after starts
	   one bar-height (3.8px) below ::before's origin and an equal
	   translateY(±7px) pair landed the bars 7px / 10.8px apart — the
	   middle-to-bottom gap visibly wider than middle-to-top. Absolute
	   positioning gives both bars the same origin (the span's own centre
	   line, via top:50% + the -50% in the transform), so the ±8.9px
	   offsets are symmetric by construction. 8.9px keeps the glyph's
	   overall height at its previous 21.6px, so the icon's size and tap
	   target are unchanged — only the spacing is corrected. */
	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines {
		position: relative !important;
	}

	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines::before,
	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines::after {
		position: absolute !important;
		inset-inline-start: 0 !important;
		top: 50% !important;
	}

	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines::before {
		transform: translateY(calc(-50% - 8.9px)) !important;
	}

	body.etebar-mobile-header .mobile-menu-toggle .menu-toggle__lines::after {
		transform: translateY(calc(-50% + 8.9px)) !important;
	}

	body.etebar-mobile-header .mobile-search-toggle svg {
		width: 44px !important;
		height: 44px !important;
	}

	body.etebar-mobile-header .mobile-search-toggle[aria-expanded="true"] {
		background: #faf6ef !important;
	}

	/* Centered Etebar / Market / Dari brand — flexible middle column,
	   uncapped, sized larger than the earlier iteration of this header. */
	body.etebar-mobile-header .mobile-header-brand {
		grid-column: 2 !important;
		grid-row: 1 !important;
		position: static !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		justify-self: center !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin: 0 !important;
		color: #081b35 !important;
		text-decoration: none !important;
		white-space: nowrap !important;
		overflow: visible !important;
	}

	body.etebar-mobile-header .mobile-header-brand__name {
		font-family: Georgia, "Times New Roman", serif !important;
		font-size: 37px !important;
		font-weight: 500 !important;
		line-height: 0.86 !important;
		letter-spacing: -1px !important;
	}

	body.etebar-mobile-header .mobile-header-brand__market {
		position: relative !important;
		margin-top: 6px !important;
		padding-inline: 15px !important;
		color: #c98a00 !important;
		font-size: 10px !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		letter-spacing: 2.2px !important;
		text-transform: uppercase !important;
	}

	body.etebar-mobile-header .mobile-header-brand__market::before,
	body.etebar-mobile-header .mobile-header-brand__market::after {
		position: absolute !important;
		top: 50% !important;
		width: 10px !important;
		height: 1px !important;
		background: #c98a00 !important;
		content: "" !important;
	}

	body.etebar-mobile-header .mobile-header-brand__market::before {
		inset-inline-start: 0 !important;
	}

	body.etebar-mobile-header .mobile-header-brand__market::after {
		inset-inline-end: 0 !important;
	}

	/* Dari wordmark, enlarged 17px -> 19px (+11.8%). This is the widest
	   line in the centred brand block, so its width is what the two rails
	   have to clear — see the horizontal-budget note on the rail gaps
	   below, which pays for this increase (and the language pill's
	   rightward shift) out of the bar's own edge padding. */
	body.etebar-mobile-header .mobile-header-brand__dari {
		margin-top: 6px !important;
		color: #c98a00 !important;
		font-family: Tahoma, Arial, sans-serif !important;
		font-size: 19px !important;
		font-weight: 700 !important;
		line-height: 1.05 !important;
	}

	/* Language field — horizontal [flag] [name] [chevron] pill, with the
	   flag matching the language actually selected (UK for English,
	   Afghanistan for Dari/Pashto) and the full name spelled out beside
	   it. Content enlarged again (name 14.5→15px, flag 15×11→17×12,
	   chevron 7.7×5.5→9×6) with real 7px trailing padding (never 0) so
	   there is visible breathing room after the text/chevron. The
	   asymmetric padding (5px start, 7px end) plus the fixed 48px burger
	   keep the pill's LEFT edge anchored while it grows, so extra width
	   reads as rightward growth, not re-centering.

	   HORIZONTAL BUDGET. This bar is width-saturated and every number in
	   it is measurement-driven, not chosen. The fixed content alone —
	   burger 48 + pill ~105 + search 48 + cart 48 = 249px — plus the
	   ~107px Dari wordmark comes to ~356px, so at 390px there are only
	   ~34px left to divide between the two outer insets, the two rail
	   gaps and the brand's clearance on both sides. Nothing here can be
	   taken from the 48px tap targets, the pill or the Dari size.

	   The outer inset is the first claim on that budget, and the rail gaps
	   absorb the remainder: Burger→Pill drops 12→4px, which leaves the
	   pill within ~2px of where it sat before, and Search→Cart holds at
	   3px between two fixed targets.

	   The inset itself is FLUID rather than a fixed figure, because the
	   maximum it can take is a straight function of viewport width: with
	   everything else held (48px targets, full pill, 19px Dari, ~2px
	   brand clearance) the arithmetic allows at most ~4px at 360, ~10px
	   at 390 and ~21px at 412. A single 12px value would fit two of those
	   three and collide the gold Dari with the white pill at 360-389. The
	   calc below is that line — 4px at 360 rising ~0.192px per viewport
	   px — clamped at 16px so it stops at the top of the requested band
	   rather than growing without limit on tablets. Because the icon
	   buttons carry ~5.5px of their own internal padding, the visible
	   glyphs sit roughly 5.5px further off the edge again than these
	   numbers suggest. */
	body.etebar-mobile-header .mobile-header-rail--start {
		gap: 4px !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end {
		gap: 3px !important;
	}

	body.etebar-mobile-header .site-header__mobile-bar {
		padding-inline: clamp(6.5px, calc((100vw - 360px) * 0.115 + 6.5px), 12.5px) !important;
		column-gap: 1px !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start .language-switcher {
		grid-row: 1 !important;
		position: relative !important;
		display: block !important;
		flex: 0 0 auto !important;
		width: auto !important;
		margin: 0 !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start .language-switcher__button,
	body.etebar-mobile-header .mobile-header-rail--start [data-language-dropdown-toggle] {
		display: inline-flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 2px !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
		height: 48px !important;
		min-height: 48px !important;
		padding-inline-start: 5px !important;
		padding-inline-end: 7px !important;
		padding-block: 0 !important;
		border: 0 !important;
		border-radius: 12px !important;
		background: #ffffff !important;
		color: #081b35 !important;
		font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
		line-height: 1 !important;
		white-space: nowrap !important;
		box-shadow: inset 0 0 0 1px #e2d9cd, 0 2px 8px rgba(8, 27, 53, 0.05) !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start .language-switcher__globe {
		display: inline-block !important;
		width: 17px !important;
		height: 12px !important;
		flex: 0 0 auto !important;
		border-radius: 2px !important;
		box-shadow: inset 0 0 0 1px rgba(8, 27, 53, 0.12) !important;
	}

	/* English keeps the shared UK flag graphic; Dari and Pashto get the
	   Afghanistan flag instead of the UK flag staying on screen for a
	   language it doesn't represent. */
	html[data-etebar-language="fa_AF"] body.etebar-mobile-header .mobile-header-rail--start .language-switcher__globe,
	html[data-etebar-language="ps_AF"] body.etebar-mobile-header .mobile-header-rail--start .language-switcher__globe {
		display: inline-block !important;
		/* The Afghanistan flag is drawn here rather than taken from an emoji
		   font: Samsung/Android emoji sets render the regional-indicator pair
		   inconsistently. The previous inline SVG was three bare colour rects
		   with no emblem at all, which is why the switcher showed plain
		   stripes on the reporter's Samsung browser. This one carries the
		   national emblem -- wreath ring, mosque with mihrab niche, flanking
		   minarets and finial -- shaped to stay legible once scaled into the
		   17x12 pill slot (51x36 device px at 3x). It is ~820 bytes inline, so
		   it costs no request and cannot 404.

		   `contain` rather than `cover`: the artwork is a true 3:2 flag and the
		   slot is 17x12 (1.417:1), so `cover` cropped the black and green bands
		   at the edges. `contain` letterboxes by ~0.3px instead, keeping the
		   proportions correct and all three bands whole. */
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 600'%3E%3Crect width='300' height='600' fill='%23000000'/%3E%3Crect x='300' width='300' height='600' fill='%23d32011'/%3E%3Crect x='600' width='300' height='600' fill='%23007a3d'/%3E%3Cg fill='%23ffffff'%3E%3Ccircle cx='450' cy='300' r='168' fill='none' stroke='%23ffffff' stroke-width='22'/%3E%3Crect x='357' y='392' width='186' height='32'/%3E%3Crect x='352' y='286' width='26' height='106'/%3E%3Crect x='522' y='286' width='26' height='106'/%3E%3Ccircle cx='365' cy='282' r='16'/%3E%3Ccircle cx='535' cy='282' r='16'/%3E%3Cpath d='M386 392V318a64 64 0 0 1 128 0v74Z'/%3E%3Ccircle cx='450' cy='248' r='22'/%3E%3Crect x='443' y='200' width='14' height='40'/%3E%3C/g%3E%3Cpath d='M418 392v-62a32 32 0 0 1 64 0v62Z' fill='%23d32011'/%3E%3C/svg%3E") center / contain no-repeat !important;
	}

	/* Collapse the real, translated name (native script for Dari/Pashto)
	   and paint the full Latin language name in its place with a
	   pseudo-element, so the header always reads "English" / "Dari" /
	   "Pashto" — matching the flag beside it — at a legible size. */
	body.etebar-mobile-header .mobile-header-rail--start .language-switcher__native {
		display: inline-block !important;
		flex: 0 0 auto !important;
		width: auto !important;
		overflow: hidden !important;
		font-size: 0 !important;
		line-height: 0 !important;
		color: transparent !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start .language-switcher__native::before {
		content: "English" !important;
		display: inline-block !important;
		font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
		font-size: 15px !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		letter-spacing: 0.1px !important;
		color: #081b35 !important;
		white-space: nowrap !important;
	}

	html[data-etebar-language="fa_AF"] body.etebar-mobile-header .mobile-header-rail--start .language-switcher__native::before {
		content: "Dari" !important;
	}

	html[data-etebar-language="ps_AF"] body.etebar-mobile-header .mobile-header-rail--start .language-switcher__native::before {
		content: "Pashto" !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start .language-switcher__chevron {
		display: block !important;
		width: 9px !important;
		height: 6px !important;
		flex: 0 0 auto !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end .header-cart {
		grid-row: 1 !important;
		position: relative !important;
		display: grid !important;
		place-items: center !important;
		justify-content: center !important;
		width: 48px !important;
		height: 48px !important;
		min-width: 48px !important;
		min-height: 48px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 13px !important;
		background: transparent !important;
		color: #081b35 !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end .header-cart > span:not(.header-cart__count) {
		display: none !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end .header-cart__icon {
		width: 46px !important;
		height: 46px !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end .header-cart__count {
		min-width: 18px !important;
		height: 18px !important;
		font-size: 10px !important;
		font-weight: 800 !important;
	}

	/* Shared mobile hero: typography only, no product artwork. */
	body.home .site-main {
		margin-block-start: 0;
		background: var(--mobile-home-bg);
	}

	/* Hero -> "How ordering works" transition. The desktop `.home .hero`
	   rule draws a 1px gold hairline along the section's bottom edge; on
	   mobile, where both sides of it are the same flat cream, that line
	   was the ONLY thing separating the two sections and read as a stray
	   divider rather than a designed edge. It is switched off here and
	   replaced by a soft vertical wash: the hero starts a shade warmer
	   than the page and resolves into the page background before it ends,
	   so the section closes itself and the next one begins in clean space
	   — separation by tone and rhythm instead of a rule. */
	body.home .hero,
	html[dir="rtl"] body.home .hero {
		min-height: 0 !important;
		padding: 0 !important;
		border-bottom: 0 !important;
		background: linear-gradient(180deg, #fdf7ed 0%, #fefbf6 52%, var(--mobile-home-bg) 100%) !important;
		color: var(--mobile-home-navy) !important;
		/* Clips the product's outer edge and the disc where they run past
		   the viewport. The reference composition depends on the product
		   being cut by the frame edge, and without this that overhang
		   would become real horizontal page scroll. Nothing in this
		   section is meant to escape it. */
		overflow: hidden !important;
	}

	/* The desktop hero darkens its background photo with an absolute,
	   inset:0 gradient overlay (.hero::before) for text contrast — with
	   no photo behind it on mobile it just paints a dark navy wash over
	   the whole section, so it's switched off here along with the other
	   decorative grid-pattern layer. */
	body.home .hero::before,
	body.home .hero::after,
	body.home .hero__grid-pattern {
		display: none !important;
	}

	/* Concept-3 layout: text column on the left, product visual on the
	   right, sharing one row instead of the earlier centered text-only
	   stack (which hid .hero__visual entirely). RTL/Dari/Pashto mirror
	   the row so the visual stays on the reading-start side. Every
	   declaration here needs !important: later rules further down this
	   same stylesheet (e.g. the 430px and 560px tiers) redeclare several
	   of these properties without !important, and non-important rules
	   still win over earlier non-important ones by source order. */
	/* Grid, not flex: a `flex: 1 1 auto`/`0` main-size on .hero__content
	   was consistently landing ~32px wider than the free space actually
	   left by .hero__visual, reproducibly, independent of gap/basis/
	   width overrides (even inline !important ones) — not something
	   traceable to any single rule in this stylesheet's cascade. Grid's
	   `minmax(0, 1fr)` track sizes the text column deterministically
	   against the fixed visual column, sidestepping whatever was going
	   on with flex-grow resolution here. */
	/* Safe inset lives on the layout itself, symmetrically, so the text and
	   the product sit on the same margin — they previously ran 18px and
	   4px, which is a large part of why the image read as pasted on. The
	   gutter tightens 18px -> 16px here (still inside the 16-20px safe
	   band) purely to buy back 4px of row for the larger type below.

	   TRACK SIZING. The text column carries a hard floor, not `minmax(0,
	   1fr)`: the CTA is a single line whose min-content the column must
	   clear or the button pushes out of the layout — that was a real
	   horizontal page overflow in RTL. What sets the floor is the CTA, NOT
	   the headline: `text-wrap: balance` holds the headline to three
	   balanced lines whose longest is only ~160-176px at these sizes, so
	   the headline could live in a much narrower column than the button
	   can. Floor is 188px, measured against the 17px CTA's ~181px
	   min-content; the product then takes up to 46% of what remains. */
	/* NO GRID. The hero is one normal-flow text column with the product
	   absolutely positioned beside it, and that is a deliberate choice
	   rather than a simplification.

	   Every previous attempt here used Grid, and every one of them had the
	   same class of bug: the product and the text shared row tracks, so
	   the product's height fed back into the text's layout. Tracks
	   inflated when the product grew, the headline and the copy drifted
	   apart, and the section acquired dead space that no amount of
	   alignment tuning removed — because the cause was track sizing, not
	   alignment. Taking the product out of flow entirely severs that link
	   for good: .hero__content is a plain block whose height is the sum of
	   its own children, and NOTHING about the product can change it.

	   The layout box is the positioning context, and the hero's height is
	   therefore driven purely by the text stack. The product is anchored
	   to the bottom of this box and reaches up beside the copy, which is
	   the reference's composition: text column on the reading side,
	   product spanning the full height on the outer side. */
	body.home .hero__layout {
		display: block !important;
		position: relative !important;
		z-index: 1 !important;
		/* Safe inset 23px at 360, 25px at 390, 26px at 412 — up ~24% from
		   19/20/21. The headline no longer starts almost on the bezel. */
		width: min(100% - clamp(49px, 13.6vw, 56px), 720px) !important;
		min-height: 0 !important;
		height: auto !important;
		/* Height is the sum of the text stack plus these two figures and
		   nothing else — the product is out of flow and contributes zero.
		   Kept tight because the whole point of this revision is a hero
		   that lands in the 330-370px band rather than 450px+. */
		padding: 0.5rem 0 !important;
		text-align: left !important;
	}

	html[dir="rtl"] body.home .hero__layout,
	html[data-etebar-language^="fa"] body.home .hero__layout,
	html[data-etebar-language^="ps"] body.home .hero__layout {
		direction: rtl !important;
	}

	/* `display: contents` so the headline, lead and button-row become
	   direct grid items of .hero__layout and can be placed on separate
	   rows — the CTA needs a row of its own (see the layout note above),
	   and it lives inside this wrapper in the markup. Doing it in CSS
	   rather than by moving the element keeps the desktop hero's DOM,
	   and therefore the desktop layout, completely untouched. This box
	   paints nothing itself, so losing it costs no visual styling; the
	   text alignment it carries still reaches the children, because
	   inherited properties pass through a `contents` box normally. */
	/* The text column: a real block box, in normal flow, holding the
	   headline, the divider, the copy and both buttons in document order.
	   Emphatically NOT `display: contents` — that was what dissolved this
	   box into grid items in the first place and let track sizing pull the
	   headline and the copy apart. As an ordinary block it stacks its
	   children in normal flow, so their spacing is fixed by their own
	   margins and cannot be influenced by anything outside it.

	   55% of the layout box — 173px at 360, 187px at 390, 198px at 412.

	   This column is the hero's central trade, and it is worth stating
	   plainly: the text and the product share one fixed horizontal budget
	   (the viewport minus the safe inset), so every pixel the column takes
	   for larger type is a pixel the product loses. The column is sized to
	   the LARGER of two measured minimums — the headline's "essentials
	   for" at 4.594 x the font size, and the copy's "Shop trusted
	   groceries" at 11.375 x — and nothing beyond that, so the product
	   keeps everything left over.

	   This column governs the HEADLINE and the COPY only. The CTA group
	   below is deliberately wider and overhangs it; see the button-row.
	   The split is what buys the product its size: every pixel not spent
	   here goes to the tote, and at 44% the tote clears 190px at 390 with
	   the whole arrangement visible.

	   The headline sets in three lines because of this width: at the size
	   below, "essentials for" measures 155-177px and fits, while "Everyday
	   essentials" measures 235-270px and cannot — so it breaks Everyday /
	   essentials for / your family., with 3.8-4.8px of slack on the
	   longest line at 360, 390 and 412 alike.

	   z-index 2 keeps the whole stack above the decorative layer, which
	   reaches under this column's outer edge by design. */
	body.home .hero__content,
	html[dir="rtl"] body.home .hero__content {
		display: block !important;
		position: relative !important;
		z-index: 2 !important;
		width: 55% !important;
		max-width: none !important;
		min-width: 0 !important;
		/* Logical, and it has to be. `margin: 0` over-constrains a block
		   that also has a width, and Chrome resolved that by pinning the
		   box to the physical left in BOTH directions — so in Dari and
		   Pashto the text column stayed on the left while the product
		   mirrored to the left as well, and the two sat on top of each
		   other. `margin-inline: 0 auto` puts the zero on the inline-start
		   side, so the column follows the reading direction: left in
		   English, right in Dari and Pashto. */
		margin-block: 0 !important;
		margin-inline: 0 auto !important;
		padding: 0 !important;
		text-align: left !important;
	}

	html[dir="rtl"] body.home .hero__content {
		text-align: right !important;
	}

	body.home .hero__eyebrow {
		display: none !important;
	}

	/* Headline sits in the 40-46px band (was 34-38px). Spanning the full
	   row is what pays for it: at these sizes "Everyday essentials" sets
	   at 294px (40px type) to 337px (46px type) against a content width
	   of 312-357px, so the line holds and the headline reads as two long
	   editorial lines rather than three short ones. The 11.2vw middle
	   term keeps ~19px of slack under that longest line at every width in
	   range, so the two-line setting is stable and never drops a word.

	   The tracking and line-height follow the desktop hero's treatment,
	   which sets this wordmark-like headline at -0.048em / 0.95 — that
	   tight, almost locked-up setting is what gives the desktop version
	   its authority. Mobile takes -0.04em / 1.0: with only two lines it
	   can afford desktop's tighter leading, and the negative tracking
	   also buys back the width the larger size spends. */
	body.home .hero h1 {
		max-width: 100% !important;
		margin: 0 !important;
		color: var(--mobile-home-navy) !important;
		/* 8.9vw — 32.0px at 360, 34.7px at 390, 36.7px at 412 — and this
		   figure is the largest that holds the three-line setting, not a
		   round number picked for looks. The break is decided by
		   "essentials for", which measures 4.832 x the font size in this
		   face; against the column widths above the ceilings are 32.8,
		   35.6 and 37.7px. 8.9vw sits just under all three at once and
		   leaves 3.8-4.8px of slack, enough to absorb font-rounding
		   differences without ever tipping to four lines. 9.1vw also fits
		   arithmetically but leaves under a pixel, which is not a margin
		   worth shipping. The cap holds it at 37.6px above ~422px wide,
		   where the column would otherwise let it grow past the design. */
		font-size: clamp(3.375rem, 14.3vw, 3.5625rem) !important;
		line-height: 0.82 !important;
		/* -0.05em, tightened from -0.032em, and it is load-bearing rather
		   than cosmetic: it shortens "essentials for" by roughly 0.17em —
		   about 6.6px at this size — which is most of what lets the
		   headline reach 39px and still hold three lines inside the
		   column. Desktop sets this same headline at -0.048em, so the
		   value is in family with the design rather than invented. */
		letter-spacing: -0.065em !important;
		text-align: left !important;
		/* `balance` is deliberately OFF. It exists to even out a ragged
		   rag by redistributing words, which is the opposite of what this
		   composition wants: the reference's headline is four lines of
		   descending length (Everyday / essentials / for your / family.)
		   and balancing would even them and could change the count. The
		   column width is what sets the breaks here, and it is chosen to
		   produce exactly those four lines. */
		text-wrap: initial !important;
	}

	/* Gold divider between the headline block and the supporting copy.
	   Drawn on the headline's own ::after rather than as a new element so
	   the shared desktop markup is untouched and the rule cannot escape
	   this mobile block. A 64x3 bar, not a hairline: at 3px it is
	   unambiguously a designed mark at arm's length, while 64px keeps it
	   an accent under a ~330px headline rather than a rule across it. The
	   gradient runs from the CTA's gold into a lighter warm tone so it
	   ties to the button and fades out rather than stopping dead.
	   `margin-inline: 0 auto` is logical, so it sits at the reading edge
	   in LTR and mirrors to the right edge in Dari and Pashto. */
	body.home .hero h1::after {
		content: "" !important;
		display: block !important;
		/* Measured off the reference: 44px on an 864px frame, i.e. 5.1% of
		   the viewport, so 18-21px here. It reads as a short accent mark
		   under the headline, nothing like a rule across the column — the
		   previous 64px was three times the reference's proportion and
		   spanned a third of the text column. */
		width: clamp(32px, 8.8vw, 36px) !important;
		height: 3px !important;
		margin-block: 1.125rem 0 !important;
		margin-inline: 0 auto !important;
		border-radius: 2px !important;
		background: linear-gradient(90deg, #c08528 0%, #dcb36a 100%) !important;
	}

	html[dir="rtl"] body.home .hero h1::after {
		background: linear-gradient(270deg, #c08528 0%, #dcb36a 100%) !important;
	}

	/* Arabic-script headline scales with the Latin one but stays a step
	   smaller and much looser: at this size Dari and Pashto need the
	   extra leading for their ascenders and diacritics, and negative
	   tracking would collide the joined forms.

	   27.7-31.7px, and the gap to the Latin headline's 32-36.7px is
	   almost entirely the line-height: 1.3 against 0.95 means three
	   Arabic lines occupy the same block height as three Latin ones at a
	   larger size. That equivalence is the point — it is what keeps the
	   Dari and Pashto hero inside the same 330-370px band as the English
	   one. At the previous 9.4vw the block ran four lines deep and the
	   section reached 447px. */
	html[dir="rtl"] body.home .hero h1 {
		max-width: 100% !important;
		font-size: clamp(2.625rem, 10.95vw, 2.8125rem) !important;
		line-height: 1.12 !important;
		letter-spacing: 0 !important;
		text-align: right !important;
	}

	/* Supporting copy up to 17-18px (was 15.5-16px). This is row 2's
	   reading column, sitting beside the product, and it is the one place
	   the extra type size is paid for in width — so the measure is left
	   unconstrained (`max-width: none`) and the column track governs
	   instead. `text-wrap: balance` is dropped here for the same reason:
	   in a column this narrow it evened the rag by pulling the block
	   taller, which is the opposite of what is wanted next to a tall
	   product. Against the 40-46px headline the ratio is ~1:2.5, close to
	   desktop's 1:3.2 and still unmistakably secondary. */
	/* Sits directly under the divider, inside the same column, and is
	   held there by normal flow — the product cannot push it anywhere.

	   13.8px at 360, 14.9px at 390, 15.0px at 412, and like the headline
	   this is a measured ceiling rather than a preference. The copy has to
	   set in three lines, and the binding line is "Shop trusted
	   groceries" at 11.375 x the font size: against a 158.4px column at
	   360 that caps the type at 13.9px. Anything larger breaks the first
	   line after "trusted" and the block runs to five lines, which both
	   overshoots the height budget and reads badly beside a three-line
	   headline. 13.8px is a shade under the 14-15px asked for, and the
	   360px column is the reason; from 385px up it is 14.9-15px. */
	body.home .hero__lead {
		max-width: none !important;
		min-width: 0 !important;
		margin: 1.25rem 0 0 !important;
		color: #475467 !important;
		font-size: clamp(1.34375rem, 5.7vw, 1.4375rem) !important;
		line-height: 1.18 !important;
		letter-spacing: -0.06em !important;
		text-align: left !important;
		text-wrap: initial !important;
	}

	html[dir="rtl"] body.home .hero__lead {
		letter-spacing: 0 !important;
		text-align: right !important;
	}

	/* Row 3, placed across both columns. The primary button's min-content
	   is ~266px at the sizes below, well past any text column a 360px
	   phone can offer, so the pair needs the full row to draw from.

	   The group itself is only as wide as the primary button (18.5rem),
	   not the whole row: the secondary is centred inside it, so the pair
	   has to share one box or the centring has nothing to centre against
	   — at full-row width the secondary sat 10px past the primary's right
	   edge and 30px inside its left, which read as a misalignment rather
	   than a hierarchy. `justify-self: start` then anchors the group to
	   the reading edge, and because the layout carries `direction: rtl`
	   in Dari and Pashto, `start` mirrors to the right there by itself. */
	/* DELIBERATELY WIDER THAN ITS OWN COLUMN. This is the hybrid the
	   layout turns on, and it is worth being explicit about why.

	   The buttons and the headline want opposite things. The headline
	   wants a narrow measure, because that is what leaves the product its
	   width. The secondary button wants a wide one: "Request an item or
	   service" is 26 characters at 13.99 x the font size, so a one-line
	   label needs about 244px however the chrome is trimmed — far past the
	   158-182px the text column can offer. Forcing both into one column
	   is what previously made the secondary label wrap to two lines.

	   So the group takes a fixed 250px and simply overhangs its parent's
	   inline-end edge. It can do that safely because it is the LAST block
	   in the column and the product is anchored ABOVE it: the tote's lower
	   edge clears the top of this group by 15-24px at every width in
	   range, so the overhang runs into open background, never into the
	   artwork. 250px is ~64% of a 390 viewport — clearly a deliberate
	   button group, and equally clearly not a full-bleed bar. */
	body.home .hero .button-row {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
		/* 10px between the two buttons: close enough to read as one
		   action group, far enough that they are not one slab. */
		gap: 10px !important;
		width: 300px !important;
		max-width: none !important;
		min-width: 0 !important;
		/* Logical margins, for the same reason .hero__content needs them:
		   a box with a fixed width and both physical margins at 0 is
		   over-constrained, and Chrome resolves that by pinning it to the
		   physical left in both writing modes. `margin-inline: 0 auto`
		   anchors it to the reading edge instead, so the overhang falls
		   rightward in English and leftward in Dari and Pashto. */
		margin-block: 0.625rem 0 !important;
		margin-inline: 0 auto !important;
	}

	/* The row is a column now, so justify-content would push the pair
	   vertically rather than placing it; the grid's own `justify-self`
	   above handles the inline direction in both writing modes. */
	html[dir="rtl"] body.home .hero .button-row {
		justify-content: flex-start !important;
	}

	/* Secondary action — the existing Special Request route. The element
	   and its wording are already in the markup (it was simply hidden on
	   mobile), so nothing new is invented here and the href stays the
	   project's own special-request URL.

	   Same box as the primary, exactly as in the reference, where the two
	   buttons measure 415x94 and 420x95 — within a few pixels of each
	   other. The ranking is carried entirely by TREATMENT, not by size:
	   cream fill instead of gold, navy content instead of white, a
	   hairline navy outline, no shadow, and a label a step smaller and
	   lighter. That is a truer hierarchy than shrinking the box, which is
	   what the previous version did.

	   THE LABEL WRAPS TO TWO LINES, and that is unavoidable rather than a
	   choice. "Request an item or service" is 26 characters; inside a
	   column that is 48% of the viewport, one line would need a 8.6-10.9px
	   label at every width in range. (The reference's own secondary label
	   is 2.0% of its frame — 7.7px at 390 — which is exactly the same
	   problem, visible in the mockup only because it is drawn at a much
	   larger frame than a real phone.) Two lines at 13px keeps the
	   reference's column proportion AND a readable label; the break falls
	   after "item" on its own.

	   The two icons are painted as pseudo-elements because the markup for
	   this link is text-only and is shared with desktop — adding SVGs to
	   the HTML would have changed the desktop hero. */
	body.home .hero-cta--secondary {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		/* Icon, gaps and padding are all trimmed against the primary's,
		   because this label is nearly twice as long and the 250px box has
		   to hold it on ONE line: 13px x 13.99 = 182px of label, plus a
		   15px icon, a 13px arrow, two 5px gaps and 18px of padding, comes
		   to 238px inside 250px. 12px of slack — narrower than the
		   primary's 50px, but real, and it is what keeps the wrap the
		   previous build suffered from out of this design. */
		gap: 0.4rem !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		align-self: stretch !important;
		min-height: 54px !important;
		padding-block: 0.35rem !important;
		padding-inline: 0.65rem !important;
		border: 1px solid rgba(8, 27, 53, 0.28) !important;
		border-radius: 12px !important;
		background: #fffdfc !important;
		color: #081b35 !important;
		font-size: 1.09375rem !important;
		font-weight: 700 !important;
		letter-spacing: 0 !important;
		line-height: 1.25 !important;
		text-align: center !important;
		text-decoration: none !important;
		box-shadow: none !important;
		white-space: nowrap !important;
	}

	body.home .hero-cta--secondary::before,
	body.home .hero-cta--secondary::after {
		content: "" !important;
		display: block !important;
		flex: 0 0 auto !important;
		background-repeat: no-repeat !important;
		background-position: center !important;
		background-size: contain !important;
	}

	/* Flat archive box, matching the reference's leading glyph. The
	   previous icon was an isometric 3D cube, which read as a different
	   family from the flat outline basket on the primary. */
	body.home .hero-cta--secondary::before {
		width: 18px !important;
		height: 18px !important;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Crect x='3.1' y='4.6' width='17.8' height='14.8' rx='2.4' stroke='%23081b35' stroke-width='1.7'/%3E%3Cpath d='M3.1 9.6h17.8M9.6 13.6h4.8' stroke='%23081b35' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") !important;
	}

	/* Straight arrow with a shaft, not a chevron — the reference uses a
	   full arrow on both buttons, and a bare chevron reads as a
	   disclosure caret rather than a call to action. */
	body.home .hero-cta--secondary::after {
		width: 16.5px !important;
		height: 16.5px !important;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M3.4 10h13.2M12 5.4 16.6 10 12 14.6' stroke='%23081b35' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	}

	html[dir="rtl"] body.home .hero-cta--secondary::after {
		transform: scaleX(-1) !important;
	}

	body.home .hero-cta--secondary:focus-visible {
		outline: 3px solid #081b35 !important;
		outline-offset: 3px !important;
	}

	body.home .hero-cta--secondary:active {
		background: #faf6ef !important;
	}

	/* Primary CTA, rebuilt against the desktop hero's button rather than
	   invented separately. Desktop uses Warm Gold #d7ae5f with navy
	   #061525 text, an 8px radius, a 1px same-gold border and a soft
	   gold-cast glow — restrained and warm. The previous mobile version
	   had drifted to #c98a00, a harder, more orange gold that belongs to
	   the section accents, not to this button, and it read heavy on
	   cream. It now takes desktop's exact gold and navy.

	   The two things deliberately NOT copied from desktop are size and
	   weight: desktop sets 15px/500 because it sits on a dark field at
	   arm's length, whereas a phone's primary action needs to carry at a
	   glance and be thumb-sized — so this is 17px/700 in a 58px control.
	   Radius is 10px, a touch softer than desktop's 8px for the larger
	   control, and still deliberate rather than a pill.

	   Depth: desktop's glow works on navy but would be invisible on
	   cream, so it becomes a 1px darker-gold edge plus one very shallow
	   shadow — enough to seat the button, nowhere near the template drop
	   shadow this replaced. Navy-on-#d7ae5f holds ~8.8:1.

	   SIZING. The button has the full content row to itself, so the
	   content takes the size it actually needs: a 21px label, a 26px
	   basket and a 19px chevron on 0.5rem gaps, inside 1.15rem of real
	   inline padding (was 19/22/17 in a 62px control). It is capped at
	   18.5rem and left-aligned rather than run edge to edge — it should
	   read as the text column's CTA given room to breathe, not as a
	   full-bleed banner. Measured min-content is ~266px against the 296px
	   cap, and 296px still clears the 312px content width at 360.

	   COLOUR. White content sits on a deeper gold than the brand's
	   #d7ae5f, and it has to: white on #d7ae5f measures 2.08:1, which is
	   unreadable and fails WCAG outright. #a87511 is the same warm gold
	   family taken down until white clears 4.02:1 — comfortably past the
	   3:1 required for large text (the label is 19px/800) and for the
	   basket and chevron as non-text graphics, and close to the 4.5:1
	   normal-text bar. Going lighter than this makes the white fail;
	   going darker stops reading as gold. Note this is still a real
	   step down from the 8.85:1 the previous navy-on-gold had. */
	body.home .hero .hero-cta--primary {
		display: inline-flex !important;
		align-items: center !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		min-height: 60px !important;
		justify-content: center !important;
		gap: 0.5rem !important;
		padding-inline: 0.85rem !important;
		border: 1px solid rgba(122, 84, 14, 0.30) !important;
		border-radius: 12px !important;
		background: #c08528 !important;
		color: #ffffff !important;
		/* A flat 16px, not a viewport clamp. The button is a fixed 250px
		   at every width, so its label has no reason to scale: "Shop
		   groceries" measures 128px at 16px, and with a 19px basket, a
		   15px arrow, two 7px gaps and 24px of padding the content comes
		   to 200px inside 250px — 50px of slack, so it can never wrap. */
		font-size: 1.28125rem !important;
		font-weight: 800 !important;
		letter-spacing: 0 !important;
		box-shadow: 0 4px 11px rgba(122, 84, 14, 0.22) !important;
		/* Deliberately NOT nowrap. The label is translated, so its width is
		   not something this stylesheet can know; if a longer string ever
		   exceeds the text column, wrapping onto a second line inside the
		   button is a far better failure than the button shooting past the
		   viewport and giving the whole page a horizontal scrollbar. The
		   186px column floor above keeps English (and the current Dari and
		   Pashto strings) on one line. */
		white-space: normal !important;
		min-width: 0 !important;
	}

	/* The shared button focus ring is ivory (#fffaf0), which is all but
	   invisible against this hero's cream — a keyboard user got no usable
	   indicator on the page's primary action. Navy, offset clear of the
	   gold fill, reads against both the button and the background. */
	body.home .hero .hero-cta--primary:focus-visible {
		outline: 3px solid #081b35 !important;
		outline-offset: 3px !important;
	}

	/* RTL icon order. A desktop rule (`.home .hero .hero-cta--primary`,
	   unscoped by any media query) pins this button to `direction: ltr`
	   so its own 3-column grid keeps the basket physically left. That was
	   invisible on mobile while the basket was hidden, but with the icon
	   restored it left the cart stranded on the LEFT in Dari/Pashto —
	   i.e. at the end of the line, not leading it. Restoring the page's
	   direction here reverses the flex order so the basket leads from the
	   right and the chevron trails on the left, where the existing
	   `scaleX(-1)` rule already points it the correct way. Scoped to the
	   mobile hero only; desktop keeps its own behaviour. */
	html[dir="rtl"] body.home .hero .hero-cta--primary,
	html[data-etebar-language^="fa"] body.home .hero .hero-cta--primary,
	html[data-etebar-language^="ps"] body.home .hero .hero-cta--primary {
		direction: rtl !important;
	}

	/* Press state — the emphasis is tactile rather than decorative. The
	   button settles 1px and its shadow contracts, which is what a
	   physical control does when pushed; nothing glows or brightens.
	   Costs no layout (transform only) and is suppressed for users who
	   have asked for reduced motion. */
	body.home .hero .hero-cta--primary:active {
		transform: translateY(1px) !important;
		box-shadow: 0 1px 4px rgba(122, 84, 14, 0.24) !important;
	}

	@media (prefers-reduced-motion: reduce) {
		body.home .hero .hero-cta--primary:active {
			transform: none !important;
		}
	}

	/* Leading cart icon. This SVG is already in the hero markup and is
	   the same basket the desktop hero CTA uses — mobile had simply been
	   hiding it — so showing it needs no markup change and matches
	   desktop exactly rather than introducing a second cart glyph. (The
	   header's cart is a trolley; this is the basket, and they are
	   different components, as on desktop.)

	   26px (was 22px), above the 21px label so the basket reads as a
	   proper commerce mark rather than a small glyph tucked in front of
	   the text. It clears desktop's 18.4px because the mobile button is
	   the page's single dominant action. It inherits `currentColor`, so
	   the white set on the button paints the basket white too — no
	   separate fill rule needed. `flex: 0 0 auto` stops it being squeezed
	   if the label ever wraps. */
	body.home .hero-cta__basket {
		display: block !important;
		width: 23px !important;
		height: 23px !important;
		flex: 0 0 auto !important;
	}

	/* The markup's trailing glyph is a chevron; the reference uses a full
	   arrow with a shaft on both buttons. The SVG is shared with desktop,
	   so rather than change the markup the chevron is hidden here and the
	   arrow is drawn as a pseudo-element, exactly as the secondary button
	   already does. */
	body.home .hero .hero-cta--primary .hero-cta__arrow {
		display: none !important;
	}

	body.home .hero .hero-cta--primary::after {
		content: "" !important;
		display: block !important;
		width: 18px !important;
		height: 18px !important;
		flex: 0 0 auto !important;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M3.4 10h13.2M12 5.4 16.6 10 12 14.6' stroke='%23ffffff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
	}

	html[dir="rtl"] body.home .hero .hero-cta--primary::after {
		transform: scaleX(-1) !important;
	}

	/* 19px (was 17px) — deliberately a step below the 26px leading
	   basket. The basket is the commerce mark and should carry the
	   weight; an equal-sized chevron would read as a second icon
	   competing with it rather than as the direction hint trailing the
	   label. Also inherits currentColor, so it turns white with the rest
	   of the content. */
	body.home .hero-cta__arrow {
		width: 19px !important;
		height: 19px !important;
		flex: 0 0 auto !important;
	}

	/* THE PRODUCT — out of flow, top-anchored, sitting beside the whole
	   text block. Out of flow is what guarantees it can never add a pixel
	   to the hero's height, stretch a row, or push the copy anywhere.

	   GEOMETRY, expressed against the layout box so it holds at any width:

	   - the inline-end edge is pulled out to the viewport edge, so the
	     product uses the safe margin as controlled negative space rather
	     than stopping short of it;
	   - 54.3% of the layout wide, which resolves to 175px at 360, 190px at
	     390 and 201px at 412 — the 190px target — leaving an 8px channel
	     between it and the text column at every width;
	   - top-anchored at the layout's padding edge, so it starts level with
	     the hero's top and runs down beside the headline and the copy,
	     finishing 15-24px ABOVE the CTA group. That clearance is what lets
	     the button row overhang its column without ever meeting the
	     artwork.

	   NOTHING IS CROPPED. The box ratio is 0.92, within half a percent of
	   the subject's own 0.9217, so `cover` fills the box while the bag
	   still lands 5% narrower than it — the whole arrangement is inside the
	   frame with a thin even margin on both sides, and the full height of
	   the source is shown. This is the correction to the previous build,
	   which used 0.85 and 0.76 ratios and deliberately cut the outer packs
	   off the frame. */
	body.home .hero__visual {
		display: block !important;
		position: absolute !important;
		/* Below the text, above the background. The disc reaches under the
		   text column's outer edge by design, and a positioned element
		   paints above in-flow inline content — at `z-index: auto` the
		   decoration would have been laid ON TOP of the words. */
		z-index: 1 !important;
		inset: auto !important;
		/* 6px, not 0: at 0 the box's top sat exactly on the section's
		   upper edge and the rice sack's tip came within a few pixels of
		   the header boundary. This costs 6px of the tote-to-CTA
		   clearance, which still leaves 8.8px at 412 — the tightest
		   width — and buys the composition a visible top margin. */
		top: 56px !important;
		/* THE HEIGHT IS DRIVEN BY THE INSETS, and the width follows from
		   the aspect ratio — not the other way round. That inversion is
		   the fix for a real collision: sized from a percentage width, the
		   product kept growing with the viewport while the text stack
		   shrank (the headline caps at 37.6px, and the copy drops to two
		   lines), so from ~430px up its base reached into the button
		   group. Measured overlap was 0.8px of clearance at 430 and a
		   28.7px collision at 480.

		   144px is not a magic number: it is exactly the stack below the
		   product — 12px of section padding, the 52px secondary, the 10px
		   button gap, the 54px primary and the 16px the button row is
		   pushed down by. Anchoring to it means the tote's base always
		   lands on the button group's top margin, so the clearance is a
		   structural 16px at EVERY width instead of something that happens
		   to work at three of them. */
		bottom: 146px !important;
		inset-inline-end: calc(-1 * clamp(24.5px, 6.8vw, 28px)) !important;
		width: auto !important;
		aspect-ratio: 87.6 / 100 !important;
		height: auto !important;
		min-height: 0 !important;
		/* Only guard left: at viewports under ~330px the height the insets
		   give would want a box wider than the channel beside the text
		   column. 55% of the layout is that channel, so this binds there
		   and nowhere else — it is slack at 360 and above. */
		max-width: 54% !important;
		/* Ceiling for the upper half of this block's range — these mobile
		   rules run to 820px, not just to phones — so the product cannot
		   balloon on tablets or outgrow the section it sits in. Neither
		   binds anywhere in the phone range. */
		margin: 0 !important;
		overflow: visible !important;
	}

	/* Decorative backdrop for the product. The existing
	   .hero__visual::before hook carries the warm disc beneath the tote;
	   the former botanical hook is explicitly disabled below. The image is
	   z-index 1 inside .hero-editorial, so the product stays the focus and
	   the backdrop cannot catch a tap (pointer-events: none).

	   SIZE. 108% of the product box, which is now itself much larger — so
	   the disc lands at ~72% of the viewport across, against the
	   reference's ~75%, and reads as a warm ground the goods are set into
	   rather than a patch hidden behind them. It is centred on the
	   product's upper half (-34% of its own height) so the bag's base
	   breaks out of the bottom of it, exactly as in the reference; the
	   outer edge runs off the screen and is absorbed by the hero's
	   `overflow: hidden`.

	   TONE, and this is the correction that matters. Sampled off the
	   reference, its disc sits only about (0, -7, -20) RGB below the page
	   cream — a warm tint you notice without ever reading it as a shape
	   with an edge. The previous version here peaked at 34% opacity, which
	   measures (-16, -33, -72): roughly three times the reference's
	   strength, competing with the packaging instead of supporting it. At
	   11% the same gold lands within a point or two of the reference. */
	body.home .hero__visual::before {
		content: "" !important;
		display: block !important;
		position: absolute !important;
		z-index: 0 !important;
		/* `inset: auto` first: the desktop rule for this same pseudo sets
		   `inset: 0`, and leaving right/bottom at 0 while setting top/left
		   over-constrains the box — it stretched into a rectangle pinned
		   to the bottom-right instead of being a circle. */
		inset: auto !important;
		top: 50% !important;
		left: 50% !important;
		width: 152% !important;
		aspect-ratio: 1 !important;
		height: auto !important;
		transform: translate(-50%, -52%) !important;
		border-radius: 50% !important;
		background: radial-gradient(
			circle,
			rgba(210, 164, 61, 0.18) 0%,
			rgba(207, 157, 45, 0.14) 52%,
			rgba(203, 148, 28, 0.08) 77%,
			rgba(199, 137, 8, 0.025) 92%,
			rgba(199, 137, 8, 0) 100%
		) !important;
		pointer-events: none !important;
	}

	/* The former botanical data-URI is intentionally removed. The warm disc
	   and contact shadow are sufficient depth; the tote remains the sole
	   illustrative focus. */
	body.home .hero-editorial::after {
		content: none !important;
		display: none !important;
		background: none !important;
		pointer-events: none !important;
	}

	/* Filled to the visual's box rather than sized by its own content, so
	   the decorative pseudo-elements hung off it resolve their percentage
	   offsets against the product's real dimensions. */
	body.home .hero-editorial {
		position: absolute !important;
		inset: 0 !important;
		width: auto !important;
		aspect-ratio: auto !important;
		margin: 0 !important;
		border: 0 !important;
		background: none !important;
		box-shadow: none !important;
		overflow: visible !important;
	}

	/* Contact shadow. The tote is a cut-out on a transparent background,
	   so with nothing beneath it the bag and its groceries hovered over
	   the cream with no indication of a surface — the "floating sticker"
	   effect. This soft ellipse sits just under the products' base line
	   (their lowest edge is at ~96% of the frame) and gives the group
	   something to stand on. It is drawn on ::before and the image is
	   lifted to z-index 1 above it, so the shadow reads as ground rather
	   than as a wash tinting the bottom of the bag. */
	body.home .hero-editorial::before {
		content: "" !important;
		display: block !important;
		position: absolute !important;
		z-index: 0 !important;
		/* Pulled below the box's own bottom edge: the products' base line
		   sits at ~97% of the frame, so an ellipse centred inside the box
		   would be almost entirely hidden behind the artwork. */
		/* `top: auto` is the whole fix for the dark haze that was sitting
		   ABOVE the tote. This pseudo-element is reused from the desktop
		   hero, where `.hero-editorial::before` is a gold accent bar ruled
		   across the TOP of the editorial frame and carries `top: -1px`.
		   The mobile rule repurposed it as a contact shadow and set
		   `bottom`, `height` and a radial gradient — but never reset
		   `top`, so the element had top, height AND bottom all specified.
		   That is over-constrained, so the browser ignored `bottom` and
		   pinned the ellipse 1px above the image instead of below it: a
		   brown radial smudge across the top of the bag. Releasing `top`
		   lets `bottom` govern again and puts the shadow back under the
		   product where it belongs. */
		top: auto !important;
		inset-block-end: -5px !important;
		/* Centred with plain physical insets and no transform. Two traps
		   were hit here, both only visible in RTL: `inset-inline-start:
		   50%` flips to `right` while a translateX(-50%) beside it does
		   not, which threw the ellipse ~49px past the hero's inline-end
		   edge; and even once that was corrected, the translated box still
		   contributed its pre-transform position to the scrollable
		   overflow area, leaving the RTL page a few pixels wide. Equal
		   left/right insets centre it in both directions with nothing left
		   to go wrong. They tighten 19% -> 13% because the subject now
		   fills ~98% of the box rather than 94%, so the ellipse has to
		   widen with it to stay under the bag's full footprint. */
		/* Biased to the reading side: the artwork is now anchored to the
		   box's inline-start edge and its outer end runs off the screen,
		   so the visible footprint sits in the box's first two-thirds. */
		left: 9% !important;
		right: 9% !important;
		width: auto !important;
		height: 20px !important;
		transform: none !important;
		background: radial-gradient(
			50% 50% at 50% 50%,
			rgba(84, 58, 20, 0.22) 0%,
			rgba(84, 58, 20, 0.11) 46%,
			rgba(84, 58, 20, 0) 78%
		) !important;
		pointer-events: none !important;
	}

	body.home .hero-editorial img {
		display: block !important;
		position: absolute !important;
		z-index: 1 !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		max-width: none !important;
		max-height: none !important;
		/* The served asset is 1413x972. An alpha scan puts the actual bag
		   and groceries at x 284..1131, y 33..952 — 848x920, so ~40% of
		   the file's width is transparent margin down the two sides and
		   the subject's own aspect is 0.922. Shown with `contain` that
		   padding was paid for in layout width and the product rendered
		   at barely half its column, which is what made it read as a
		   sticker. `cover` crops the empty sides away instead.

		   The image now fills its parent box, which the visual sets to
		   0.76 — taller than the subject's own 0.922. Because `cover`
		   scales by height here, that renders the subject LARGER and shows
		   a narrower slice of it: at 390 the bag draws 256px wide and
		   289px tall inside a 223px-wide box, so the outer ~13% of it
		   passes beyond the box edge. Combined with the box itself running
		   off the screen, about two thirds of the subject is on-screen —
		   which is the reference's own treatment, where the product is cut
		   by the frame's edge and the outermost pack is only half visible.

		   Nothing is stretched or elongated: `cover` preserves the source's
		   1.4537 aspect throughout and the bag keeps its native 0.922
		   proportions at every size. The box ratio only decides how much
		   is cropped, never the shape of what is inside it. Vertically
		   nothing is cropped at all — at ratios below the source's the
		   scaling is height-driven, so the full 972px of source height is
		   always shown.

		   `object-position: 40%` is what decides WHICH side is cropped,
		   and it is not a guess. The subject occupies source x 284..1131 of
		   1413; aligning its left edge with the box's left edge needs the
		   window to start at 284/(1413 - boxW/scale) of the overflow, which
		   works out to 39.8% at 360, 390 and 412 alike — the ratio is
		   scale-invariant because every term scales together. So the wheat
		   sack sits flush against the copy and the crop is taken entirely
		   off the outer end, past the pasta. */
		aspect-ratio: auto !important;
		object-fit: cover !important;
		object-position: center !important;
		margin: 0 !important;
		filter: none !important;
		transform: none !important;
		-webkit-mask-image: none !important;
		mask-image: none !important;
	}

	/* Search field directly after the hero. */
	body.home .mobile-home-search {
		padding: 0 0 clamp(1.75rem, 6vw, 2.35rem);
	}

	body.home .mobile-home-search .container {
		width: min(100% - 32px, 720px);
	}

	body.home .mobile-home-search .etebar-product-search__controls {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 58px;
		min-height: 62px;
		border: 1px solid rgb(8 27 53 / 8%);
		border-radius: 19px;
		background: #fff;
		box-shadow: 0 12px 28px rgb(8 27 53 / 8%);
		overflow: hidden;
	}

	body.home .mobile-home-search input[type="search"] {
		min-height: 60px;
		padding-inline: 1.2rem 0.5rem;
		border: 0;
		background: transparent;
		color: var(--mobile-home-navy);
		font-size: 1.08rem;
	}

	body.home .mobile-home-search input[type="search"]::placeholder {
		color: #7b8494;
		opacity: 1;
	}

	body.home .mobile-home-search button,
	body.home .mobile-home-search button[type="submit"] {
		width: 58px;
		min-width: 58px;
		min-height: 60px;
		border: 0;
		background: transparent;
		color: var(--mobile-home-navy);
	}

	body.home .mobile-home-search button span {
		display: none;
	}

	/* Shared section rhythm. */
	body.home .mobile-home-section {
		padding-block: clamp(1.35rem, 5vw, 2rem);
		background: var(--mobile-home-bg);
	}

	body.home .mobile-home-section__heading-row {
		display: flex;
		align-items: end;
		justify-content: space-between;
		gap: 1rem;
		margin-bottom: 1rem;
	}

	body.home .mobile-home-section__heading-row h2 {
		margin: 0;
		color: var(--mobile-home-navy);
		font-family: var(--etebar-sans);
		font-size: clamp(1.45rem, 6vw, 1.75rem);
		font-weight: 780;
		line-height: 1.15;
		letter-spacing: -0.025em;
	}

	body.home .mobile-home-section__heading-row > a {
		flex: 0 0 auto;
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		color: var(--mobile-home-gold);
		font-size: 0.94rem;
		font-weight: 700;
		text-decoration: none;
	}

	/* Category cards: deliberately larger than the first wireframe. */
	body.home .mobile-home-categories {
		padding-top: 0.35rem;
	}

	body.home .mobile-category-rail {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: minmax(142px, 42vw);
		gap: 0.8rem;
		margin-inline: -18px;
		padding-inline: 18px;
		padding-bottom: 0.35rem;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: inline proximity;
		scrollbar-width: none;
	}

	body.home .mobile-category-rail::-webkit-scrollbar {
		display: none;
	}

	body.home .mobile-category-card {
		min-height: 142px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0.75rem;
		padding: 1rem 0.8rem;
		border: 1px solid var(--mobile-home-border);
		border-radius: 17px;
		background: #fff;
		color: var(--mobile-home-navy);
		text-align: center;
		text-decoration: none;
		scroll-snap-align: start;
	}

	body.home .mobile-category-card__icon {
		width: 52px;
		height: 52px;
		display: grid;
		place-items: center;
		color: var(--mobile-home-navy);
	}

	body.home .mobile-category-card__icon svg {
		width: 48px;
		height: 48px;
	}

	body.home .mobile-category-card strong {
		font-size: 1rem;
		line-height: 1.25;
		text-wrap: balance;
	}

	/* Featured bundle. */
	body.home .mobile-featured-bundle {
		padding-top: 1.55rem;
	}

	body.home .mobile-featured-bundle__card {
		position: relative;
		display: grid;
		grid-template-columns: minmax(120px, 39%) minmax(0, 1fr) 42px;
		align-items: center;
		min-height: 194px;
		border: 1px solid var(--mobile-home-border);
		border-radius: 19px;
		background: linear-gradient(135deg, #fff 0%, #fbf5e9 100%);
		color: var(--mobile-home-navy);
		text-decoration: none;
		overflow: hidden;
	}

	body.home .mobile-featured-bundle__badge {
		position: absolute;
		inset-block-start: 0;
		inset-inline-start: 0;
		z-index: 2;
		padding: 0.52rem 0.8rem;
		border-radius: 18px 0 13px 0;
		background: var(--mobile-home-gold);
		color: #fff;
		font-size: 0.78rem;
		font-weight: 800;
	}

	html[dir="rtl"] body.home .mobile-featured-bundle__badge {
		border-radius: 0 18px 0 13px;
	}

	body.home .mobile-featured-bundle__image {
		align-self: stretch;
		display: grid;
		place-items: end center;
		padding: 2.5rem 0.35rem 0.65rem 0.75rem;
		background: rgb(201 138 0 / 5%);
		overflow: hidden;
	}

	body.home .mobile-featured-bundle__image img {
		width: 100%;
		height: 142px;
		object-fit: contain;
		object-position: center bottom;
	}

	body.home .mobile-featured-bundle__image--placeholder {
		color: var(--mobile-home-gold);
	}

	body.home .mobile-featured-bundle__image--placeholder svg {
		width: 86px;
		height: 68px;
	}

	body.home .mobile-featured-bundle__content {
		min-width: 0;
		display: flex;
		flex-direction: column;
		gap: 0.45rem;
		padding: 1.25rem 0.65rem 1.05rem 1rem;
	}

	html[dir="rtl"] body.home .mobile-featured-bundle__content {
		padding-inline: 0.65rem 1rem;
	}

	body.home .mobile-featured-bundle__content > strong {
		font-family: var(--etebar-serif);
		font-size: clamp(1.3rem, 5.7vw, 1.62rem);
		line-height: 1.12;
		text-wrap: balance;
	}

	body.home .mobile-featured-bundle__content small {
		display: -webkit-box;
		color: #566071;
		font-size: 0.91rem;
		line-height: 1.4;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
	}

	body.home .mobile-featured-bundle__price {
		margin-top: 0.25rem;
		font-size: clamp(1.75rem, 7vw, 2.1rem);
		font-weight: 800;
		line-height: 1;
		white-space: nowrap;
		unicode-bidi: isolate;
	}

	body.home .mobile-featured-bundle__arrow {
		width: 40px;
		height: 40px;
		display: grid;
		place-items: center;
		margin-inline-end: 0.7rem;
		border: 1px solid rgb(8 27 53 / 10%);
		border-radius: 50%;
		background: #fff;
		color: var(--mobile-home-gold);
		font-size: 2rem;
		line-height: 1;
	}

	html[dir="rtl"] body.home .mobile-featured-bundle__arrow {
		transform: scaleX(-1);
	}

	/* Compact product rows. */
	body.home .mobile-home-essentials {
		padding-top: 1.55rem;
	}

	body.home .mobile-essential-list {
		margin: 0;
		padding: 0;
		border: 1px solid var(--mobile-home-border);
		border-radius: 18px;
		background: #fff;
		list-style: none;
		overflow: hidden;
	}

	body.home .mobile-essential-item {
		display: grid;
		grid-template-columns: 72px minmax(0, 1fr) auto 48px;
		align-items: center;
		min-height: 92px;
		gap: 0.75rem;
		padding: 0.62rem 0.75rem;
		border-bottom: 1px solid rgb(231 222 209 / 72%);
	}

	body.home .mobile-essential-item:last-child {
		border-bottom: 0;
	}

	body.home .mobile-essential-item__image {
		width: 72px;
		height: 72px;
		display: grid;
		place-items: center;
		border-radius: 12px;
		background: var(--mobile-home-cream);
		overflow: hidden;
	}

	body.home .mobile-essential-item__image img {
		width: 100%;
		height: 100%;
		object-fit: contain;
	}

	body.home .mobile-essential-item__copy {
		min-width: 0;
		display: flex;
		flex-direction: column;
		gap: 0.18rem;
		color: var(--mobile-home-navy);
		text-decoration: none;
	}

	body.home .mobile-essential-item__copy strong {
		font-size: 1.04rem;
		line-height: 1.22;
	}

	body.home .mobile-essential-item__copy small {
		color: var(--mobile-home-muted);
		font-size: 0.92rem;
		line-height: 1.25;
	}

	body.home .mobile-essential-item__price {
		font-size: clamp(1.25rem, 5.3vw, 1.55rem);
		font-weight: 800;
		white-space: nowrap;
		unicode-bidi: isolate;
	}

	body.home .mobile-essential-item__add {
		width: 48px;
		height: 48px;
		min-width: 48px;
		display: grid;
		place-items: center;
		border: 0;
		border-radius: 13px;
		background: var(--mobile-home-navy);
		color: #fff;
		font-size: 1.8rem;
		font-weight: 400;
		line-height: 1;
		text-decoration: none;
	}

	body.home .mobile-essential-item__add--details {
		background: var(--mobile-home-cream);
		color: var(--mobile-home-navy);
	}

	/* Trust strip. */
	body.home .mobile-home-trust {
		padding-top: 1.3rem;
		padding-bottom: 2.2rem;
	}

	body.home .mobile-trust-strip {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		margin: 0;
		padding: 1rem 0.65rem;
		border: 1px solid var(--mobile-home-border);
		border-radius: 18px;
		background: var(--mobile-home-cream);
		list-style: none;
	}

	body.home .mobile-trust-strip li {
		min-width: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0.5rem;
		padding-inline: 0.6rem;
		border-inline-end: 1px solid var(--mobile-home-border);
		color: var(--mobile-home-navy);
	}

	body.home .mobile-trust-strip li:last-child {
		border-inline-end: 0;
	}

	body.home .mobile-trust-strip svg {
		width: 29px;
		height: 29px;
		flex: 0 0 29px;
		color: var(--mobile-home-gold);
	}

	body.home .mobile-trust-strip span {
		font-size: clamp(0.77rem, 3vw, 0.9rem);
		font-weight: 650;
		line-height: 1.3;
		text-wrap: balance;
	}
}

/* Once the mobile hero has enough inline room for the CTA group and the
   product to occupy separate lanes, let the tote continue lower beside the
   buttons. Without this guard the text collapsing to two lines shortens the
   text-driven hero and the inset-sized product falls back to a thumbnail at
   roughly 600–820px. Phone geometry stays untouched below this threshold. */
@media (min-width: 561px) and (max-width: 820px) {
	body.home .hero__visual {
		bottom: 88px !important;
	}
}

/* At this width both text blocks settle to two lines, reducing their normal-
   flow height by about 40px. Balanced section padding replaces that lost
   rhythm directly—without grid tracks or distributed empty rows—and keeps
   the mobile/tablet Hero near the same compact 370px target. */
@media (min-width: 592px) and (max-width: 820px) {
	body.home .hero__layout,
	html[dir="rtl"] body.home .hero__layout,
	html[data-etebar-language^="fa"] body.home .hero__layout,
	html[data-etebar-language^="ps"] body.home .hero__layout {
		padding-block: 35px !important;
	}
}

/* Arabic-script headings reach the same two-line state earlier. Apply the
   same balanced rhythm as soon as their product and CTA lanes separate. */
@media (min-width: 561px) and (max-width: 591px) {
	html[dir="rtl"] body.home .hero__layout,
	html[data-etebar-language^="fa"] body.home .hero__layout,
	html[data-etebar-language^="ps"] body.home .hero__layout {
		padding-block: 35px !important;
	}
}

/* At phone widths, preserve the tote's intended frame ratio explicitly and
   move the whole asset down by its top anchor. Wider mobile layouts retain
   the established bottom clearance above the CTA group. */
@media (max-width: 430px) {
	body.home .hero__visual {
		top: 74px !important;
		bottom: auto !important;
		width: 65% !important;
		max-width: 65% !important;
	}

	body.home .hero__content {
		transform: translateX(15px) !important;
	}

	html[dir="rtl"] body.home .hero__content {
		transform: translateX(-15px) !important;
	}

}

@media (max-width: 430px) {
	body.home .hero__layout,
	html[dir="rtl"] body.home .hero__layout,
	html[data-etebar-language^="fa"] body.home .hero__layout,
	html[data-etebar-language^="ps"] body.home .hero__layout {
		padding-top: 1.8rem;
	}

	body.home .hero h1,
	html[dir="rtl"] body.home .hero h1 {
		font-size: clamp(2.35rem, 10.2vw, 2.75rem);
	}

	body.home .mobile-featured-bundle__card {
		grid-template-columns: minmax(112px, 37%) minmax(0, 1fr) 38px;
		min-height: 184px;
	}

	body.home .mobile-featured-bundle__content {
		padding-inline-start: 0.8rem;
	}

	body.home .mobile-featured-bundle__arrow {
		width: 36px;
		height: 36px;
		margin-inline-end: 0.45rem;
	}

	body.home .mobile-essential-item {
		grid-template-columns: 66px minmax(0, 1fr) auto 46px;
		gap: 0.58rem;
		padding-inline: 0.6rem;
	}

	body.home .mobile-essential-item__image {
		width: 66px;
		height: 66px;
	}

	body.home .mobile-essential-item__add {
		width: 46px;
		height: 46px;
		min-width: 46px;
	}
}

@media (max-width: 374px) {
	body.home .mobile-featured-bundle__card {
		grid-template-columns: 104px minmax(0, 1fr) 34px;
	}

	body.home .mobile-featured-bundle__content small {
		display: none;
	}

	body.home .mobile-essential-item {
		grid-template-columns: 60px minmax(0, 1fr) 44px;
	}

	body.home .mobile-essential-item__image {
		width: 60px;
		height: 60px;
	}

	body.home .mobile-essential-item__price {
		grid-column: 2;
		font-size: 1.2rem;
	}

	body.home .mobile-essential-item__add {
		grid-column: 3;
		grid-row: 1 / span 2;
	}

	body.home .mobile-trust-strip {
		grid-template-columns: 1fr;
		gap: 0;
		padding-block: 0.45rem;
	}

	body.home .mobile-trust-strip li {
		justify-content: flex-start;
		min-height: 50px;
		border-inline-end: 0;
		border-bottom: 1px solid var(--mobile-home-border);
	}

	body.home .mobile-trust-strip li:last-child {
		border-bottom: 0;
	}
}



/* ---------- Mobile primary-purchase CTA colour ---------- */

/* One source for every mobile "buy" button. The values are not invented: they
   are the approved desktop primary purchase CTA, read off the rendered page.
   The desktop catalog/homepage add-to-cart resolves to #d2ae5d with #fff text
   and hovers to #c29a48 (declared on
   `.etebar-shop-card__footer a.button.add_to_cart_button:not(.added)`), and the
   desktop product-page button in `.etebar-product__purchase` uses the same pair.

   These custom properties are declared only inside this mobile query and are
   referenced only by rules that are themselves inside mobile queries, so above
   820px nothing resolves them and desktop is untouched. */
@media (max-width: 820px) {
	:root {
		--etebar-mobile-cta: #d2ae5d;
		--etebar-mobile-cta-hover: #c29a48;
		--etebar-mobile-cta-ink: #fff;

		/* The site's own cart glyph. The path data is exactly the SVG the
		   homepage Everyday Essentials button carries
		   (`.mobile-essential-item__add-icon` in front-page.php), so both
		   places draw the same icon — no second icon set is introduced.
		   Delivered as a mask rather than as markup because the product-page
		   button is rendered by WooCommerce's own template, which escapes its
		   label and gives no seam to inject an element into. Masking also
		   leaves the button's ::after untouched, and that pseudo-element is
		   what the WooCommerce loading-spinner suppression relies on. */
		--etebar-cart-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 5h2l1.7 9.1a2 2 0 0 0 2 1.6h7.7a2 2 0 0 0 1.9-1.4L20.5 8H7'/%3E%3Cpath d='M9.5 19.2h.01M17 19.2h.01' stroke-width='2.5'/%3E%3C/svg%3E");
	}
}

@media (max-width: 820px) {

	/* Alte separate Suche und Kategorien bleiben entfernt. */
	body.home .mobile-home-search,
	body.home .mobile-home-categories,
	body.home .mobile-home-trust {
		display: none !important;
	}

	/* Hero styling for this breakpoint lives in the earlier
	   `@media (max-width: 820px)` block above (search "Concept-3
	   layout") — this second block used to carry its own conflicting
	   copy of the same rules, which silently won the cascade by source
	   order and made every edit to the block above a no-op. Removed
	   rather than kept in sync by hand. */

	/* ========================================================
	   HOW ORDERING WORKS
	   ======================================================== */

	/* Concept-3-style panel: a warm cream card (not the earlier navy
	   block, and not the plain white list-card that followed it) holding
	   a compact title and a horizontal row of icon steps connected by
	   gold arrows, each with a small navy number badge overlapping its
	   icon circle — matching the reference's "How it works" treatment
	   while keeping our own 3-step copy and meaning unchanged. Icons and
	   arrows are painted via background-image data URIs on pseudo-
	   elements so no new markup or icon assets are needed. */
	/* margin-top was 8px, which put this section's cream card almost
	   directly under the hero's old hairline divider. The hero now ends
	   in a longer bottom padding and fades out into the page colour, so
	   this only has to keep the card clear of that fade — the visible
	   break between the two sections is the quiet space itself. */
	/* The section itself owns the cream, edge to edge. It used to be a
	   white section containing a bordered, 26px-rounded cream card, which
	   read as a panel floating on the page rather than as a band of the
	   page — the desktop site gives each major section its own background
	   instead, and this now matches that. The card's border, radius and
	   background are gone; its padding becomes the section's own vertical
	   rhythm, and the inner .container reverts to the plain measure
	   wrapper it is everywhere else on the page.

	   This also carries the hero transition: with no line and no card
	   edge, the change from the hero's near-white to this cream is what
	   separates the two, so the hero's closing space and this section's
	   opening padding are the whole effect. */
	body.home .mobile-how-it-works {
		margin-top: 0 !important;
		padding: 30px 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: var(--mobile-home-cream) !important;
		color: var(--mobile-home-navy) !important;
	}

	body.home .mobile-how-it-works .container {
		/* 20px inset rather than 24, and the column gap below drops 8 -> 6:
		   between them the three step columns each gain ~4px, which is
		   what pays for the larger step type without the descriptions
		   picking up an extra line. */
		width: min(100% - 20px, 720px) !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: none !important;
		padding: 0 !important;
	}

	body.home .mobile-how-it-works__intro {
		max-width: 30rem !important;
		margin: 0 auto 30px !important;
		text-align: center !important;
	}

	body.home .mobile-how-it-works__intro h2 {
		margin: 0 !important;
		color: var(--mobile-home-navy) !important;
		font-family: var(--etebar-sans) !important;
		font-size: 28px !important;
		font-weight: 800 !important;
		line-height: 1.22 !important;
		letter-spacing: -0.015em !important;
	}

	/* The decorative gold dot that preceded the heading is removed
	   outright, not swapped for another marker. */
	body.home .mobile-how-it-works__intro h2::before {
		content: none !important;
		display: none !important;
	}

	body.home .mobile-how-it-works__intro p {
		max-width: 372px !important;
		margin: 10px auto 0 !important;
		color: var(--mobile-home-muted) !important;
		font-size: 18px !important;
		line-height: 1.5 !important;
	}

	body.home .mobile-how-it-works__steps {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		column-gap: 6px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: none !important;
		list-style: none !important;
		overflow: visible !important;
	}

	body.home .mobile-how-it-works__steps li {
		position: relative !important;
		z-index: 1 !important;
		display: grid !important;
		grid-template-columns: none !important;
		grid-template-rows: auto auto !important;
		justify-items: center !important;
		align-items: start !important;
		/* `start`, not the default `normal`. All three steps are grid items
		   of one row so they stretch to a common height, and with
		   align-content resolving to stretch each li handed its spare
		   height to its own two auto rows — the shortest step got the most,
		   so the icon row measured 101.9px instead of 70px and the three
		   captions began at 116.9 / 85 / 95.5px instead of on one line.
		   Packing the rows to the top puts every caption at the same
		   offset under its circle. */
		align-content: start !important;
		row-gap: 21px !important;
		min-height: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: none !important;
	}

	body.home .mobile-how-it-works__steps li::before {
		content: "" !important;
		display: block !important;
		width: 86px !important;
		height: 86px !important;
		border: 1px solid var(--mobile-home-border) !important;
		border-radius: 50% !important;
		background-color: #ffffff !important;
		background-repeat: no-repeat !important;
		background-position: center !important;
		background-size: 43px 43px !important;
		box-shadow: 0 4px 10px rgba(8, 27, 53, 0.07) !important;
	}

	body.home .mobile-how-it-works__steps li:nth-child(1)::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' stroke='%23081b35' stroke-width='1.8'/%3E%3Cpath d='m15.5 15.5 4 4' stroke='%23081b35' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") !important;
	}

	body.home .mobile-how-it-works__steps li:nth-child(2)::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Crect x='5' y='3.5' width='14' height='17' rx='2' stroke='%23081b35' stroke-width='1.6'/%3E%3Cpath d='M8 9h8M8 13h8M8 17h4' stroke='%23081b35' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") !important;
	}

	body.home .mobile-how-it-works__steps li:nth-child(3)::before {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='8.5' stroke='%23081b35' stroke-width='1.6'/%3E%3Cpath d='m7.8 12.3 3 3 5.6-6.2' stroke='%23081b35' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	}

	body.home .mobile-how-it-works__steps li:not(:last-child)::after {
		content: "" !important;
		position: absolute !important;
		z-index: 2 !important;
		top: 34px !important;
		inset-inline-end: -15px !important;
		width: 27px !important;
		height: 17px !important;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 10' fill='none'%3E%3Cpath d='M1 5h12M9 1l4 4-4 4' stroke='%23c98a00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat !important;
	}

	html[dir="rtl"] body.home .mobile-how-it-works__steps li:not(:last-child)::after {
		transform: scaleX(-1) !important;
	}

	body.home .mobile-how-it-works__number {
		display: grid !important;
		place-items: center !important;
		position: absolute !important;
		z-index: 3 !important;
		top: -6px !important;
		inset-inline-start: calc(50% - 47px) !important;
		width: 34px !important;
		height: 34px !important;
		margin-top: 0 !important;
		border-radius: 50% !important;
		box-shadow: 0 0 0 3px var(--mobile-home-cream) !important;
		background: var(--mobile-home-navy) !important;
		color: #ffffff !important;
		font-family: var(--etebar-sans) !important;
		font-size: 18px !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		text-align: center !important;
	}

	body.home .mobile-how-it-works__steps strong {
		display: block !important;
		color: var(--mobile-home-navy) !important;
		font-size: 20px !important;
		font-weight: 750 !important;
		line-height: 1.28 !important;
		text-align: center !important;
	}

	body.home .mobile-how-it-works__steps small {
		display: block !important;
		margin-top: 8px !important;
		color: var(--mobile-home-muted) !important;
		font-size: 16.8px !important;
		line-height: 1.45 !important;
		text-align: center !important;
	}

	/* ========================================================
	   SECTION TITLES
	   ======================================================== */

	body.home .mobile-featured-bundle,
	body.home .mobile-home-essentials {
		padding-top: 34px !important;
	}

	/* Tighten only the handover between the bundle carousel and the
	   essentials grid. The 44px pagination row already carries a lot of
	   optical air below the dots, so the section padding either side of it
	   can be trimmed without the transition reading as cramped. */
	body.home .mobile-featured-bundle {
		padding-bottom: 10px !important;
	}

	body.home .mobile-home-essentials {
		padding-top: 26px !important;
	}

	body.home .mobile-featured-bundle .mobile-home-section__heading-row,
	body.home .mobile-home-essentials .mobile-home-section__heading-row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		gap: 6px !important;
		margin-bottom: 19px !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
	}

	body.home .mobile-featured-bundle .mobile-home-section__heading-row h2,
	body.home .mobile-home-essentials .mobile-home-section__heading-row h2 {
		margin: 0 !important;
		color: #081b35 !important;
		font-family: Georgia, "Times New Roman", serif !important;
		font-size: clamp(30px, 8.2vw, 34px) !important;
		line-height: 1.02 !important;
		letter-spacing: -0.025em !important;
	}

	body.home .mobile-featured-bundle .mobile-home-section__heading-row a,
	body.home .mobile-home-essentials .mobile-home-section__heading-row a {
		display: inline-flex !important;
		min-height: 44px !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 5px !important;
		padding: 0 !important;
		color: #b87d00 !important;
		font-size: clamp(15.5px, 4vw, 16.5px) !important;
		font-weight: 750 !important;
		line-height: 1.15 !important;
		text-align: end !important;
		text-decoration: none !important;
		white-space: nowrap !important;
	}

	html[dir="rtl"] body.home .mobile-home-section__view-all > span:last-child {
		transform: scaleX(-1) !important;
	}

	body.home .mobile-home-essentials .mobile-home-section__heading-row {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	/* ========================================================
	   FEATURED BUNDLE
	   ======================================================== */

	body.home .mobile-bundle-carousel {
		width: calc(100% + 16px) !important;
		min-width: 0 !important;
		margin-inline: -8px !important;
	}

	body.home .mobile-bundle-carousel__track {
		display: flex !important;
		width: 100% !important;
		align-items: stretch !important;
		gap: 12px !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		overscroll-behavior-inline: contain !important;
		scroll-behavior: smooth !important;
		scroll-snap-type: inline mandatory !important;
		scrollbar-width: none !important;
		-webkit-overflow-scrolling: touch;
	}

	body.home .mobile-bundle-carousel__track::-webkit-scrollbar {
		display: none !important;
	}

	body.home .mobile-bundle-carousel__slide {
		display: flex !important;
		min-width: 0 !important;
		flex: 0 0 100% !important;
		margin: 0 !important;
		scroll-snap-align: start !important;
		scroll-snap-stop: always !important;
	}

	body.home .mobile-featured-bundle__card {
		--mobile-bundle-surface: #f4e7cc;
		display: grid !important;
		width: 100% !important;
		grid-template-columns: minmax(163px, 48%) minmax(0, 1fr) !important;
		align-items: stretch !important;
		min-height: 430px !important;
		border: 1px solid #e3cfb6 !important;
		border-radius: 18px !important;
		background: var(--mobile-bundle-surface) !important;
		box-shadow: none !important;
		overflow: hidden !important;
	}

	body.home .mobile-featured-bundle__badge {
		position: static !important;
		display: inline-flex !important;
		width: max-content !important;
		max-width: 100% !important;
		align-items: center !important;
		align-self: flex-start !important;
		padding: 7px 11px !important;
		border-radius: 999px !important;
		background: rgba(201, 138, 0, 0.12) !important;
		color: #986900 !important;
		font-size: 15.5px !important;
		font-weight: 800 !important;
		line-height: 1.1 !important;
	}

	body.home .mobile-featured-bundle__image {
		display: grid !important;
		place-items: center !important;
		padding: 18px 0 !important;
		background: transparent !important;
		overflow: visible !important;
	}

	body.home .mobile-featured-bundle__image img {
		width: 100% !important;
		height: auto !important;
		max-width: 100% !important;
		max-height: 390px !important;
		object-fit: contain !important;
		object-position: center center !important;
		mix-blend-mode: normal !important;
	}

	body.home .mobile-featured-bundle__content {
		display: flex !important;
		min-width: 0 !important;
		align-content: normal !important;
		justify-content: center !important;
		gap: 11px !important;
		padding: 22px 10px !important;
	}

	body.home .mobile-featured-bundle__content > strong {
		display: -webkit-box !important;
		overflow: hidden !important;
		font-size: clamp(31px, 8.7vw, 36px) !important;
		line-height: 1.02 !important;
		letter-spacing: -0.025em !important;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 4 !important;
	}

	body.home .mobile-featured-bundle__content small {
		display: -webkit-box !important;
		overflow: hidden !important;
		color: #596273 !important;
		font-size: 16.5px !important;
		line-height: 1.4 !important;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3 !important;
	}

	body.home .mobile-featured-bundle__price {
		align-self: flex-start !important;
		margin-top: 1px !important;
		font-size: clamp(38.5px, 10.2vw, 42.5px) !important;
		font-weight: 900 !important;
		line-height: 1 !important;
		letter-spacing: -0.035em !important;
	}

	body.home .mobile-featured-bundle__cta {
		display: inline-flex !important;
		min-height: 50px !important;
		width: 100% !important;
		max-width: 100% !important;
		align-items: center !important;
		align-self: flex-start !important;
		justify-content: center !important;
		gap: 6px !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 10px !important;
		background: #081b35 !important;
		color: #ffffff !important;
		font-size: clamp(17px, 4.5vw, 18px) !important;
		font-weight: 850 !important;
		line-height: 1.1 !important;
	}

	body.home .mobile-featured-bundle__cta > span:last-child {
		color: #e2b75b !important;
		font-size: 18px !important;
	}

	html[dir="rtl"] body.home .mobile-featured-bundle__cta > span:last-child {
		transform: scaleX(-1) !important;
	}

	body.home .mobile-bundle-carousel__pagination {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 2px !important;
		min-height: 44px !important;
		margin: 6px auto 0 !important;
	}

	body.home .mobile-bundle-carousel__dot {
		display: grid !important;
		place-items: center !important;
		width: 18px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		cursor: pointer !important;
	}

	body.home .mobile-bundle-carousel__dot > span {
		display: block !important;
		width: 8px !important;
		height: 8px !important;
		border: 1.5px solid rgba(8, 27, 53, 0.28) !important;
		border-radius: 999px !important;
		background: transparent !important;
		transition: width 180ms ease, background-color 180ms ease, transform 180ms ease !important;
	}

	body.home .mobile-bundle-carousel__dot[aria-current="true"] > span {
		width: 9px !important;
		height: 9px !important;
		border-color: #c98a00 !important;
		background: #c98a00 !important;
	}

	body.home .mobile-bundle-carousel__dot:focus-visible {
		outline: 2px solid #081b35 !important;
		outline-offset: -7px !important;
		border-radius: 999px !important;
	}

	/* ========================================================
	   PRODUCT CARDS
	   ======================================================== */

	body.home .mobile-home-essentials > .container {
		width: 100% !important;
		max-width: 750px !important;
		padding-inline: clamp(10px, 3.4vw, 15px) !important;
		box-sizing: border-box !important;
	}

	body.home .mobile-essential-list {
		display: grid !important;
		width: 100% !important;
		max-width: 100% !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		column-gap: clamp(9px, 2.6vw, 11px) !important;
		row-gap: 6px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-sizing: border-box !important;
		list-style: none !important;
		overflow: visible !important;
	}

	body.home .mobile-essential-item {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: auto auto auto !important;
		align-self: stretch !important;
		align-content: start !important;
		gap: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		padding: 0 !important;
		border: 1px solid #e5dacb !important;
		border-radius: 17px !important;
		background: #fffefd !important;
		box-sizing: border-box !important;
		box-shadow: none !important;
		overflow: hidden !important;
	}

	body.home .mobile-essential-item__image {
		grid-row: 1 !important;
		display: grid !important;
		place-items: center !important;
		width: 100% !important;
		height: clamp(194px, 52.05vw, 215px) !important;
		max-height: none !important;
		aspect-ratio: auto !important;
		margin: 0 !important;
		padding: 4px clamp(10px, 3vw, 12px) !important;
		overflow: visible !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-sizing: border-box !important;
	}

	body.home .mobile-essential-item__image img {
		position: static !important;
		inset: auto !important;
		width: 100% !important;
		height: 100% !important;
		min-width: 0 !important;
		min-height: 0 !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: contain !important;
		object-position: center center !important;
		mix-blend-mode: multiply !important;
		transform: none !important;
		transform-origin: center center !important;
	}

	body.home .mobile-essential-item__copy {
		grid-row: 2 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 10px clamp(10px, 3vw, 12px) 0 !important;
		color: #081b35 !important;
		text-decoration: none !important;
		box-sizing: border-box !important;
	}

	body.home .mobile-essential-item__copy strong {
		display: -webkit-box !important;
		overflow: hidden !important;
		font-size: clamp(21px, 5.7vw, 23px) !important;
		font-weight: 750 !important;
		line-height: 1.18 !important;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
	}

	body.home .mobile-essential-item__copy small {
		display: block !important;
		margin-top: 3px !important;
		color: #667085 !important;
		font-size: 13px !important;
		line-height: 1.2 !important;
	}

	/* Price and Add occupy explicit grid tracks, isolated from the image
	   and title rows. The button track stays stable while the price track
	   absorbs the remaining width without coupling to image dimensions. */
	body.home .mobile-essential-item__actions {
		grid-row: 3 !important;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: center !important;
		justify-content: normal !important;
		gap: clamp(8px, 2.3vw, 10px) !important;
		min-width: 0 !important;
		margin: 0 !important;
		padding: 14px clamp(10px, 3vw, 12px) 10px !important;
		box-sizing: border-box !important;
	}

	body.home .mobile-essential-item__price {
		grid-column: auto !important;
		grid-row: auto !important;
		min-width: 0 !important;
		justify-self: start !important;
		margin: 0 !important;
		color: #081b35 !important;
		font-size: 21px !important;
		font-weight: 900 !important;
		line-height: 1 !important;
		letter-spacing: -0.065em !important;
		white-space: nowrap !important;
	}

	body.home .mobile-essential-item__add {
		grid-column: auto !important;
		grid-row: auto !important;
		display: inline-flex !important;
		width: clamp(62px, calc(33.333vw - 58px), 78px) !important;
		height: 52px !important;
		min-width: clamp(62px, calc(33.333vw - 58px), 78px) !important;
		min-height: 52px !important;
		padding: 0 4px !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 4px !important;
		flex-shrink: 0 !important;
		border: 0 !important;
		border-radius: 11px !important;
		background: #081b35 !important;
		color: #ffffff !important;
		text-decoration: none !important;
	}

	/* Gold is for primary purchase actions only, so this is scoped to the
	   add-to-cart variant and deliberately excludes
	   `.mobile-essential-item__add--details` ("View product") and the
	   Browse-all tile, which keep their existing treatment. The label and the
	   cart icon are already #fff below, so they read white on the gold. */
	body.home .mobile-essential-item__add.add_to_cart_button {
		background: var(--etebar-mobile-cta) !important;
		color: var(--etebar-mobile-cta-ink) !important;
	}

	body.home .mobile-essential-item__add.add_to_cart_button:hover,
	body.home .mobile-essential-item__add.add_to_cart_button:focus-visible {
		background: var(--etebar-mobile-cta-hover) !important;
	}

	body.home .mobile-essential-item__add-label {
		display: inline !important;
		color: #ffffff !important;
		font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
		font-size: clamp(15.5px, 4.1vw, 16px) !important;
		font-weight: 800 !important;
		line-height: 1 !important;
	}

	body.home .mobile-essential-item__add-icon {
		display: block !important;
		width: 17px !important;
		height: 17px !important;
		flex: 0 0 17px !important;
		color: #ffffff !important;
	}

	body.home .mobile-essential-item--more {
		display: block !important;
		align-self: stretch !important;
		min-height: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		border: 1px solid #081b35 !important;
		border-radius: 17px !important;
		background: #081b35 !important;
	}

	body.home .mobile-essential-more {
		display: flex !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		min-height: 0 !important;
		height: 100% !important;
		padding: 22px 15px !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		color: #ffffff !important;
		text-align: center !important;
		text-decoration: none !important;
		box-sizing: border-box !important;
	}

	body.home .mobile-essential-more__icon {
		display: grid !important;
		place-items: center !important;
		width: 60px !important;
		height: 60px !important;
		margin-bottom: 19px !important;
		border: 1px solid rgba(255, 255, 255, 0.32) !important;
		border-radius: 999px !important;
		color: #d9ad4d !important;
		font-size: 30px !important;
	}

	body.home .mobile-essential-more strong {
		max-width: 11ch !important;
		font-family: Georgia, "Times New Roman", serif !important;
		font-size: clamp(32px, 8.8vw, 36px) !important;
		line-height: 1.06 !important;
	}

	body.home .mobile-essential-more small {
		display: block !important;
		max-width: 14ch !important;
		margin-top: 11px !important;
		color: rgba(255, 255, 255, 0.8) !important;
		font-size: clamp(17px, 4.5vw, 18px) !important;
		font-weight: 650 !important;
		line-height: 1.35 !important;
	}

	html[dir="rtl"] body.home .mobile-essential-item__actions {
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: stretch !important;
		justify-content: flex-start !important;
	}

	html[dir="rtl"] body.home .mobile-essential-item__price {
		align-self: flex-start !important;
	}

	html[dir="rtl"] body.home .mobile-essential-item__add {
		width: 100% !important;
	}

	html[dir="rtl"] body.home .mobile-essential-more__icon {
		transform: scaleX(-1) !important;
	}
}

@media (max-width: 820px) and (prefers-reduced-motion: reduce) {
	body.home .mobile-bundle-carousel__track {
		scroll-behavior: auto !important;
	}

	body.home .mobile-bundle-carousel__dot > span {
		transition: none !important;
	}
}

@media (max-width: 365px) {
	body.home .mobile-essential-item {
		grid-template-rows: auto auto auto !important;
		padding: 0 !important;
	}

	body.home .mobile-essential-item__image {
		height: 194px !important;
		aspect-ratio: auto !important;
	}

	body.home .mobile-essential-item__copy strong {
		font-size: 21px !important;
	}

	body.home .mobile-essential-item__price {
		grid-column: auto !important;
		grid-row: auto !important;
		font-size: 21px !important;
	}

	body.home .mobile-essential-item__add {
		grid-column: auto !important;
		grid-row: auto !important;
		width: 62px !important;
		min-width: 62px !important;
		padding-inline: 4px !important;
		gap: 4px !important;
	}

	body.home .mobile-essential-item__actions {
		grid-template-columns: minmax(0, 1fr) auto !important;
		gap: 8px !important;
		padding-inline: clamp(10px, 3vw, 12px) !important;
	}

	body.home .mobile-essential-item__add-label {
		font-size: 15.5px !important;
	}
}


/* ========================================================
   MOBILE HEADER -- 360px TIER
   ======================================================== */

/* At >=390px there is enough slack for the fuller Burger->Language and
   Search->Cart gaps and the full-size (~105px) language pill defined
   above. At 360px there isn't: measurement shows the brand and the two
   rails cannot all fit at once once the pill carries its full enlarged
   content (15px name, 17x12 flag, 9x6 chevron) plus real end-padding --
   confirmed directly, not estimated. The brand and the 48px icons are
   not up for negotiation, so this 360-only tier spends the very limited
   remaining budget in this order: (1) the pill keeps its full content
   size and a real, non-zero end-padding, landing close to the 96-100px
   target; (2) Search->Cart keeps as much of its gap as the remaining
   budget allows; (3) Burger->Language absorbs what's left.

   Because the pill is narrower here, this tier actually leaves the
   brand MORE room than the >=390px tier does at its own width, so the
   full 19px Dari still fits down to ~373px. */
@media (max-width: 389px) {
	body.etebar-mobile-header .mobile-header-rail--start {
		gap: 4px !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end {
		gap: 2px !important;
	}

	body.etebar-mobile-header .mobile-header-rail--start .language-switcher__button,
	body.etebar-mobile-header .mobile-header-rail--start [data-language-dropdown-toggle] {
		gap: 0px !important;
		padding-inline-end: 1px !important;
	}
}

/* Below ~373px the brand runs out of room for the full 19px Dari: the
   rails leave it ~101px at 360px and 19px needs ~107px plus clearance,
   which would slide the gold Dari text under the white language pill.
   The pill keeps its size (it is already compressed by the tier above),
   so the Dari takes the reduction instead -- 18px, still larger than
   the 17px it replaces, measured to clear both rails by ~4px at 360px.
   The edge inset is the priority at this width, so this tier pays for
   it out of the two places with any slack left. The rail gaps go to 1px
   (the 48px buttons carry ~5.5px of internal padding each, so the
   visible glyphs still sit ~7px apart), and the Dari steps 18 -> 17.5px
   — a 0.5px, ~3% reduction at 360px only, which frees ~3px of brand
   width. Together that funds the 6.5px inset the fluid calc now floors
   at, putting the burger glyph ~12px off the edge instead of ~9.5px,
   while the Dari still clears the pill by ~2.9px on each side. */
@media (max-width: 372px) {
	body.etebar-mobile-header .mobile-header-rail--start {
		gap: 1px !important;
	}

	body.etebar-mobile-header .mobile-header-rail--end {
		gap: 1px !important;
	}

	body.etebar-mobile-header .mobile-header-brand__dari {
		font-size: 17.5px !important;
	}
}

/* ============================================================
   EDITORIAL PRODUCT PAGE
   ============================================================
   Replaces the previous navy-band / card-in-card product layout.
   The page is one continuous cream surface: the product sits on it
   directly (cutout) or on a deliberate white stage (studio photo),
   and the buy column is typography rather than a panel.

   Scoped to .etebar-pdp, which the single-product template applies
   instead of the older .etebar-product__* containers, so none of the
   legacy product rules earlier in this file apply. Only WooCommerce's
   own generated classes need overriding, and those are handled below.
   ============================================================ */

body.single-product .etebar-pdp {
	--pdp-navy: #081b35;
	--pdp-cream: #f8f4ec;
	--pdp-cream-deep: #f1ead9;
	--pdp-gold: #b8892b;
	--pdp-ink: #2b3440;
	--pdp-muted: #5b6672;
	--pdp-line: #e2d9c8;
	background: var(--pdp-cream);
}

/* The desktop header floats over the page: it carries a negative bottom
   margin that cancels .site-main's own top padding, so every template
   supplies its own clearance. Without this the breadcrumb and the top of the
   product render underneath the header pill. */
body.single-product .etebar-pdp__shell {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	padding-inline: clamp(20px, 5vw, 48px);
	padding-block-start: calc(var(--etebar-header-overlap) + 1.5rem);
	box-sizing: border-box;
}

/* The shared mobile header is a sticky bar in normal flow, so the page needs
   no clearance under it — only breathing room. Carrying the desktop figure
   here cost 110px of dead air above the breadcrumb and pushed Add to cart
   off the first screen. */
@media (max-width: 820px) {
	body.single-product .etebar-pdp__shell {
		padding-block-start: 14px;
	}
}

/* ---------- Breadcrumb ---------- */

body.single-product .etebar-pdp__breadcrumb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	padding-block: 0 0;
	color: var(--pdp-muted);
	font-family: var(--etebar-sans);
	font-size: 14px;
	letter-spacing: 0.01em;
}

body.single-product .etebar-pdp__breadcrumb a {
	color: var(--pdp-muted);
	text-decoration: none;
	border-bottom: 1px solid transparent;
}

body.single-product .etebar-pdp__breadcrumb a:hover,
body.single-product .etebar-pdp__breadcrumb a:focus-visible {
	color: var(--pdp-navy);
	border-bottom-color: var(--pdp-gold);
}

/* ---------- Layout ---------- */

body.single-product .etebar-pdp__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(18px, 4vw, 28px);
	padding-block: clamp(10px, 2vw, 18px) clamp(28px, 6vw, 56px);
}

@media (min-width: 900px) {
	body.single-product .etebar-pdp__layout {
		grid-template-columns: minmax(0, 53fr) minmax(0, 40fr);
		gap: clamp(40px, 5vw, 72px);
		align-items: start;
		padding-block: clamp(18px, 3vw, 34px) clamp(56px, 7vw, 88px);
	}
}

/* ---------- Product visual ---------- */

body.single-product .etebar-pdp__media {
	display: grid;
	place-items: center;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

body.single-product .etebar-pdp__media img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	margin-inline: auto;
	object-fit: contain;
}

/* Cutout: the product stands on the page itself, grounded by a soft
   elliptical contact shadow rather than by a container edge. */
body.single-product .etebar-pdp__media--cutout {
	position: relative;
	padding-block: clamp(2px, 1.4vw, 14px) clamp(14px, 3.4vw, 26px);
}

/* Cutouts are trimmed to their content, so the product's base sits on the
   figure's padding line and the contact shadow can be anchored to it. */
body.single-product .etebar-pdp__media--cutout::after {
	position: absolute;
	inset-inline: 26%;
	bottom: clamp(12px, 3vw, 22px);
	height: clamp(9px, 2vw, 15px);
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(56, 44, 24, 0.2), rgba(56, 44, 24, 0));
	content: "";
	z-index: 0;
}

/* Capped so the product still reads as the hero without pushing the
   purchase controls off the first screen: at 390x844 this keeps Add to
   cart fully visible above the fold. */
body.single-product .etebar-pdp__media--cutout img {
	position: relative;
	z-index: 1;
	max-height: min(40vh, 340px);
	filter: drop-shadow(0 18px 26px rgba(37, 30, 16, 0.13));
}

/* Studio photo without a reviewed cutout: a deliberate white stage, so
   the photo's own white background is seamless inside it instead of
   reading as a hard rectangle dropped on cream. */
body.single-product .etebar-pdp__media--plate,
body.single-product .etebar-pdp__media--placeholder {
	padding: clamp(20px, 5vw, 44px);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(24, 34, 46, 0.05), 0 18px 40px -28px rgba(24, 34, 46, 0.4);
}

body.single-product .etebar-pdp__media--plate img {
	max-height: min(36vh, 300px);
}

body.single-product .etebar-pdp__placeholder {
	display: grid;
	place-items: center;
	gap: 12px;
	min-height: 240px;
	color: #a9b2bd;
	font-family: var(--etebar-sans);
	font-size: 14px;
}

body.single-product .etebar-pdp__placeholder svg {
	width: 64px;
	height: auto;
}

@media (min-width: 900px) {
	body.single-product .etebar-pdp__media--cutout img {
		max-height: 620px;
	}

	body.single-product .etebar-pdp__media--plate img {
		max-height: 560px;
	}

	/* The visual holds while the shorter buy column scrolls; only ever
	   engaged where the viewport is tall enough for the whole image. */
	body.single-product .etebar-pdp__visual {
		position: sticky;
		top: 104px;
	}
}

@media (min-width: 900px) and (max-height: 760px) {
	body.single-product .etebar-pdp__visual {
		position: static;
	}
}

/* ---------- Buy column ---------- */

body.single-product .etebar-pdp__buy {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

body.single-product .etebar-pdp__buy::before,
body.single-product .etebar-pdp__buy::after {
	display: none;
	content: none;
}

body.single-product .etebar-pdp__eyebrow {
	margin: 0 0 10px;
	color: var(--pdp-gold);
	font-family: var(--etebar-sans);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

body.single-product .etebar-pdp__tier {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	font-family: var(--etebar-sans);
	font-size: 13px;
}

body.single-product .etebar-pdp__tier span {
	color: var(--pdp-muted);
	font-weight: 600;
}

body.single-product .etebar-pdp__tier strong {
	padding: 4px 10px;
	border-radius: 999px;
	background: var(--pdp-navy);
	color: #fff;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.single-product .woocommerce-main div.product .etebar-pdp__title,
body.single-product .etebar-pdp__title {
	margin: 0;
	color: var(--pdp-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(33px, 8.2vw, 42px);
	font-weight: 500;
	line-height: 1.06;
	letter-spacing: -0.015em;
	text-wrap: balance;
}

@media (min-width: 900px) {
	body.single-product .woocommerce-main div.product .etebar-pdp__title,
	body.single-product .etebar-pdp__title {
		font-size: clamp(38px, 3vw, 46px);
	}
}

/* The price is the second half of the purchase hierarchy, not metadata:
   it takes the same serif at three quarters of the title's size, sat on
   a gold rule so it reads as a decision point. */
body.single-product.woocommerce div.product .etebar-pdp__price,
body.single-product .etebar-pdp__price {
	display: block;
	margin: 12px 0 0;
	padding: 0 0 15px;
	border-bottom: 1px solid var(--pdp-line);
	color: var(--pdp-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(33px, 8.6vw, 40px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.01em;
}

@media (min-width: 900px) {
	body.single-product.woocommerce div.product .etebar-pdp__price,
	body.single-product .etebar-pdp__price {
		font-size: 40px;
	}
}

body.single-product.woocommerce div.product .etebar-pdp__price del,
body.single-product.woocommerce div.product .etebar-pdp__price ins {
	background: none;
	text-decoration: none;
}

body.single-product .etebar-pdp__unavailable {
	margin: 14px 0 0;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--pdp-line);
	color: var(--pdp-ink);
	font-family: var(--etebar-sans);
	font-size: 15.5px;
	line-height: 1.55;
}

body.single-product .etebar-pdp__lede {
	margin-top: 16px;
	color: var(--pdp-ink);
	font-family: var(--etebar-sans);
	font-size: 16px;
	line-height: 1.6;
}

body.single-product .etebar-pdp__lede p {
	margin: 0 0 0.7em;
}

body.single-product .etebar-pdp__lede p:last-child {
	margin-bottom: 0;
}

/* ---------- Purchase controls ---------- */

body.single-product .etebar-pdp__purchase {
	margin-top: 17px;
}

body.single-product .etebar-pdp__quantity-label {
	display: block;
	margin-bottom: 10px;
	color: var(--pdp-muted);
	font-family: var(--etebar-sans);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

/* Mobile stacks the stepper above a near-full-width primary action rather
   than splitting a narrow row between them, which left the CTA only ~160px
   wide at 390px. Desktop puts them back on one line. */
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	justify-items: stretch;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart::before,
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart::after {
	display: none;
	content: none;
}

/* One stepper, one background, one border — and warmed to sit with the
   cream page rather than reading as a stock form control: the same 10px
   radius as the primary button, a warm white fill, and the soft inset
   hairline the header's language pill uses. */
body.single-product .etebar-pdp__purchase form.cart .quantity {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr) 46px;
	align-items: stretch;
	width: 138px;
	height: 56px;
	margin: 0;
	overflow: hidden;
	border: 0;
	border-radius: 10px;
	background: #fffdf8;
	box-shadow: inset 0 0 0 1px #ddd2bd, 0 1px 2px rgba(8, 27, 53, 0.04);
	float: none;
}

body.single-product .etebar-pdp__purchase form.cart .quantity .etebar-quantity-step {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--pdp-navy);
	font-family: var(--etebar-sans);
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
}

body.single-product .etebar-pdp__purchase form.cart .quantity .etebar-quantity-step:hover:not(:disabled) {
	background: var(--pdp-cream-deep);
}

body.single-product .etebar-pdp__quantity-label {
	color: var(--pdp-muted);
}

body.single-product .etebar-pdp__purchase form.cart .quantity .etebar-quantity-step:disabled {
	color: #b3bcc6;
	cursor: default;
}

body.single-product .etebar-pdp__purchase form.cart .quantity .etebar-quantity-step:focus-visible {
	outline: 2px solid var(--pdp-navy);
	outline-offset: -3px;
}

/* The value picks up the serif the price uses, so the stepper reads as part
   of the same purchase block rather than a form widget dropped into it. */
body.single-product .etebar-pdp__purchase form.cart .quantity input.qty {
	width: 100%;
	height: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--pdp-navy);
	font-family: var(--etebar-serif);
	font-size: 19px;
	font-weight: 700;
	text-align: center;
	-moz-appearance: textfield;
}

body.single-product .etebar-pdp__purchase form.cart .quantity input.qty::-webkit-outer-spin-button,
body.single-product .etebar-pdp__purchase form.cart .quantity input.qty::-webkit-inner-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

body.single-product .etebar-pdp__purchase form.cart .quantity input.qty:focus-visible {
	outline: 2px solid var(--pdp-navy);
	outline-offset: -3px;
}

/* Primary action: the same gold fill as the homepage hero CTA (#c08528), so the
   strongest control on the storefront and the strongest control here read as one
   button family. Geometry is unchanged — only the colour role moves from navy
   to gold.

   The label is charcoal rather than the hero's white: the hero clears its
   contrast bar on the strength of a 19px/800 label (large text, 3:1), while this
   button is 16.5px/700 and the sticky one 15.5px/700, which count as normal text
   and need 4.5:1. Charcoal on #c08528 measures 4.99:1; white on the same fill
   does not reach the normal-text bar. Dark-on-gold is already part of the
   system's language — the desktop hero CTA uses it. */
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button,
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:hover,
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:focus-visible {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	height: 56px;
	min-height: 56px;
	margin: 0;
	padding-inline: 20px;
	border: 0;
	border-radius: 10px;
	background: #c08528;
	color: var(--etebar-charcoal);
	font-family: var(--etebar-sans);
	font-size: 16.5px;
	font-weight: 700;
	letter-spacing: 0.005em;
	line-height: 1.1;
	text-transform: none;
	white-space: nowrap;
	float: none;
	box-shadow: 0 10px 24px -16px rgba(8, 27, 53, 0.9);
}

/* The default fill was already set to a charcoal-on-gold pair that clears AA
   (4.99:1), but this hover fill was left at #a9731e, where the same charcoal
   label drops to 3.88:1 — the button became unreadable exactly while it was
   being pressed. #a9731e is a dead end for contrast: it is too dark for a light
   ink (white reaches only 4.09:1) and too light for a dark one (navy-dark
   reaches 4.12:1), so no palette ink passes on it. The fill therefore moves to
   #c29a48, which is not a new colour — it is the gold hover fill this same
   button family already uses below 820px — and charcoal on it measures 6.00:1.
   Only the hover/active fill changes; the resting gold, the geometry and the
   label are untouched. */
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:hover {
	background: #c29a48;
}

/* Navy ring, not gold: a gold outline on a gold button is invisible. */
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:focus-visible {
	outline: 3px solid var(--pdp-navy);
	outline-offset: 2px;
}

/* WooCommerce core pins an icon-font glyph to the top-right corner of a button
   in the `.loading` state (`content: "\e01c"` in the WooCommerce font, spinning
   via `animation: spin`). At this button's size the glyph lands on top of the
   label and reads as a tiny stray ring rather than a spinner, so it is
   suppressed in every state and progress is carried by opacity instead. */
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button::after {
	display: none !important;
	content: none !important;
}

body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button.loading {
	opacity: 0.75;
}

@media (min-width: 620px) {
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart {
		grid-template-columns: 132px minmax(200px, 260px);
		justify-content: start;
	}
}

/* ---------- Delivery facts ---------- */

body.single-product .etebar-pdp__facts {
	display: grid;
	gap: 12px;
	margin: 26px 0 0;
	padding: 22px 0 0;
	border: 0;
	border-top: 1px solid var(--pdp-line);
	border-radius: 0;
	background: transparent;
	list-style: none;
}

body.single-product .etebar-pdp__facts li,
body.single-product .etebar-pdp__facts li:nth-child(n),
body.single-product .etebar-pdp__facts li:last-child {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	align-items: start;
	gap: 12px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--pdp-ink);
	font-family: var(--etebar-sans);
	font-size: 15.5px;
	font-weight: 500;
	line-height: 1.5;
}

body.single-product .etebar-pdp__facts svg {
	width: 20px;
	height: 20px;
	margin-top: 1px;
	fill: none;
	stroke: var(--pdp-gold);
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* ---------- Video proof ---------- */

body.single-product .etebar-pdp__proof {
	margin: 18px 0 0;
	padding: 16px 0 0;
	border: 0;
	border-top: 1px solid var(--pdp-line);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

/* Checkbox and the choice itself on the first line; the price and the
   explanation of what the option buys sit underneath it, so the block reads
   as one decision rather than a paragraph with a tick box beside it. */
body.single-product .etebar-pdp__proof label {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 13px;
	align-items: start;
	margin: 0;
	cursor: pointer;
}

body.single-product .etebar-pdp__proof input[type="checkbox"] {
	width: 22px;
	height: 22px;
	margin: 1px 0 0;
	accent-color: var(--pdp-navy);
}

body.single-product .etebar-pdp__proof label > span {
	display: grid;
	gap: 6px;
}

body.single-product .etebar-pdp__proof label strong {
	color: var(--pdp-navy);
	font-family: var(--etebar-sans);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}

body.single-product .etebar-pdp__proof label small {
	color: var(--pdp-muted);
	font-family: var(--etebar-sans);
	font-size: 15px;
	line-height: 1.55;
}

/* ---------- Secondary path ---------- */

/* Readable, but still plainly the secondary path: the question and the link
   stack on their own lines with real type sizes, while the link stays a
   gold-underlined text link rather than becoming a second button. */
body.single-product .etebar-pdp__secondary {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 7px;
	margin: 20px 0 0;
	padding: 18px 0 0;
	border-top: 1px solid var(--pdp-line);
	color: var(--pdp-muted);
	font-family: var(--etebar-sans);
	font-size: 15px;
	line-height: 1.5;
}

body.single-product .etebar-pdp__secondary a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--pdp-navy);
	font-size: 15.5px;
	font-weight: 700;
	text-decoration: none;
	border-bottom: 1px solid var(--pdp-gold);
}

body.single-product .etebar-pdp__secondary a:hover,
body.single-product .etebar-pdp__secondary a:focus-visible {
	color: var(--pdp-gold);
}

/* ---------- Details ---------- */

body.single-product .etebar-pdp__details {
	margin: 0;
	padding: clamp(26px, 5vw, 40px) 0;
	border: 0;
	border-top: 1px solid var(--pdp-line);
	background: transparent;
}

body.single-product .etebar-pdp__details::before,
body.single-product .etebar-pdp__details::after {
	display: none;
	content: none;
}

body.single-product .etebar-pdp__details-intro h2 {
	margin: 0;
	color: var(--pdp-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(26px, 5.4vw, 32px);
	font-weight: 500;
	line-height: 1.12;
}

body.single-product .etebar-pdp__details-body {
	margin-top: 18px;
}

body.single-product .etebar-pdp__prose {
	color: var(--pdp-ink);
	font-family: var(--etebar-sans);
	font-size: 16px;
	line-height: 1.65;
	max-width: 62ch;
}

body.single-product .etebar-pdp__prose p {
	margin: 0 0 0.85em;
}

@media (min-width: 900px) {
	body.single-product .etebar-pdp__details:not(.etebar-pdp__details--compact) {
		display: grid;
		grid-template-columns: minmax(0, 26fr) minmax(0, 62fr);
		gap: clamp(32px, 6vw, 88px);
		align-items: start;
	}

	body.single-product .etebar-pdp__details-body {
		margin-top: 0;
	}
}

/* Metadata-only products get a specification strip, never an editorial
   section: the heading collapses to an eyebrow and the rows carry it. The
   whole strip is tightened too — one label/value row does not warrant the
   same vertical ceremony as a full editorial section. */
body.single-product .etebar-pdp__details--compact {
	padding-block: clamp(18px, 3.5vw, 24px) clamp(18px, 3.5vw, 24px);
}

body.single-product .etebar-pdp__details--compact h2.etebar-pdp__eyebrow {
	margin: 0 0 2px;
	font-family: var(--etebar-sans);
	font-size: 12.5px;
	font-weight: 700;
}

body.single-product .etebar-pdp__details--compact .etebar-pdp__specs div {
	padding: 9px 0;
}

body.single-product .etebar-pdp__details--compact .etebar-pdp__specs div:last-child {
	padding-bottom: 0;
}

body.single-product .etebar-pdp__specs {
	margin: 0;
	padding: 0;
	/* Held to a readable measure: stretched across the full page the label
	   and its value end up a third of a screen apart. */
	max-width: 680px;
}

body.single-product .etebar-pdp__specs div {
	display: grid;
	grid-template-columns: minmax(120px, 30%) minmax(0, 1fr);
	gap: 16px;
	margin: 0;
	padding: 13px 0;
	border-bottom: 1px solid var(--pdp-line);
}

body.single-product .etebar-pdp__specs div:last-child {
	border-bottom: 0;
}

body.single-product .etebar-pdp__details .etebar-pdp__specs dt {
	margin: 0;
	color: var(--pdp-muted);
	font-family: var(--etebar-sans);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.01em;
	text-transform: none;
}

body.single-product .etebar-pdp__details .etebar-pdp__specs dd {
	margin: 0;
	color: var(--pdp-ink);
	font-family: var(--etebar-sans);
	font-size: 15.5px;
	line-height: 1.5;
}

body.single-product .etebar-pdp__prose + .etebar-pdp__specs {
	margin-top: 22px;
}

/* ---------- Related ---------- */

body.single-product .etebar-pdp__related {
	padding: clamp(26px, 5vw, 40px) 0 clamp(36px, 6vw, 64px);
	border-top: 1px solid var(--pdp-line);
}

body.single-product .etebar-pdp__related .related.products,
body.single-product .etebar-pdp__related .related.products > h2 {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

body.single-product .etebar-pdp__related .related.products > h2 {
	margin-bottom: 18px;
	color: var(--pdp-navy);
	font-family: var(--etebar-serif);
	font-size: clamp(26px, 5.4vw, 32px);
	font-weight: 500;
	line-height: 1.12;
}

/* Mobile: a scroll-snap rail, so four suggestions cost one card of
   height instead of four.

   The !important flags answer the max-width:559px catalog block, which
   forces ul.products to a single column and turns every card into a
   horizontal image|content grid. That layout is right for a category
   listing and wrong for a four-item cross-sell rail. */
body.single-product .etebar-pdp__related .related.products ul.products {
	display: grid;
	grid-template-columns: none !important;
	grid-auto-flow: column;
	grid-auto-columns: 44%;
	gap: 12px !important;
	width: calc(100% + clamp(20px, 5vw, 48px));
	margin: 0;
	padding: 2px clamp(20px, 5vw, 48px) 8px 0;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scroll-snap-type: inline mandatory;
	scrollbar-width: none;
	list-style: none;
	-webkit-overflow-scrolling: touch;
}

body.single-product .etebar-pdp__related .related.products ul.products::-webkit-scrollbar {
	display: none;
}

body.single-product .etebar-pdp__related .related.products li.product,
body.single-product .etebar-pdp__related .related.products li.product.etebar-shop-card {
	display: flex !important;
	flex-direction: column;
	grid-template-columns: none !important;
	grid-template-rows: none !important;
	width: auto;
	min-width: 0;
	min-height: 0 !important;
	height: auto;
	margin: 0;
	padding: 0;
	border: 1px solid var(--pdp-line);
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	scroll-snap-align: start;
	box-shadow: none;
}

body.single-product .etebar-pdp__related .related.products li.product:hover {
	transform: none;
	box-shadow: 0 12px 26px -18px rgba(8, 27, 53, 0.5);
}

body.single-product .etebar-pdp__related .related.products li.product::before {
	display: none;
	content: none;
}

body.single-product .etebar-pdp__related .related.products .etebar-shop-card__image {
	display: grid !important;
	place-items: center;
	grid-row: auto !important;
	width: 100%;
	aspect-ratio: 1 / 1;
	min-height: 0 !important;
	padding: 10px;
	border: 0;
	background: #fff;
	box-sizing: border-box;
}

body.single-product .etebar-pdp__related .related.products .etebar-shop-card__image-label {
	display: none;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__image img {
	width: auto !important;
	max-width: 100%;
	height: auto !important;
	max-height: 100%;
	min-height: 0 !important;
	object-fit: contain;
}

/* Card internals: the same max-width:559px catalog block sizes these for a
   wide horizontal card (18-21px titles, footers pinned to grid column 2),
   which overflows a 135px rail card, so the rail restates them. */
body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__body {
	display: grid !important;
	gap: 2px;
	grid-column: auto !important;
	padding: 8px 11px 0 !important;
	border: 0;
	background: transparent;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__type,
body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__unit {
	display: none !important;
}

body.single-product .etebar-pdp__related .related.products li.product .woocommerce-loop-product__title {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--etebar-sans) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: 0;
}

body.single-product .etebar-pdp__related .related.products li.product .woocommerce-loop-product__title a {
	color: var(--pdp-navy);
	text-decoration: none;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer {
	display: grid !important;
	gap: 8px;
	/* The catalog card lays price and button side by side in one row; at rail
	   width that collapses the price column to 0 and the two overlap. */
	grid-template-columns: minmax(0, 1fr) !important;
	grid-template-rows: auto !important;
	grid-column: auto !important;
	margin-top: auto;
	padding: 8px 11px 11px !important;
	border: 0;
	background: transparent;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .price {
	margin: 0 !important;
	color: var(--pdp-navy);
	font-family: var(--etebar-serif) !important;
	font-size: 17.5px !important;
	font-weight: 700 !important;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button,
body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button:hover,
body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button:focus-visible {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 4px;
	width: 100% !important;
	min-height: 44px !important;
	margin: 0 !important;
	/* 6px rather than 8px: at 360px the rail card leaves ~81px of label room,
	   and the larger label needs those 4px back to stay on one line. */
	padding: 0 6px !important;
	border: 1px solid var(--pdp-navy) !important;
	border-radius: 8px !important;
	background: transparent !important;
	color: var(--pdp-navy) !important;
	font-family: var(--etebar-sans) !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-transform: none !important;
	white-space: nowrap !important;
	box-shadow: none !important;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button:hover {
	background: var(--pdp-navy) !important;
	color: #fff !important;
}

body.single-product .etebar-pdp__related .related.products .button:focus-visible {
	outline: 3px solid var(--pdp-gold);
	outline-offset: 2px;
}

/* Same WooCommerce `.loading` glyph as the main button above. These rail
   buttons are the ones on screen while the sticky buy bar is up, so the stray
   ring showed there: the glyph is absolutely positioned over the label, and the
   rail card is too narrow for it to sit clear of the text. `.is-added` is
   excluded because that state carries the theme's own inline "✓" confirmation,
   which flows after the label instead of on top of it. */
body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button:not(.is-added)::after {
	display: none !important;
	content: none !important;
}

body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button.loading {
	opacity: 0.75 !important;
}

@media (min-width: 700px) {
	body.single-product .etebar-pdp__related .related.products ul.products {
		grid-auto-flow: row;
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		grid-auto-columns: auto;
		gap: 20px !important;
		width: 100%;
		padding: 0;
		overflow: visible;
	}

	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__body {
		padding: 12px 16px 0 !important;
	}

	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer {
		padding: 10px 16px 16px !important;
	}

	body.single-product .etebar-pdp__related .related.products li.product .woocommerce-loop-product__title {
		font-size: 15.5px !important;
	}

	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .price {
		font-size: 19px !important;
	}

	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button {
		min-height: 44px !important;
		font-size: 14.5px !important;
	}
}

/* ---------- Related rail end-cap ---------- */

/* The rail used to stop dead after the last suggestion. It now finishes on the
   same navy tile the homepage uses for "Browse all products", so reaching the
   end of the recommendations hands the reader straight into the catalog.
   Navigation only: no price, no image, no add-to-cart, no product behind it.

   No height is declared. The card is a grid item like the product cards beside
   it, so the row's default stretch alignment already gives it exactly their
   height whatever the tallest card turns out to be. */
body.single-product .etebar-pdp__related .etebar-pdp__browse-item {
	display: flex;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 1px solid var(--pdp-navy);
	border-radius: 14px;
	overflow: hidden;
	background: var(--pdp-navy);
	scroll-snap-align: start;
	list-style: none;
}

body.single-product .etebar-pdp__related .etebar-pdp__browse {
	display: flex;
	flex: 1;
	min-width: 0;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 18px 8px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}

/* Gold and border taken from the rendered homepage tile rather than from
   --pdp-gold: that token is the darker #b8892b used on the cream page, which
   loses most of its contrast against navy. */
body.single-product .etebar-pdp__related .etebar-pdp__browse-icon {
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	margin-bottom: 15px;
	border: 1px solid rgba(255, 255, 255, 0.32);
	border-radius: 999px;
	color: #d9ad4d;
	font-size: 25px;
	line-height: 1;
}

/* The heading is the card's voice and was reading lighter than the sans-serif
   product titles beside it, so it takes the largest step here. It has to stay
   fluid: the rail card is only ~99px wide inside at 360px, and a flat 24px
   would break "Browse all" into two more lines. 600 rather than 500 gives the
   serif the weight it needs to hold its own against the cards. */
body.single-product .etebar-pdp__related .etebar-pdp__browse strong {
	/* No ch cap, same reason as the subtitle below: 10ch is ~110px at the top
	   of the clamp while "Browse all" needs 112px, so the cap — not the card —
	   was forcing a third line in the wider 700-820px rail. */
	max-width: none;
	font-family: var(--etebar-serif);
	font-size: clamp(20.5px, 5.75vw, 24px);
	font-weight: 600;
	line-height: 1.12;
}

/* The supporting line is meant to break once, into "View the full / product
   range". A 360px rail card leaves 99px of measure and the second run needs
   99.7px at 13.5px, so it split a third time and stranded "range" on its own.
   The clamp gives that one width its 0.75px back; 390px and up keep 13.5px. */
/* No ch cap here. A 15ch measure is ~92px at the 360px font size, which is
   narrower than the 103px the card actually offers, and it was the ch limit —
   not the card — that pushed "range" onto a third line. The card's own width
   is the honest constraint at every width. */
body.single-product .etebar-pdp__related .etebar-pdp__browse small {
	max-width: none;
	margin-top: 10px;
	color: rgba(255, 255, 255, 0.85);
	font-family: var(--etebar-sans);
	/* 3.75vw is chosen so 360px lands exactly on the 13.5px floor: that width
	   offers 103px of measure and "product range" needs 99.7px at 13.5px, so a
	   steeper slope stranded "range" on a third line. 412px reaches the 15.5px
	   cap. */
	font-size: clamp(13.5px, 3.75vw, 15.5px);
	font-weight: 600;
	line-height: 1.3;
}

body.single-product .etebar-pdp__related .etebar-pdp__browse:focus-visible {
	outline: 3px solid #d9ad4d;
	outline-offset: -4px;
}

/* The arrow is the one glyph here that carries direction, so it flips with the
   text; everything else is centred and needs no mirroring. */
html[dir="rtl"] body.single-product .etebar-pdp__related .etebar-pdp__browse-icon {
	transform: scaleX(-1);
}

/* The ch measures above are cut for the English strings. Dari and Pashto set
   the same lines much wider, and holding them to an English measure broke the
   heading into three cramped lines, so RTL lets the card's own padding be the
   only limit and the text breaks on its own words.

   The type also runs one step gentler than the Latin scale. "مشاهده همه" is a
   far longer run than "Browse all", so at the English size the rail card broke
   both the heading and the subtitle into three lines each — six lines stacked
   in one card, which reads as clutter rather than as emphasis. These sizes are
   the largest that still let each line break in two. */
html[dir="rtl"] body.single-product .etebar-pdp__related .etebar-pdp__browse strong,
html[dir="rtl"] body.single-product .etebar-pdp__related .etebar-pdp__browse small {
	max-width: none;
}

/* Measured, not assumed: Dari breaks cleanly into two lines at every width.
   Pashto's heading is three words rather than two, and below 412px no pair of
   them fits one rail-card line at any size worth keeping, so 360px and 390px
   render a three-line heading. That is accepted rather than fixed — nothing is
   clipped, there is no overflow, and the card still takes exactly its
   neighbours' height — because shrinking the type far enough to force two
   lines would undo this pass for Pashto readers. */
html[dir="rtl"] body.single-product .etebar-pdp__related .etebar-pdp__browse strong {
	font-size: clamp(18.5px, 5vw, 21px);
}

html[dir="rtl"] body.single-product .etebar-pdp__related .etebar-pdp__browse small {
	font-size: clamp(12.5px, 3.35vw, 13.5px);
}

/* Between 700px and the desktop breakpoint the rail is already a four-column
   grid. Adding a fifth item there would strand it alone on a second row, so
   the row is switched to auto-flow columns: every item, however many related
   products the product has, stays on one line. */
@media (min-width: 700px) and (max-width: 820px) {
	body.single-product .etebar-pdp__related .related.products ul.products {
		grid-auto-flow: column;
		grid-template-columns: none !important;
		grid-auto-columns: minmax(0, 1fr);
	}

	/* The end-cap's type is sized off the viewport everywhere else, which is
	   right while the rail shows two-and-a-bit cards. It is wrong here: five
	   equal columns make each card NARROWER as the viewport grows, so a vw
	   scale runs the heading up to 24px inside 83-105px of card and breaks it
	   into three lines. These flat sizes are matched to the column instead. */
	body.single-product .etebar-pdp__related .etebar-pdp__browse strong {
		font-size: 17.5px;
	}

	body.single-product .etebar-pdp__related .etebar-pdp__browse small {
		font-size: 11.5px;
	}

	body.single-product .etebar-pdp__related .etebar-pdp__browse-icon {
		width: 40px;
		height: 40px;
		margin-bottom: 11px;
		font-size: 20px;
	}
}

/* The card's own side padding funds the wider label: 11px each side left the
   18px "Add to cart" one glyph short of a single line at 390px, and those two
   pixels come off padding rather than off the type. Scoped to the scrolling
   rail — from 700px up the related section is a multi-column grid whose cards
   are wide enough already, and it keeps its 16px padding. */
@media (max-width: 699px) {
	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__body,
	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer {
		padding-inline: 9px !important;
	}
}

/* Desktop keeps the approved related grid exactly as it was. */
@media (min-width: 821px) {
	body.single-product .etebar-pdp__related .etebar-pdp__browse-item {
		display: none;
	}
}

/* ---------- Mobile sticky purchase bar ---------- */

body.single-product .etebar-pdp__sticky {
	position: fixed;
	inset-inline: 0;
	bottom: 0;
	z-index: 60;
	padding-bottom: env(safe-area-inset-bottom, 0px);
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	background: var(--pdp-navy);
	box-shadow: 0 -10px 30px -18px rgba(8, 27, 53, 0.85);
	transform: translateY(100%);
	transition: transform 220ms ease;
}

body.single-product .etebar-pdp__sticky.is-visible {
	transform: translateY(0);
}

body.single-product .etebar-pdp__sticky[hidden] {
	display: none;
}

body.single-product .etebar-pdp__sticky-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	height: 64px;
	padding-inline: clamp(14px, 4vw, 20px);
}

body.single-product .etebar-pdp__sticky-text {
	display: grid;
	gap: 1px;
	min-width: 0;
}

body.single-product .etebar-pdp__sticky-text strong {
	overflow: hidden;
	color: rgba(255, 255, 255, 0.82);
	font-family: var(--etebar-sans);
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	text-overflow: ellipsis;
}

body.single-product .etebar-pdp__sticky-price {
	color: #fff;
	font-family: var(--etebar-serif);
	font-size: 19px;
	font-weight: 700;
	line-height: 1.15;
}

body.single-product .etebar-pdp__sticky-price del,
body.single-product .etebar-pdp__sticky-price ins {
	background: none;
	text-decoration: none;
}

body.single-product .etebar-pdp__sticky-button {
	min-height: 44px;
	padding-inline: 22px;
	border: 0;
	border-radius: 8px;
	/* Same fill and label colour as the inline primary above, so the button does
	   not change identity when the bar takes over. */
	background: #c08528;
	color: var(--etebar-charcoal);
	font-family: var(--etebar-sans);
	font-size: 15.5px;
	font-weight: 700;
	white-space: nowrap;
	cursor: pointer;
}

body.single-product .etebar-pdp__sticky-button:hover {
	background: #a9731e;
}

body.single-product .etebar-pdp__sticky-button:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 2px;
}

@media (min-width: 821px) {
	body.single-product .etebar-pdp__sticky {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.single-product .etebar-pdp__sticky {
		transition: none;
	}
}

/* ---------- Mobile readability of the supporting copy ---------- */

/* On a phone the supporting text carried the desktop sizes, which read as fine
   print next to a 36-41px title. These sizes lift the secondary areas by
   ~1px each with a little more line-height and row spacing, and are scoped to
   the mobile breakpoint so the desktop measure is unchanged. The title and the
   price are deliberately left alone: they are already the strong pair. */
@media (max-width: 820px) {
	body.single-product .etebar-pdp__facts {
		gap: 14px;
	}

	body.single-product .etebar-pdp__facts li,
	body.single-product .etebar-pdp__facts li:nth-child(n),
	body.single-product .etebar-pdp__facts li:last-child {
		font-size: 16.5px;
		line-height: 1.55;
	}

	body.single-product .etebar-pdp__proof label strong {
		font-size: 17px;
	}

	body.single-product .etebar-pdp__proof label small {
		font-size: 16px;
		line-height: 1.6;
	}

	/* Only the muted question grows. The link keeps its 15.5px: it is already
	   the bold navy line here, and at 360px a larger size wraps it onto a
	   second line, which strands the arrow on its own at the far right. */
	body.single-product .etebar-pdp__secondary {
		gap: 9px;
		font-size: 16px;
		line-height: 1.55;
	}

	body.single-product .etebar-pdp__details--compact h2.etebar-pdp__eyebrow {
		font-size: 13.5px;
	}

	body.single-product .etebar-pdp__details .etebar-pdp__specs dt {
		font-size: 15px;
	}

	body.single-product .etebar-pdp__details .etebar-pdp__specs dd {
		font-size: 16.5px;
		line-height: 1.55;
	}

	/* The bar has 64px of height for a two-line stack, so the name can take the
	   extra 1.5px without the rows touching. */
	body.single-product .etebar-pdp__sticky-text {
		gap: 2px;
	}

	body.single-product .etebar-pdp__sticky-text strong {
		font-size: 14.5px;
	}

	body.single-product .etebar-pdp__sticky-price {
		font-size: 20px;
	}

	/* ---------- Mobile primary-purchase CTA ---------- */

	/* Both buy buttons take the approved desktop gold with white text. Scoped
	   here rather than changed on the base rules so the desktop product page
	   keeps rendering exactly what it rendered before. Geometry, radius and
	   shadow are inherited untouched — only fill and label colour change. */
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button {
		background: var(--etebar-mobile-cta);
		color: var(--etebar-mobile-cta-ink);
	}

	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:hover {
		background: var(--etebar-mobile-cta-hover);
	}

	body.single-product .etebar-pdp__sticky-button {
		background: var(--etebar-mobile-cta);
		color: var(--etebar-mobile-cta-ink);
	}

	body.single-product .etebar-pdp__sticky-button:hover {
		background: var(--etebar-mobile-cta-hover);
	}

	/* The four rules above take their label colour from
	   --etebar-mobile-cta-ink, whose root value is #fff. On the mobile gold
	   that is 2.11:1, and it silently overrode the deliberate desktop decision
	   recorded further up this file, where the same two controls were set to a
	   dark ink precisely because "white on the same fill does not reach the
	   normal-text bar".

	   The gold fill is the purchase signal and is kept exactly as it is; only
	   the ink changes, to the existing --etebar-navy. That measures 6.94:1 on
	   the #d2ae5d fill and 5.59:1 on the #c29a48 hover fill, both above the
	   4.5:1 AA floor for normal text.

	   Re-declared as a token on these two controls rather than as a `color`
	   override: the declarations above have no !important, so changing the
	   value they resolve needs no !important either, and the scope stays on
	   the product page. The catalog cards set the same token on their own
	   containers and are untouched by this. The sticky button's cart glyph
	   paints with `background-color: currentColor`, so it follows the label. */
	body.single-product .etebar-pdp__purchase,
	body.single-product .etebar-pdp__sticky-button {
		--etebar-mobile-cta-ink: var(--etebar-navy);
	}

	/* The desktop rules that pin the ink for :hover and :focus-visible carry a
	   pseudo-class, so they out-specify the base mobile rule and would repaint
	   the label charcoal the moment the button is hovered or focused — the
	   label would visibly change colour between states. These keep the one ink
	   across every state at mobile widths. They are inside this media query,
	   so the desktop product page keeps its own charcoal exactly as it is. */
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:hover,
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:focus-visible,
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:active,
	body.single-product .etebar-pdp__sticky-button:hover,
	body.single-product .etebar-pdp__sticky-button:focus-visible,
	body.single-product .etebar-pdp__sticky-button:active {
		background: var(--etebar-mobile-cta-hover);
		color: var(--etebar-mobile-cta-ink);
	}

	/* Arabic script is cursive, so the Latin tracking these buttons inherit
	   pulls joined letterforms apart. Scoped to the two PDP purchase controls,
	   in RTL only — deliberately not a global button reset. */
	html[dir="rtl"] body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button,
	html[dir="rtl"] body.single-product .etebar-pdp__sticky-button {
		letter-spacing: normal;
	}

	/* ---------- Mobile readability pass 3 ---------- */

	/* The title, the price and the "You may also need" heading are deliberately
	   absent from everything below: they are already the strong voices and were
	   signed off at their current sizes. Everything else on the page still read
	   as fine print on a real phone, so this pass moves the supporting copy up
	   by a visible step rather than another fraction of a pixel. */

	/* Breadcrumb: readable but still secondary. Line-height is pulled back from
	   1.7 to 1.45 so the extra character size does not also buy extra height. */
	body.single-product .etebar-pdp__breadcrumb,
	body.single-product .etebar-pdp__breadcrumb a {
		font-size: 19px;
		line-height: 1.45;
	}

	/* Category eyebrow. Tracking comes down from 0.13em to 0.065em: at the
	   larger size the original spacing pulled the words apart faster than the
	   glyphs grew, which reads worse rather than better, and at 16px the full
	   "FOOD & DAILY ESSENTIALS" needs the width back to hold one line. */
	body.single-product .etebar-pdp__buy .etebar-pdp__eyebrow {
		font-size: 17.5px;
		letter-spacing: 0.055em;
	}

	body.single-product .etebar-pdp__quantity-label {
		font-size: 17.5px;
		letter-spacing: 0.045em;
	}

	/* Selector matches the base rule's specificity (`form.cart .quantity`);
	   a shorter one loses to it regardless of source order. */
	body.single-product .etebar-pdp__purchase form.cart .quantity input.qty {
		font-size: 23px;
	}

	/* Trust rows. Fluid rather than flat: the "Estimated 2-3 working days after
	   successful payment" line is the longest string in the column, so 360px
	   takes 18.5px and 390px upwards gets the full 20px. */
	body.single-product .etebar-pdp__facts li,
	body.single-product .etebar-pdp__facts li:nth-child(n),
	body.single-product .etebar-pdp__facts li:last-child {
		font-size: clamp(20px, 5.5vw, 21.5px);
		line-height: 1.5;
	}

	body.single-product .etebar-pdp__proof label strong {
		font-size: 21.5px;
	}

	body.single-product .etebar-pdp__proof label small {
		font-size: 20px;
		line-height: 1.5;
	}

	body.single-product .etebar-pdp__secondary {
		font-size: 20px;
		line-height: 1.5;
	}

	/* At this size the link no longer fits one 360px line. Wrapping is fine, but
	   as an inline-flex row the arrow became a second flex item and parked
	   itself at the far right, detached from the words. Going back to inline
	   flow keeps the arrow tied to the last word on whichever line it lands. */
	body.single-product .etebar-pdp__secondary a {
		display: inline;
		font-size: 21.5px;
		line-height: 1.5;
	}

	body.single-product .etebar-pdp__secondary a span {
		margin-inline-start: 6px;
	}

	/* Details. Sizes only — the row padding is left alone so the section keeps
	   its compact rhythm. dt and dd are now within 1px of each other, which is
	   what stops the pair reading as a tiny metadata footnote. */
	body.single-product .etebar-pdp__details--compact h2.etebar-pdp__eyebrow {
		font-size: 17.5px;
		letter-spacing: 0.055em;
	}

	body.single-product .etebar-pdp__details .etebar-pdp__specs dt {
		font-size: 19.5px;
		line-height: 1.45;
	}

	body.single-product .etebar-pdp__details .etebar-pdp__specs dd {
		font-size: 20.5px;
		line-height: 1.45;
	}

	/* Related cards: the text inside grows, the rail and card geometry do not. */
	body.single-product .etebar-pdp__related .related.products li.product .woocommerce-loop-product__title {
		font-size: 19px !important;
		line-height: 1.3 !important;
	}

	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .price {
		font-size: 22.5px !important;
	}

	/* The label does not fit one line inside a rail card at this size, so nowrap
	   is dropped and the button is allowed to run to two lines instead of being
	   clipped. Horizontal padding is cut to 4px and the tracking to -0.005em so
	   "Add to" and "cart" each stay whole on their line at 360px; auto height
	   with a floor keeps one- and two-line cards tidy. */
	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer .button,
	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		height: auto !important;
		min-height: 52px !important;
		/* 2px, not 4px: at 390px the 18px label measures 105px against 109px of
		   button, and those last two pixels each side are the difference
		   between one line and two. 360px is too narrow either way and keeps
		   its tidy two-line label. */
		padding: 8px 2px !important;
		font-size: 18px !important;
		line-height: 1.25 !important;
		letter-spacing: -0.005em !important;
		white-space: normal !important;
		text-align: center;
	}

	/* ---------- Related card image stage ---------- */

	/* Measured, not guessed. Every catalog image is a 1254x1254 square with the
	   product normalised to the same optical height and centred, so the file
	   itself carries a white band top and bottom. Across the whole catalog the
	   SMALLEST of those bands is 7.92% of the image (most are 9.6-25%), and the
	   CSS was already doing all it could: the picture filled the stage's content
	   box exactly, 113px inside 113px. The empty space was baked into the asset,
	   not added by the layout.

	   So the stage crops that band instead of displaying it. The box is set a
	   little wider than tall and the image covers it, which trims ~6.5% off the
	   top and ~6.5% off the bottom — comfortably inside the 7.92% floor, so no
	   product is ever touched — while the full width is always shown, so wide
	   packages stay whole. cover preserves the aspect ratio, so nothing is
	   distorted, and no transform, negative margin or overflow trick is used.
	   The ratio is applied to the border box, so the 3px padding is accounted
	   for in the number above rather than eating into the safety margin.

	   The padding also comes down from 10px to 3px. The rendered product scales
	   with the stage's content WIDTH, so those seven pixels each side are what
	   actually buy a bigger package. Net effect per card: the product grows
	   ~13% and now fills ~97% of the stage height instead of 83%, and the stage
	   is ~16px shorter, so the card gets tighter rather than taller. */
	body.single-product .etebar-pdp__related .related.products .etebar-shop-card__image {
		/* 100/87.5 -> ~6.5% trimmed from each of the top and bottom bands. */
		aspect-ratio: 100 / 87.5;
		padding: 3px;
	}

	body.single-product .etebar-pdp__related .related.products li.product .etebar-shop-card__image img {
		width: 100% !important;
		height: 100% !important;
		max-width: 100%;
		max-height: 100%;
		object-fit: cover;
		object-position: center;
	}

	/* Sticky bar supporting text. */
	body.single-product .etebar-pdp__sticky-text strong {
		font-size: 19px;
	}

	body.single-product .etebar-pdp__sticky-price {
		font-size: 23px;
	}

	/* ---------- Cart icon on both buy buttons ---------- */

	/* Sits after the label via `order`, which also mirrors correctly in RTL:
	   the flex row reverses, so the icon lands at the line's end either way.
	   ::before is used because ::after carries the suppressed WooCommerce
	   spinner and must stay empty. */
	/* The label is the clearly dominant element on this control — fluid so the
	   longest translations still fit the 360px button, and paired with an icon
	   that stays a companion rather than a rival. Colour, gold fill and white
	   ink are the approved ones, untouched.

	   The type stays where it was signed off; only the box around it comes in.
	   At 68px the button had grown into a slab: the label sat in the middle of
	   far more gold than it needed, which read as an oversized button rather
	   than as emphasis. 60px still clears the 48px touch target with room to
	   spare and leaves 18px of breathing space above and below a 24px label. */
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button,
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:hover,
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:focus-visible,
	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button:active {
		gap: 10px;
		height: 60px;
		min-height: 60px;
		padding-inline: 12px;
		font-size: clamp(21.5px, 6.15vw, 24px);
		font-weight: 700;
		line-height: 1;
	}

	body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .button.single_add_to_cart_button::before,
	body.single-product .etebar-pdp__sticky-button::before {
		flex: 0 0 22px;
		order: 1;
		width: 22px;
		height: 22px;
		background-color: currentColor;
		content: "";
		-webkit-mask: var(--etebar-cart-icon) center / 22px 22px no-repeat;
		mask: var(--etebar-cart-icon) center / 22px 22px no-repeat;
	}

	body.single-product .etebar-pdp__sticky-button {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 9px;
		min-height: 52px;
		padding-inline: 15px;
		font-size: 21px;
		font-weight: 700;
		line-height: 1;
	}

	/* ---------- Footer body copy ---------- */

	/* Scoped to this page rather than to the mobile footer generally: the footer
	   markup is shared, and a global rule would have changed the homepage, which
	   this task is not allowed to touch. Layout, columns, logo and colours are
	   untouched — sizes only. */
	body.single-product .site-footer p {
		font-size: 18.5px;
	}

	body.single-product .site-footer__heading {
		font-size: 16.5px;
	}

	body.single-product .site-footer a {
		font-size: 18.5px;
	}
}


/* ==========================================================================
   Mobile catalog refinement (Shop / All Products and product-category archives)
   ==========================================================================

   Scope: the three catalog body classes only, and only at <= 820px. The desktop
   catalog grid, card and toolbar are deliberately untouched — the one shared
   change in this pass is a PHP data fix (the default product category was being
   excluded from every category navigation), which is a correctness bug rather
   than a visual change.

   The homepage is never matched here: its Everyday Essentials rail is a
   different component (`.mobile-essential-item`), and every selector below is
   prefixed with a catalog body class. */

@media (max-width: 820px) {

	/* ---------- 2. One coherent card surface ---------- */

	/* The seam came from two places: a border on the trailing edge of the image
	   and a white image panel sitting against a cream body. The card is now one
	   white surface with a single outer border and radius, so image, title,
	   price and button all sit on the same ground. */
	body.woocommerce-shop.woocommerce ul.products li.product.etebar-shop-card,
	body.woocommerce-shop.woocommerce-page ul.products li.product.etebar-shop-card,
	body.tax-product_cat.woocommerce ul.products li.product.etebar-shop-card,
	body.tax-product_cat.woocommerce-page ul.products li.product.etebar-shop-card,
	body.post-type-archive-product.woocommerce ul.products li.product.etebar-shop-card,
	body.post-type-archive-product.woocommerce-page ul.products li.product.etebar-shop-card {
		overflow: hidden;
		border: 1px solid var(--etebar-border);
		border-radius: 14px;
		background: #fff;
		box-shadow: none;
	}

	/* ---------- 3. Image stage ---------- */

	/* The raw catalog files are 1254px squares with the package centred on a
	   white sweep. A 9:10 stage suits the mostly upright packs; `cover` trims
	   5% from each side of the square source, which remains inside the
	   narrowest measured side margin (9.49%). The complete package therefore
	   stays visible, including the wide toothpaste and sanitary-pad packs. */
	body.woocommerce-shop .etebar-shop-card__image,
	body.tax-product_cat .etebar-shop-card__image,
	body.post-type-archive-product .etebar-shop-card__image {
		display: grid;
		place-items: center;
		width: 100%;
		aspect-ratio: 9 / 10;
		padding: 3px;
		border: 0;
		background: #fff;
		box-sizing: border-box;
	}

	/* Outrank the older WooCommerce card-image rule that sets `object-fit:
	   contain`, so `cover` wins without adding another !important declaration. */
	body.woocommerce-shop.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__image img,
	body.tax-product_cat.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__image img,
	body.post-type-archive-product.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__image img {
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
		max-width: 100%;
		max-height: 100%;
		padding: 0 !important;
		border: 0 !important;
		/* This is the seam. */
		border-inline-end: 0 !important;
		object-fit: cover;
		object-position: center;
	}

	body.woocommerce-shop .etebar-shop-card__image-label,
	body.tax-product_cat .etebar-shop-card__image-label,
	body.post-type-archive-product .etebar-shop-card__image-label {
		display: none;
	}

	/* ---------- 4. Card internals: category, title, price, button ---------- */

	body.woocommerce-shop .etebar-shop-card__body,
	body.tax-product_cat .etebar-shop-card__body,
	body.post-type-archive-product .etebar-shop-card__body {
		display: flex;
		min-width: 0;
		flex-direction: column;
		gap: 3px;
		padding: 8px 11px 0 !important;
		border: 0;
		background: transparent;
		box-sizing: border-box;
	}

	/* The active category is already explicit in the chip rail. Repeating it on
	   every mobile card weakens the product name without adding information. */
	body.woocommerce-shop .etebar-shop-card__type,
	body.tax-product_cat .etebar-shop-card__type,
	body.post-type-archive-product .etebar-shop-card__type {
		display: none;
	}

	/* Sans, not serif: the shop was the only card system on the site setting
	   product names in the serif, which made it read as a different generation
	   of the design. This matches the related-card and homepage treatment. */
	body.woocommerce-shop .woocommerce-loop-product__title,
	body.tax-product_cat .woocommerce-loop-product__title,
	body.post-type-archive-product .woocommerce-loop-product__title {
		margin: 0 !important;
		padding: 0 !important;
		font-family: var(--etebar-sans) !important;
		font-size: 19px !important;
		font-weight: 700 !important;
		line-height: 1.25 !important;
		letter-spacing: 0;
	}

	body.woocommerce-shop .woocommerce-loop-product__title a,
	body.tax-product_cat .woocommerce-loop-product__title a,
	body.post-type-archive-product .woocommerce-loop-product__title a {
		color: var(--etebar-navy);
		text-decoration: none;
	}

	/* Price keeps the serif role it shares with the product page. `margin-top:
	   auto` is dropped: it was what pushed the price to the bottom of the card
	   and opened the dead gap under the title. */
	body.woocommerce-shop .etebar-shop-card__body .price,
	body.woocommerce-shop ul.products li.product .price,
	body.tax-product_cat .etebar-shop-card__body .price,
	body.tax-product_cat ul.products li.product .price,
	body.post-type-archive-product .etebar-shop-card__body .price,
	body.post-type-archive-product ul.products li.product .price {
		margin: 2px 0 0 !important;
		padding-top: 0 !important;
		color: var(--etebar-navy);
		font-family: var(--etebar-serif) !important;
		font-size: 21.5px !important;
		font-weight: 700 !important;
		line-height: 1.15;
	}

	/* The live footer is a grid, not the flex row the base rule suggests, and
	   its first column collapsed to zero width — which is what clipped the
	   price down to a sliver of the "£". Declaring flex here is what actually
	   gives the price a box. */
	body.woocommerce-shop .etebar-shop-card__footer,
	body.tax-product_cat .etebar-shop-card__footer,
	body.post-type-archive-product .etebar-shop-card__footer {
		display: flex !important;
		min-width: 0;
		grid-template-columns: none !important;
		align-items: center;
		justify-content: space-between;
		gap: 6px;
		margin-top: auto;
		padding: 6px 11px 8px !important;
		border: 0;
		background: transparent;
		box-sizing: border-box;
	}

	body.woocommerce-shop .etebar-shop-card__footer .price,
	body.tax-product_cat .etebar-shop-card__footer .price,
	body.post-type-archive-product .etebar-shop-card__footer .price {
		flex: 0 1 auto;
		min-width: 0;
	}

	/* The approved mobile CTA pair: gold fill, white label, white cart glyph
	   drawn from the shared --etebar-cart-icon mask rather than a chevron or an
	   emoji. Compact on purpose — this button repeats once per card. */
	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		gap: 6px;
		width: 78px !important;
		height: 50px !important;
		min-width: 78px !important;
		min-height: 50px !important;
		flex: 0 0 78px;
		margin: 0 !important;
		padding: 8px 3px !important;
		border: 1px solid var(--etebar-mobile-cta) !important;
		border-radius: 9px !important;
		background: var(--etebar-mobile-cta) !important;
		color: var(--etebar-mobile-cta-ink) !important;
		font-family: var(--etebar-sans) !important;
		font-size: 16.5px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
		text-transform: none !important;
		white-space: nowrap !important;
		text-align: center;
		box-shadow: none !important;
	}

	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover,
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover,
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover {
		background: var(--etebar-mobile-cta-hover) !important;
		border-color: var(--etebar-mobile-cta-hover) !important;
	}

	/* ::before carries the glyph; ::after is left alone because that is the
	   pseudo-element the WooCommerce spinner suppression relies on. `order`
	   places the icon after the label and mirrors correctly in RTL. */
	body.woocommerce-shop .etebar-shop-card__footer .button::before,
	body.tax-product_cat .etebar-shop-card__footer .button::before,
	body.post-type-archive-product .etebar-shop-card__footer .button::before {
		flex: 0 0 18px;
		order: 1;
		width: 18px;
		height: 18px;
		background-color: currentColor;
		content: "";
		-webkit-mask: var(--etebar-cart-icon) center / 18px 18px no-repeat;
		mask: var(--etebar-cart-icon) center / 18px 18px no-repeat;
	}

	/* The Dari verb is wider than the English and Pashto short labels. Use the
	   top of the approved width range and tighten the two local gaps, so neither
	   the label nor a 360px price is squeezed. */
	html[lang="fa-AF"] body.woocommerce-shop .etebar-shop-card__footer,
	html[lang="fa-AF"] body.tax-product_cat .etebar-shop-card__footer,
	html[lang="fa-AF"] body.post-type-archive-product .etebar-shop-card__footer {
		gap: 3px;
	}

	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		gap: 3px;
		width: 82px !important;
		min-width: 82px !important;
		flex-basis: 82px;
	}

	/* Keep the compact control in place after AJAX completion and replace its
	   cart glyph with one clear checkmark. The shared confirmation toast retains
	   the route to the cart, so WooCommerce's injected duplicate link is hidden
	   from this tight purchase row only. */
	body.woocommerce-shop .etebar-shop-card__footer .button.is-added::before,
	body.tax-product_cat .etebar-shop-card__footer .button.is-added::before,
	body.post-type-archive-product .etebar-shop-card__footer .button.is-added::before {
		background: transparent;
		content: "✓";
		-webkit-mask: none;
		mask: none;
	}

	body.woocommerce-shop .etebar-shop-card__footer .button.is-added::after,
	body.tax-product_cat .etebar-shop-card__footer .button.is-added::after,
	body.post-type-archive-product .etebar-shop-card__footer .button.is-added::after,
	body.woocommerce-shop .etebar-shop-card__footer .added_to_cart,
	body.tax-product_cat .etebar-shop-card__footer .added_to_cart,
	body.post-type-archive-product .etebar-shop-card__footer .added_to_cart {
		display: none !important;
		content: none !important;
	}

	/* Same stray WooCommerce `.loading` glyph the product page already
	   suppresses. `.is-added` keeps its own inline confirmation. */
	body.woocommerce-shop .etebar-shop-card__footer .button:not(.is-added)::after,
	body.tax-product_cat .etebar-shop-card__footer .button:not(.is-added)::after,
	body.post-type-archive-product .etebar-shop-card__footer .button:not(.is-added)::after {
		display: none !important;
		content: none !important;
	}

	body.woocommerce-shop .etebar-shop-card__footer .button.loading,
	body.tax-product_cat .etebar-shop-card__footer .button.loading,
	body.post-type-archive-product .etebar-shop-card__footer .button.loading {
		opacity: 0.75 !important;
	}

	/* ---------- 5. Category chip rail ---------- */

	/* Two controls of different widths, one of them wrapping to two lines at
	   14px, are replaced by one scroll rail of equal-height chips. The numeric
	   "01"/"02" visual each link carries is decoration for the desktop list and
	   is not wanted in a chip. */
	body.woocommerce-shop .commerce-category-nav--shop ul,
	body.tax-product_cat .commerce-category-nav--shop ul,
	body.post-type-archive-product .commerce-category-nav--shop ul {
		display: flex;
		flex-wrap: nowrap;
		gap: 8px;
		width: 100%;
		margin: 0;
		padding: 2px 0 6px;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scrollbar-width: none;
		list-style: none;
		-webkit-overflow-scrolling: touch;
	}

	body.woocommerce-shop .commerce-category-nav--shop ul::-webkit-scrollbar,
	body.tax-product_cat .commerce-category-nav--shop ul::-webkit-scrollbar,
	body.post-type-archive-product .commerce-category-nav--shop ul::-webkit-scrollbar {
		display: none;
	}

	/* `!important` here answers two existing <=700px rules that size these for
	   the old stacked layout: `flex: 0 0 78% !important` on the list item and
	   `width: 100%` on both item and link. Left alone, every chip claims a full
	   row and the rail becomes a vertical stack again. */
	body.woocommerce-shop .commerce-category-nav--shop li,
	body.tax-product_cat .commerce-category-nav--shop li,
	body.post-type-archive-product .commerce-category-nav--shop li {
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 0;
		margin: 0;
		padding: 0;
		grid-column: auto !important;
	}

	body.woocommerce-shop .commerce-category-nav--shop a,
	body.tax-product_cat .commerce-category-nav--shop a,
	body.post-type-archive-product .commerce-category-nav--shop a {
		display: inline-flex;
		width: auto !important;
		min-height: 46px;
		align-items: center;
		justify-content: center;
		gap: 0;
		padding: 0 17px;
		border: 1px solid var(--etebar-navy);
		border-radius: 999px;
		background: #fff;
		color: var(--etebar-navy);
		font-family: var(--etebar-sans);
		font-size: 16.5px;
		font-weight: 650;
		line-height: 1.15;
		white-space: nowrap;
		text-decoration: none;
	}

	body.woocommerce-shop .commerce-category-nav--shop a[aria-current="page"],
	body.tax-product_cat .commerce-category-nav--shop a[aria-current="page"],
	body.post-type-archive-product .commerce-category-nav--shop a[aria-current="page"] {
		border-color: var(--etebar-navy);
		background: var(--etebar-navy);
		color: #fff;
	}

	body.woocommerce-shop .commerce-category-nav--shop a strong,
	body.tax-product_cat .commerce-category-nav--shop a strong,
	body.post-type-archive-product .commerce-category-nav--shop a strong {
		font-family: inherit;
		font-size: inherit;
		font-weight: inherit;
		letter-spacing: 0;
	}

	body.woocommerce-shop .commerce-category-nav--shop a > span,
	body.tax-product_cat .commerce-category-nav--shop a > span,
	body.post-type-archive-product .commerce-category-nav--shop a > span {
		display: none;
	}

	body.woocommerce-shop .catalog-discovery__intro,
	body.tax-product_cat .catalog-discovery__intro,
	body.post-type-archive-product .catalog-discovery__intro {
		display: none;
	}

	/* ---------- 6. Results and sorting ---------- */

	body.woocommerce-shop .catalog-toolbar,
	body.tax-product_cat .catalog-toolbar,
	body.post-type-archive-product .catalog-toolbar {
		gap: 10px;
	}

	/* Demoted: this is supporting information, not a heading. */
	body.woocommerce-shop.woocommerce .catalog-toolbar .woocommerce-result-count,
	body.tax-product_cat.woocommerce .catalog-toolbar .woocommerce-result-count,
	body.post-type-archive-product.woocommerce .catalog-toolbar .woocommerce-result-count {
		margin: 0;
		color: var(--etebar-gray);
		font-size: 16px;
		font-weight: 500;
	}

	/* The real WooCommerce select, restyled — no replacement control is built,
	   so the native picker and its keyboard behaviour stay intact. */
	body.woocommerce-shop.woocommerce .catalog-toolbar .woocommerce-ordering select,
	body.tax-product_cat.woocommerce .catalog-toolbar .woocommerce-ordering select,
	body.post-type-archive-product.woocommerce .catalog-toolbar .woocommerce-ordering select {
		width: 100%;
		min-height: 48px;
		padding: 0 42px 0 15px;
		border: 1px solid color-mix(in srgb, var(--etebar-navy) 28%, transparent);
		border-radius: 10px;
		background-color: #fff;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b2340' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-position: right 14px center;
		background-size: 18px 18px;
		color: var(--etebar-navy);
		font-family: var(--etebar-sans);
		font-size: 16.5px;
		font-weight: 600;
		appearance: none;
		-webkit-appearance: none;
	}

	html[dir="rtl"] body.woocommerce-shop.woocommerce .catalog-toolbar .woocommerce-ordering select,
	html[dir="rtl"] body.tax-product_cat.woocommerce .catalog-toolbar .woocommerce-ordering select,
	html[dir="rtl"] body.post-type-archive-product.woocommerce .catalog-toolbar .woocommerce-ordering select {
		padding: 0 15px 0 42px;
		background-position: left 14px center;
	}

	/* ---------- 7. Load more ---------- */

	/* This is the primary way to keep browsing, and it was quieter than the
	   gold card buttons above it and the request block below it. */
	body.woocommerce-shop .etebar-shop-load-more,
	body.tax-product_cat .etebar-shop-load-more,
	body.post-type-archive-product .etebar-shop-load-more {
		margin: 24px 0 8px;
		gap: 8px;
	}

	body.woocommerce-shop .etebar-shop-load-more .button,
	body.tax-product_cat .etebar-shop-load-more .button,
	body.post-type-archive-product .etebar-shop-load-more .button {
		width: 100%;
		min-width: 0;
		min-height: 56px;
		border-radius: 11px;
		font-size: 18.5px;
		font-weight: 700;
	}

	body.woocommerce-shop .etebar-shop-load-more p,
	body.tax-product_cat .etebar-shop-load-more p,
	body.post-type-archive-product .etebar-shop-load-more p {
		font-size: 15.5px;
	}

	/* ---------- 8. Special Request stays second ---------- */

	/* Copy and role are unchanged; only the navy banner comes down, because at
	   96px of near-empty navy it carried more weight than the catalog's own
	   continue-browsing control. */
	body.woocommerce-shop .etebar-request-card--ending .etebar-request-card__visual,
	body.tax-product_cat .etebar-request-card--ending .etebar-request-card__visual,
	body.post-type-archive-product .etebar-request-card--ending .etebar-request-card__visual {
		min-height: 64px;
	}

	body.woocommerce-shop .etebar-request-card--ending .etebar-request-card__visual svg,
	body.tax-product_cat .etebar-request-card--ending .etebar-request-card__visual svg,
	body.post-type-archive-product .etebar-request-card--ending .etebar-request-card__visual svg {
		width: 42px;
		height: 42px;
	}

	body.woocommerce-shop .etebar-request-card--ending,
	body.tax-product_cat .etebar-request-card--ending,
	body.post-type-archive-product .etebar-request-card--ending {
		margin-top: 26px;
	}

	body.woocommerce-shop .etebar-request-card--ending .etebar-request-card__action,
	body.tax-product_cat .etebar-request-card--ending .etebar-request-card__action,
	body.post-type-archive-product .etebar-request-card--ending .etebar-request-card__action {
		font-size: 16.5px;
	}

	/* ---------- 9. Footer, matched to the product page's readable scale ---------- */

	/* Structure, columns, logo and colours are untouched — sizes only, and only
	   on the catalog pages this pass covers. The homepage footer is left as it
	   is on purpose. */
	body.woocommerce-shop .site-footer p,
	body.tax-product_cat .site-footer p,
	body.post-type-archive-product .site-footer p {
		font-size: 17.5px;
	}

	body.woocommerce-shop .site-footer__heading,
	body.tax-product_cat .site-footer__heading,
	body.post-type-archive-product .site-footer__heading {
		font-size: 16px;
	}

	body.woocommerce-shop .site-footer a,
	body.tax-product_cat .site-footer a,
	body.post-type-archive-product .site-footer a {
		font-size: 17.5px;
	}

	/* ---------- 10. Intro spacing ---------- */

	/* The catalog opened on 124px of empty cream before its own heading. The
	   header is sticky, so it already occupies flow and needs no clearance —
	   and both the homepage and the product page open with `padding-top: 0`.
	   This band was specific to the catalog and did nothing. */
	body.woocommerce-shop .site-main,
	body.tax-product_cat .site-main,
	body.post-type-archive-product .site-main {
		padding-top: 26px;
	}

	/* The heading keeps the 39px it shares with the product title. Only the
	   body copy is lifted to the mobile reading scale. */
	body.woocommerce-shop .etebar-shop-intro,
	body.tax-product_cat .etebar-shop-intro,
	body.post-type-archive-product .etebar-shop-intro {
		font-size: 17.5px;
		line-height: 1.55;
	}
}

/* ---------- 1. Two-up vertical cards down to the smallest phone ---------- */

/* Below 560px the catalog dropped to a single column and rebuilt every card as
   a horizontal image|content grid. That layout produced the two problems this
   pass exists to remove: a hard vertical seam between a white image panel and a
   cream body, and a tall dead gap between the title and a price/button pair
   crushed at the bottom. Phones now get the same two-up vertical card the
   560-820px range already used, which also halves the page length and makes
   each product image larger rather than smaller. */
@media (max-width: 559px) {
	body.woocommerce-shop.woocommerce ul.products,
	body.woocommerce-shop.woocommerce-page ul.products,
	body.tax-product_cat.woocommerce ul.products,
	body.tax-product_cat.woocommerce-page ul.products,
	body.post-type-archive-product.woocommerce ul.products,
	body.post-type-archive-product.woocommerce-page ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}

	/* Unwind the horizontal card: back to a simple column, and drop the 170px
	   floor that only existed to give the side-by-side layout its height. */
	body.woocommerce-shop.woocommerce ul.products li.product.etebar-shop-card,
	body.woocommerce-shop.woocommerce-page ul.products li.product.etebar-shop-card,
	body.tax-product_cat.woocommerce ul.products li.product.etebar-shop-card,
	body.tax-product_cat.woocommerce-page ul.products li.product.etebar-shop-card,
	body.post-type-archive-product.woocommerce ul.products li.product.etebar-shop-card,
	body.post-type-archive-product.woocommerce-page ul.products li.product.etebar-shop-card {
		display: flex !important;
		flex-direction: column;
		grid-template-columns: none !important;
		grid-template-rows: none !important;
		min-height: 0 !important;
	}

	body.woocommerce-shop .etebar-shop-card__image,
	body.tax-product_cat .etebar-shop-card__image,
	body.post-type-archive-product .etebar-shop-card__image {
		grid-row: auto !important;
		min-height: 0 !important;
	}

	body.woocommerce-shop .etebar-shop-card__body,
	body.woocommerce-shop .etebar-shop-card__footer,
	body.tax-product_cat .etebar-shop-card__body,
	body.tax-product_cat .etebar-shop-card__footer,
	body.post-type-archive-product .etebar-shop-card__body,
	body.post-type-archive-product .etebar-shop-card__footer {
		grid-column: auto !important;
	}

}

/* At the narrowest supported phone width, the fixed 78px purchase button and
   the widest current GBP price leave room for matched 10px visual insets and
   a clean gap without shrinking either value. */
@media (max-width: 374px) {
	body.woocommerce-shop .etebar-shop-card__body,
	body.tax-product_cat .etebar-shop-card__body,
	body.post-type-archive-product .etebar-shop-card__body {
		padding-inline: 9px !important;
	}

	body.woocommerce-shop .etebar-shop-card__footer,
	body.tax-product_cat .etebar-shop-card__footer,
	body.post-type-archive-product .etebar-shop-card__footer {
		gap: 4px;
		padding-inline: 9px !important;
	}
}

/* ---------- Bundle purchase row ----------

   The compact row above was sized when £58.00 was the widest catalog price.
   £142.00 and £259.00 are two glyphs wider (69.9px of ink against 59.1px), and
   the row only offered 60px at 360px: the bundle price was clipped by 10px and
   ran under the button, and in Dari the "£" was lost outright. Only the three
   bundle cards are addressed, through the `product_cat-bundles` class
   WooCommerce already puts on the card, so the generic cards keep the row they
   have. The approved safe zone is untouched -- the 9px/11px footer inset and
   the shared left alignment of title and price stay exactly as they are, and
   the room comes from the slack inside the fixed button instead.

   Everything here is below the desktop breakpoint; the desktop Shop row keeps
   its own geometry, typography and button width. */

@media (max-width: 820px) {

	/* 21.5px -> 20px: a 7% ease, still the same serif price a step above the
	   card's body text and clearly larger than the label beneath it. */
	body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .price,
	body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .price,
	body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .price {
		font-size: 20px !important;
	}

	/* 78px carried roughly 12px of slack around a 35.4px English label and its
	   18px cart glyph. 72px keeps the glyph, the label and real padding, and
	   hands the recovered width to the price. */
	body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		width: 72px !important;
		min-width: 72px !important;
		flex-basis: 72px;
		gap: 4px;
	}

	/* The Pashto label is 52.8px against the English 35.4px. Tightening the
	   internal gap and the glyph by the same amount the button lost keeps the
	   label exactly as snug as it already was, rather than any snugger. */
	html[lang="ps-AF"] body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="ps-AF"] body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="ps-AF"] body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="ps-AF"] body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="ps-AF"] body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="ps-AF"] body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		gap: 2px;
	}

	/* Dari is the widest label at 59.5px, so its button gives back less: 82px
	   to 80px, with the same tightened gap and glyph. That is enough for an 8px
	   gap at 390px, where the price and the button were touching. */
	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		width: 80px !important;
		min-width: 80px !important;
		flex-basis: 80px;
		gap: 2px;
	}

	html[lang="fa-AF"] body.woocommerce-shop li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="ps-AF"] body.woocommerce-shop li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.tax-product_cat li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="ps-AF"] body.tax-product_cat li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.post-type-archive-product li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="ps-AF"] body.post-type-archive-product li.product.product_cat-bundles .etebar-shop-card__footer .button::before {
		flex-basis: 16px;
		width: 16px;
		height: 16px;
		-webkit-mask: var(--etebar-cart-icon) center / 16px 16px no-repeat;
		mask: var(--etebar-cart-icon) center / 16px 16px no-repeat;
	}
}

@media (max-width: 374px) {

	/* 142px of usable row at the narrowest supported width. 72px of button plus
	   a 19px price leaves an 8px gap in all three languages -- the target -- and
	   £259.00 stays a clear serif price, a step down from the generic card
	   rather than a different order of size. */
	body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .price,
	body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .price,
	body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .price {
		font-size: 19px !important;
	}

}

/* ---------- Dari narrow-screen purchase row ----------

   The Dari label "افزودن" is 59.5px, against 35.4px in English. With the 18px
   cart glyph and its gap the button needs 88.5px of ink, but it is given 82px,
   so the label already sits on the edge of its own fill. That 82px then leaves
   only 57px of the 142px row for the price, and £58.00 needs 59.1px -- so on
   Rice Sack, Cooking Oil and Wheat Flour the "£" was being cut off, with a
   0.9px gap to the button.

   Dropping the decorative glyph settles both ends at once: the button needs
   67.5px, so 72px holds it with real padding, and the price gets its full
   width back with a 10.9px gap. The label, the fill, the ink colour and the
   50px tap target are unchanged, and the add is still fully signalled by the
   `.added` class, the `loading` state and the shared confirmation toast.

   The range is where the standard Dari row genuinely does not fit rather than
   a round number. At 375px the row briefly gets *narrower* (the safe inset
   grows from 9px to 11px faster than the card grows), so £142.00 and £259.00
   clip there too; the 80/82px button only reaches a real gap once the row
   reaches 153px, which is 390px of viewport. Below that, this treatment
   applies; at 390px the approved glyph row takes over with its 8px gap.

   Dari only. English and Pashto keep their glyph at every width, and nothing
   here applies at or above 390px. */

@media (max-width: 389.98px) {

	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.woocommerce-shop.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.tax-product_cat.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer .button,
	html[lang="fa-AF"] body.post-type-archive-product.woocommerce ul.products li.product.product_cat-bundles .etebar-shop-card__footer a.button.add_to_cart_button:not(.added) {
		width: 72px !important;
		min-width: 72px !important;
		flex-basis: 72px;
	}

	/* Both states, not only the pre-add one. A 72px button that clears the
	   59.5px label has no room for a glyph of any size, and scoping this to
	   `:not(.is-added)` let the confirmation checkmark back in at that width:
	   the label was pushed off its own fill the moment the item was added. */
	html[lang="fa-AF"] body.woocommerce-shop li.product .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.tax-product_cat li.product .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.post-type-archive-product li.product .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.woocommerce-shop li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.tax-product_cat li.product.product_cat-bundles .etebar-shop-card__footer .button::before,
	html[lang="fa-AF"] body.post-type-archive-product li.product.product_cat-bundles .etebar-shop-card__footer .button::before {
		display: none;
	}
}

/* Legacy catalog pages: restore the light editorial surface below the desktop
   breakpoint.

   `.products-categories` (/products/) and `.category-detail-page > .section`
   (the legacy category pages) only received their cream background inside
   `@media (min-width: 1025px)`. Below that breakpoint the dark
   `--etebar-page-start-background` painted on `.site-main` showed through, and
   the translucent card surfaces composited over it into an unintended grey.
   These declarations restore the same surface the desktop rules already
   provide; the `page-hero` above them stays dark by design and desktop is
   untouched. */
@media (max-width: 1024.98px) {
	.products-categories,
	.category-detail-page > .section {
		background: var(--etebar-muted);
	}

	/* Render these card surfaces intentionally rather than relying on a
	   translucent composite. Scoped to the legacy templates so the shared
	   `.category-card` / `.product-detail-card` rules stay as they are
	   everywhere else. */
	.products-categories .category-card,
	.category-detail-page .product-detail-card {
		background: var(--etebar-paper);
	}
}

/* The quantity label now prints inside `form.cart` (immediately before the
   stepper) so a product option such as the bundle tea choice can no longer
   separate it from the control it names. That form is a grid — one column on
   mobile, `132px minmax(200px, 260px)` from 620px up — so the label has to
   claim a full row of its own, otherwise it takes the stepper's cell and
   pushes the add-to-cart button onto a second row. Spanning every column
   reproduces the previous layout at all widths. */
body.single-product.woocommerce div.product .etebar-pdp__purchase form.cart .etebar-pdp__quantity-label {
	grid-column: 1 / -1;
	/* Sitting inside the form also subjects the label to that form's 12px row
	   gap, which never applied when it was a sibling above the form. Trim the
	   label's own 10px bottom margin by the same amount so the label-to-stepper
	   distance stays exactly 10px, unchanged at every width. */
	margin-bottom: calc(10px - 12px);
}

/* ==========================================================================
   Mobile cart: bring the cart into the approved Shop/PDP design language.

   Scoped to `body.woocommerce-cart` and to widths at or below the mobile
   breakpoint. The desktop cart, the checkout (which shares several of the
   older `.wc-block-*` rules above) and every other page are untouched.
   ========================================================================== */

@media (max-width: 820px) {

	/* ---------- 1. Opening rhythm ---------- */

	/* The cart opened on 216px of empty cream: `.site-main` contributes the
	   100px header-overlap clearance, `.content-shell` another 80px and the
	   entry 36px. The header is sticky and already occupies flow, so none of
	   that clearance is needed -- this is the same correction the catalog
	   received, and it lands the heading on the catalog's 26px rhythm. */
	body.woocommerce-cart .site-main {
		padding-top: 26px;
		min-height: 0;
	}

	body.woocommerce-cart .content-shell {
		padding-top: 0;
		padding-bottom: 2.25rem;
	}

	body.woocommerce-cart article.entry {
		padding-top: 0;
	}

	/* ---------- 2. Intro ---------- */

	/* The heading takes the 39px it shares with the catalog and the product
	   title; it was the only H1 in the system still sitting at 32px. */
	body.woocommerce-cart .entry__header h1 {
		margin-bottom: 0.55rem;
		font-size: 39px;
		line-height: 1.12;
	}

	body.woocommerce-cart .etebar-cart-intro p {
		margin-bottom: 0.7rem;
		color: var(--etebar-gray);
		font-size: 17.5px;
		line-height: 1.55;
	}

	body.woocommerce-cart .etebar-cart-intro .text-link {
		font-size: 17px;
		font-weight: 650;
	}

	/* ---------- 3. Item rows as cards ---------- */

	/* The rows were a bordered table inside one outer frame, which read as a
	   list rather than as the card system the rest of the storefront uses.
	   Each row becomes its own white card on the cream page, matching the
	   catalog card's border, radius and surface. */
	body.woocommerce-cart .wc-block-cart-items,
	body.woocommerce-cart .wc-block-cart-items tbody,
	body.woocommerce-cart .wc-block-cart-items__row {
		display: block;
		width: 100%;
		border: 0;
		background: transparent;
	}

	/* The table carried the surface -- radius and a drop shadow -- that made
	   the list read as one container. Now that each row is its own card, that
	   outer frame would box a set of boxes. */
	body.woocommerce-cart .wc-block-cart-items {
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	body.woocommerce-cart .wc-block-cart-items__header {
		display: none;
	}

	body.woocommerce-cart .wc-block-cart-items__row {
		display: grid;
		grid-template-columns: 96px minmax(0, 1fr);
		column-gap: 13px;
		row-gap: 8px;
		align-items: start;
		margin-bottom: 12px;
		padding: 12px !important;
		border: 1px solid var(--etebar-border);
		border-radius: 14px;
		background: #fff;
		box-sizing: border-box;
	}

	body.woocommerce-cart .wc-block-cart-items__row::after {
		display: none;
	}

	/* ---------- 4. Image ---------- */

	/* 58px of rendered image inside an 80px cell was the smallest product
	   presentation on the site. A 96px white stage matches the catalog card's
	   treatment and keeps the whole bundle composition visible. */
	body.woocommerce-cart .wc-block-cart-item__image {
		grid-column: 1;
		grid-row: 1;
		width: 96px !important;
		height: 96px !important;
		padding: 0 !important;
		border: 1px solid var(--etebar-border) !important;
		border-radius: 10px !important;
		background: #fff !important;
		box-sizing: border-box;
		overflow: hidden;
	}

	body.woocommerce-cart .wc-block-cart-item__image a {
		display: block;
		width: 100%;
		height: 100%;
	}

	body.woocommerce-cart .wc-block-cart-item__image img {
		width: 100% !important;
		height: 100% !important;
		padding: 5px;
		object-fit: contain;
		box-sizing: border-box;
	}

	/* ---------- 5. Title, price, metadata ---------- */

	body.woocommerce-cart .wc-block-cart-item__product {
		grid-column: 2;
		grid-row: 1;
		padding: 0 !important;
	}

	body.woocommerce-cart .wc-block-components-product-name {
		display: block;
		margin-bottom: 4px;
		color: var(--etebar-navy) !important;
		font-family: var(--etebar-sans) !important;
		font-size: 17px !important;
		font-weight: 700 !important;
		line-height: 1.28 !important;
		text-decoration: none;
	}

	/* The product price and the line total rendered the same figure twice at
	   quantity 1, which read as a bug and cost the title most of its width to
	   a third grid column. The price keeps the position the card hierarchy
	   wants -- directly under the title -- and the duplicate column is
	   dropped; quantity stays visible in the stepper beside it and the
	   Subtotal below already accounts for it. */
	body.woocommerce-cart .wc-block-cart-item__total,
	body.woocommerce-cart .wc-block-components-product-metadata__description {
		display: none !important;
	}

	body.woocommerce-cart .wc-block-cart-item__prices {
		display: block !important;
		margin-bottom: 4px;
	}

	body.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price {
		color: var(--etebar-navy) !important;
		font-family: var(--etebar-serif) !important;
		font-size: 19px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;
	}

	/* Secondary by size and colour, so "Tea choice" supports the title rather
	   than competing with it as it did at the price's own 15px. */
	body.woocommerce-cart .wc-block-components-product-metadata {
		margin: 0 !important;
		color: var(--etebar-gray) !important;
		font-size: 14px !important;
		line-height: 1.45 !important;
	}

	body.woocommerce-cart .wc-block-components-product-details {
		margin: 0;
	}

	body.woocommerce-cart .wc-block-components-product-details__name {
		font-weight: 650;
	}

	/* ---------- 6. Quantity and remove ---------- */

	/* One row across the foot of the card: the stepper reads as a single
	   control and the remove action sits at a deliberate position rather than
	   floating beside the price. */
	body.woocommerce-cart .wc-block-cart-item__quantity {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		margin: 0;
		padding: 10px 0 0 !important;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector {
		min-width: 120px;
		height: 44px;
		margin: 0;
		border: 1px solid var(--etebar-border);
		border-radius: 10px;
		background: #fff;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__input {
		min-width: 34px;
		color: var(--etebar-navy);
		font-family: var(--etebar-sans);
		font-size: 16.5px;
		font-weight: 700;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__button {
		width: 42px;
		min-height: 42px;
		color: var(--etebar-navy);
	}

	/* Obvious but secondary: an outlined icon control, not a destructive fill. */
	body.woocommerce-cart .wc-block-cart-item__remove-link {
		flex: 0 0 auto;
		width: 44px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 1px solid var(--etebar-border) !important;
		border-radius: 10px !important;
		background: #fff !important;
		color: var(--etebar-gray) !important;
	}

	/* ---------- 7. Totals card ---------- */

	body.woocommerce-cart .wc-block-cart__sidebar {
		margin-top: 4px;
		padding: 16px !important;
		border: 1px solid var(--etebar-border);
		border-radius: 14px;
		background: #fff;
		box-sizing: border-box;
	}

	body.woocommerce-cart .wc-block-components-totals-item__label {
		color: var(--etebar-navy);
		font-size: 16.5px;
		font-weight: 600;
	}

	body.woocommerce-cart .wc-block-components-totals-item__value {
		color: var(--etebar-navy);
		font-size: 16.5px;
		font-weight: 650;
	}

	body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
		font-family: var(--etebar-serif);
		font-size: 20px;
		font-weight: 700;
	}

	body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
		font-family: var(--etebar-serif);
		font-size: 24px;
		font-weight: 700;
	}

	body.woocommerce-cart .wc-block-cart__submit-button {
		min-height: 54px;
		font-size: 17.5px;
		font-weight: 700;
	}
}

/* ==========================================================================
   Mobile add-to-cart confirmation sheet.

   The floating card placed two 172.8px actions plus a 16px gap inside 358px of
   sheet, so "View cart" rendered past the right edge; it also gave the product
   name more weight than the confirmation itself, carried a top-only radius on
   a card that floats clear of the screen edge, and made no allowance for a
   home indicator. Mobile only -- the desktop toast keeps its geometry.
   ========================================================================== */

@media (max-width: 820px) {

	.etebar-cart-confirmation {
		right: 12px;
		left: 12px;
		bottom: calc(12px + env(safe-area-inset-bottom, 0px));
		width: auto;
		padding: 14px 14px 16px;
		border: 1px solid var(--etebar-border);
		border-top: 3px solid var(--etebar-gold);
		border-radius: 16px;
		background: #fff;
		box-shadow: 0 18px 44px rgb(3 19 33 / 22%);
		gap: 12px;
	}

	/* An existing `html[dir="rtl"]` rule sets the sheet's inset and zeroes its
	   padding, and outranks the plain selector above, so the RTL sheet has to
	   restate the same geometry or its actions run to the sheet edge. */
	html[dir="rtl"] .etebar-cart-confirmation {
		right: 12px;
		left: 12px;
		bottom: calc(12px + env(safe-area-inset-bottom, 0px));
		padding: 14px 14px 16px;
	}

	/* ---------- Message block ---------- */

	.etebar-cart-confirmation__product {
		grid-template-columns: 56px minmax(0, 1fr);
		gap: 12px;
		padding: 0 40px 0 0 !important;
		align-items: center;
	}

	html[dir="rtl"] .etebar-cart-confirmation__product {
		padding: 0 0 0 40px !important;
	}

	.etebar-cart-confirmation__product img {
		width: 56px;
		height: 56px;
		flex: 0 0 56px;
		padding: 4px;
		border: 1px solid var(--etebar-border);
		border-radius: 10px;
		background: #fff;
	}

	/* The confirmation leads, the product name identifies it. Previously the
	   name was set larger than the message it was confirming. */
	.etebar-cart-confirmation__success {
		margin: 0 0 2px;
		color: var(--etebar-green, var(--etebar-navy));
		font-size: 13px;
		font-weight: 700;
		letter-spacing: 0.01em;
	}

	.etebar-cart-confirmation__product strong {
		font-size: 17px;
		font-weight: 700;
		line-height: 1.28;
	}

	.etebar-cart-confirmation__count {
		margin: 3px 0 0;
		color: var(--etebar-gray);
		font-size: 14px;
	}

	.etebar-cart-confirmation__close {
		top: 8px;
		inset-inline-end: 8px;
		width: 36px;
		height: 36px;
		border: 1px solid var(--etebar-border);
		border-radius: 9px;
		background: #fff;
		font-size: 1.05rem;
		line-height: 1;
	}

	/* ---------- Actions ---------- */

	/* Stacked rather than a 50/50 pair: it removes the overflow, keeps
	   Checkout unambiguously primary in the established navy, and stops the
	   sheet reading as a generic system dialog. */
	.etebar-cart-confirmation .etebar-cart-confirmation__actions {
		display: grid;
		grid-template-columns: 1fr !important;
		gap: 8px !important;
		align-items: stretch;
		margin: 0 !important;
		padding-top: 12px;
		border-top: 1px solid var(--etebar-border);
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .button {
		width: 100%;
		min-width: 0;
		height: auto !important;
		min-height: 52px !important;
		border-radius: 11px;
		font-size: 17px;
		font-weight: 700;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
		display: flex;
		width: 100%;
		height: auto !important;
		min-height: 46px !important;
		align-items: center;
		justify-content: center;
		border: 1px solid var(--etebar-border);
		border-radius: 11px;
		background: #fff;
		color: var(--etebar-navy);
		font-size: 16.5px;
		font-weight: 650;
		text-align: center;
		text-decoration: none;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product {
		grid-template-columns: 56px minmax(0, 1fr);
		margin: 0 !important;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product img {
		width: 56px;
		height: 56px;
		flex-basis: 56px;
		border-radius: 10px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product strong {
		font-size: 17px;
		line-height: 1.28;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__count {
		margin-block-start: 3px;
		font-size: 14px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__success {
		font-size: 13px;
		font-weight: 700;
	}
}

/* ==========================================================================
   Mobile commerce polish: add-to-cart sheet, cart imagery, Special Request.

   Everything below is scoped to phone widths except the small set of base
   rules for markup that did not exist before (the location step's quick-area
   chips, its hint and its sub-step heading). Those elements have no desktop
   "before" to preserve, so they are given one calm treatment that reads the
   same at both sizes. Desktop geometry for the confirmation sheet, the step
   badges and the Special Request panel is deliberately untouched.
   ========================================================================== */

/* ---------- Shared step pictograms ---------- */

/* Off by default: desktop keeps the numbered circles it was signed off with.
   The pictograms are switched on inside the phone query below. */
.etebar-step-icon {
	display: none;
}

/* ---------- Location step: elements introduced by this pass ---------- */

.special-request-substep {
	margin-block-end: 1.5rem;
}

.special-request-substep__title {
	margin: 0 0 0.85rem;
	color: #031321;
	font-family: var(--etebar-sans);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	line-height: 1.3;
	text-transform: uppercase;
}

.special-request-location__areas {
	margin-block-start: 1.1rem;
}

.special-request-location__areas-title {
	margin: 0 0 0.6rem !important;
	color: #173a55;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem !important;
	font-weight: 600;
	line-height: 1.35 !important;
}

.special-request-location__area-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

/* A chip only prefills the written area field. It is styled as a quiet
   selectable control, not as a button that submits anything. */
.special-request-location__area {
	min-height: 40px;
	border: 1px solid rgb(23 58 85 / 26%);
	border-radius: 999px;
	padding: 0 0.95rem;
	background: #fffdf8;
	color: #173a55;
	cursor: pointer;
	font-family: var(--etebar-sans);
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1;
}

.special-request-location__area:hover {
	border-color: #c6a052;
	background: rgb(198 160 82 / 12%);
}

.special-request-location__area.is-selected {
	border-color: #173a55;
	background: #173a55;
	color: #f7f2e8;
}

.special-request-location__area:focus-visible {
	outline: 3px solid #c6a052;
	outline-offset: 2px;
}

/* Same treatment as the map's resolved/fallback note, so the three advisory
   lines in this step read as one voice rather than three unrelated boxes. */
.special-request-location__hint {
	margin: 1.1rem 0 0 !important;
	border-inline-start: 3px solid #c6a052;
	padding: 0.8rem 1rem;
	background: #fffaf1;
	color: #374854 !important;
	font-size: 0.9375rem !important;
	line-height: 1.5 !important;
}

.special-request-location__written {
	margin-block-start: 1.25rem;
}

/* ==========================================================================
   Phone widths.
   ========================================================================== */

@media (max-width: 820px) {

	/* ======================================================================
	   1. Add-to-cart confirmation sheet.

	   The sheet carried three separate gold elements stacked at its top edge:
	   a 3px gold border-top, a full-bleed `::before` track in 30% gold, and
	   the progress fill itself. Together they read as one constant ornamental
	   band that never changed, and because all three ran corner to corner the
	   16px radius sliced their ends off. The band is removed; the timer stays
	   but becomes a single inset capsule that visibly empties, so the only
	   line left on the sheet is one that means something.
	   ====================================================================== */

	.etebar-cart-confirmation {
		right: 10px;
		left: 10px;
		bottom: calc(10px + env(safe-area-inset-bottom, 0px));
		width: auto;
		box-sizing: border-box;
		padding: 21px 16px 16px;
		border: 1px solid var(--etebar-border);
		border-top: 1px solid var(--etebar-border);
		border-radius: 22px;
		background: #fff;
		box-shadow:
			0 22px 54px rgb(3 19 33 / 26%),
			0 2px 6px rgb(3 19 33 / 8%);
		gap: 0;
	}

	/* The RTL rule earlier in the cascade restates inset and padding, so this
	   one has to as well or the sheet loses its gutters in Dari and Pashto. */
	html[dir="rtl"] .etebar-cart-confirmation {
		right: 10px;
		left: 10px;
		bottom: calc(10px + env(safe-area-inset-bottom, 0px));
		padding: 21px 16px 16px;
	}

	/* ---------- Dismiss timer ---------- */

	/* Track and fill share one geometry, inset from the corners so the radius
	   never clips them, with round ends so a partly-elapsed bar still looks
	   finished. Navy rather than gold: on a white sheet a gold hairline reads
	   as decoration, which is what looked fake; navy reads as a control. */
	.etebar-cart-confirmation::before {
		top: 9px;
		right: 16px;
		left: 16px;
		height: 3px;
		border-radius: 999px;
		background: var(--etebar-muted);
	}

	.etebar-cart-confirmation__progress {
		top: 9px;
		right: 16px;
		left: 16px;
		height: 3px;
		border-radius: 999px;
		background: color-mix(in srgb, var(--etebar-navy) 62%, var(--etebar-border));
	}

	/* ---------- Message block ---------- */

	.etebar-cart-confirmation .etebar-cart-confirmation__product {
		display: grid;
		grid-template-columns: 66px minmax(0, 1fr);
		gap: 14px;
		align-items: center;
		margin: 0 !important;
		padding: 2px 50px 0 0 !important;
		border: 0;
	}

	html[dir="rtl"] .etebar-cart-confirmation .etebar-cart-confirmation__product {
		padding: 2px 0 0 50px !important;
	}

	/* White stage, thin frame. The bundle photographs are served here as their
	   derived transparent frames (see etebar_market_loop_add_to_cart_args), so
	   this white is what actually shows behind the products. */
	.etebar-cart-confirmation .etebar-cart-confirmation__product img {
		width: 66px;
		height: 66px;
		flex: 0 0 66px;
		box-sizing: border-box;
		padding: 5px;
		border: 1px solid var(--etebar-muted);
		border-radius: 13px;
		background: #fff;
		object-fit: contain;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__success {
		display: flex;
		align-items: center;
		margin: 0 0 3px;
		color: var(--etebar-navy);
		font-size: 13px;
		font-weight: 700;
		letter-spacing: 0.02em;
	}

	/* A small confirmation mark carries the "it worked" signal that the gold
	   band was failing to. Navy circle: the sheet's own ink colour. */
	.etebar-cart-confirmation .etebar-cart-confirmation__success::before {
		width: 15px;
		height: 15px;
		flex: 0 0 15px;
		margin-inline-end: 6px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='9' fill='%230b2b40'/%3E%3Cpath d='m6 10.2 2.6 2.6L14 7.4' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
		background-repeat: no-repeat;
		background-size: 15px 15px;
		content: "";
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product strong {
		font-size: 17.5px;
		font-weight: 700;
		line-height: 1.26;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__count {
		margin: 4px 0 0;
		color: var(--etebar-gray);
		font-size: 14px;
		line-height: 1.35;
	}

	/* ---------- Close ---------- */

	/* A full 40px hit area, but drawn as the glyph alone: a filled or outlined
	   button at this size competes with the two real actions below it. */
	.etebar-cart-confirmation .etebar-cart-confirmation__close {
		top: 12px;
		inset-inline-end: 8px;
		width: 40px;
		height: 40px;
		border: 0;
		border-radius: 50%;
		background: transparent;
		color: var(--etebar-gray);
		font-size: 1.25rem;
		line-height: 1;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__close:hover,
	.etebar-cart-confirmation .etebar-cart-confirmation__close:focus-visible {
		background: var(--etebar-ivory);
		color: var(--etebar-navy);
	}

	/* ---------- Actions ---------- */

	/* One column, both actions full width and centred. A 50/50 pair could not
	   hold "Checkout" and "View cart" at 360px without either truncating or
	   overflowing, and stacking also lets Checkout stay unambiguously primary
	   instead of competing with an equally sized neighbour. */
	.etebar-cart-confirmation .etebar-cart-confirmation__actions {
		display: grid;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
		align-items: stretch;
		justify-items: stretch;
		margin: 14px 0 0 !important;
		padding: 14px 0 0 !important;
		border-top: 1px solid var(--etebar-muted);
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .button,
	.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
		display: flex;
		width: 100%;
		min-width: 0;
		align-items: center;
		justify-content: center;
		border-radius: 13px;
		text-align: center;
		text-decoration: none;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .button {
		height: auto !important;
		min-height: 54px !important;
		padding: 0.7rem 1rem;
		border: 1px solid var(--etebar-navy);
		background: var(--etebar-navy);
		color: #fff;
		font-size: 17px;
		font-weight: 700;
		letter-spacing: 0.01em;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
		height: auto !important;
		min-height: 50px !important;
		padding: 0.7rem 1rem;
		border: 1px solid var(--etebar-border);
		background: #fff;
		color: var(--etebar-navy);
		font-size: 16.5px;
		font-weight: 650;
	}

	/* ======================================================================
	   2. Cart line-item imagery.

	   The bundle frames arrive transparent from the Store API on cart and
	   checkout routes, so the thumbnail stage has to actually be white rather
	   than inheriting the page's cream.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-cart-item__image img,
	body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
		box-sizing: border-box;
		padding: 3px;
		border-radius: 10px;
		background: #fff;
		object-fit: contain;
	}

	/* ======================================================================
	   3. Step pictograms.

	   Numbers under 12px labels tell a first-time buyer nothing about what a
	   step contains. The pictograms replace the digit at phone widths only;
	   the completed state still resolves to its tick, so progress stays
	   readable at a glance.
	   ====================================================================== */

	.special-request-wizard__progress-badge .etebar-step-icon {
		display: block;
		width: 21px;
		height: 21px;
	}

	/* Checkout draws the same four marks as masks rather than as markup: its
	   progress rail is injected into the WooCommerce Checkout block, and that
	   block's output is kses-filtered, which removes `<svg>` outright. The
	   path data is identical to etebar_market_step_icon() in functions.php. */
	.etebar-checkout-progress__number::before {
		display: block;
		width: 21px;
		height: 21px;
		background-color: currentColor;
		content: "";
		mask-position: center;
		mask-repeat: no-repeat;
		mask-size: 21px 21px;
	}

	[data-etebar-progress-item="1"] .etebar-checkout-progress__number::before {
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Ccircle cx='12' cy='8.2' r='3.55'/%3E%3Cpath d='M4.9 19.6c.95-3.45 3.7-5.45 7.1-5.45s6.15 2 7.1 5.45' stroke-linecap='round'/%3E%3C/svg%3E");
	}

	[data-etebar-progress-item="2"] .etebar-checkout-progress__number::before {
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M12 21.1c0 0 6.5-5.6 6.5-10.25a6.5 6.5 0 1 0-13 0C5.5 15.5 12 21.1 12 21.1Z' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='10.6' r='2.45'/%3E%3C/svg%3E");
	}

	[data-etebar-progress-item="3"] .etebar-checkout-progress__number::before {
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M20.1 8.2v7.6c0 .6-.32 1.14-.84 1.42l-6.5 3.5a1.6 1.6 0 0 1-1.52 0l-6.5-3.5a1.62 1.62 0 0 1-.84-1.42V8.2c0-.6.32-1.14.84-1.42l6.5-3.5a1.6 1.6 0 0 1 1.52 0l6.5 3.5c.52.28.84.82.84 1.42Z' stroke-linejoin='round'/%3E%3Cpath d='m4.2 7.3 7.8 4.2 7.8-4.2M12 20.4v-8.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	}

	[data-etebar-progress-item="4"] .etebar-checkout-progress__number::before {
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='5.5' y='3.5' width='13' height='17' rx='2.2'/%3E%3Cpath d='m9 12.3 2.2 2.2 4-4.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	}

	/* The completed state paints its own tick through `::after`. */
	.etebar-checkout-progress .is-complete .etebar-checkout-progress__number::before {
		display: none;
	}

	/* An earlier pass forces this digit visible with `!important`, so the
	   pictogram swap has to answer at the same weight. */
	.special-request-page .special-request-wizard__progress-number {
		display: none !important;
	}

	/* The completed state already hides the digit with `font-size: 0` and
	   draws a `::after` tick; the pictogram has to step aside for it. */
	.etebar-checkout-progress__number {
		font-size: 0;
	}

	.special-request-wizard__progress li.is-complete .etebar-step-icon {
		display: none;
	}

	.special-request-wizard__progress-badge {
		width: 40px;
		height: 40px;
	}

	.etebar-checkout-progress__number {
		width: 40px;
		height: 40px;
	}

	/* ======================================================================
	   4. Special Request: a mobile flow rather than a shrunk desktop form.

	   The page nested a bordered panel inside a cream page, a bordered step
	   section inside that, and a bordered map card inside that again — three
	   frames around content that is only ever one column wide on a phone. The
	   frames are dropped and the hierarchy is carried by spacing and rules
	   instead, which gives every field roughly 50px more width.
	   ====================================================================== */

	/* The page gutter at phone widths. The panel measures 12px in from each
	   edge at 360, 390 and 412, so the two full-bleed strips below pull back by
	   exactly that and pad it in again — pulling further would push the strips
	   past the viewport and, in RTL, make the whole document scroll sideways. */
	.special-request-page {
		--special-request-gutter: 12px;
	}

	.special-request-page .order-request-panel {
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		/* `overflow: hidden` would make the sticky action bar below inert. */
		overflow: visible;
	}

	.special-request-page .order-request-panel__intro {
		padding: 1.5rem 0 1.25rem !important;
		border-block-end: 1px solid rgb(198 160 82 / 32%);
		background: transparent;
	}

	.special-request-page .order-request-panel__intro h2 {
		font-size: 1.85rem;
		line-height: 1.14;
	}

	.special-request-page .order-request-form .order-request-form__group {
		padding: 1.5rem 0 0 !important;
		border-block-end: 0 !important;
	}

	/* ---------- Progress rail ---------- */

	.special-request-page .special-request-wizard__progress {
		margin-inline: calc(-1 * var(--special-request-gutter));
		padding: 1rem var(--special-request-gutter) 0.9rem;
		border-block-end: 1px solid rgb(198 160 82 / 32%);
		background: #f5f0e6;
	}

	.special-request-wizard__progress ol::before {
		top: 20px;
		inset-inline: 12.5%;
	}

	.special-request-wizard__progress li {
		gap: 0.4rem;
		font-size: 0.7rem;
		line-height: 1.2;
	}

	/* ---------- Step heading ---------- */

	/* The rail directly above already names the step and marks it current, so
	   repeating the number in a second badge beside the heading was saying the
	   same thing twice in the same screenful. */
	.special-request-page .order-request-form__badge {
		display: none !important;
	}

	.special-request-page .order-request-form__title-row h3 {
		font-size: 1.55rem;
		line-height: 1.18;
	}

	.special-request-page .order-request-form__help {
		margin-block-end: 1.35rem;
		font-size: 0.95rem;
		line-height: 1.55;
	}

	/* ---------- Fields ---------- */

	.special-request-page .order-request-form .field-grid {
		grid-template-columns: 1fr;
		gap: 1.15rem;
	}

	/* 16px is the smallest size iOS Safari will render without zooming the
	   whole page on focus, which on this form used to leave the viewport
	   scrolled sideways for the rest of the step. */
	.special-request-page .order-request-form input,
	.special-request-page .order-request-form textarea,
	.special-request-page .order-request-form select {
		min-height: 52px;
		border-radius: 10px;
		font-size: 16px;
	}

	.special-request-page .order-request-form textarea {
		min-height: 104px;
		line-height: 1.5;
	}

	/* Keeps a focused field clear of the sticky action bar when the browser
	   scrolls it into view. */
	.special-request-page .order-request-form :is(input, textarea, select) {
		scroll-margin-block-end: 96px;
	}

	/* ---------- Request-type choices ---------- */

	.special-request-page .special-request-type__choices {
		display: grid;
		gap: 0.6rem;
	}

	.special-request-page .special-request-type__choices label {
		display: flex;
		min-height: 56px;
		align-items: center;
		gap: 0.75rem;
		margin: 0 !important;
		border-radius: 12px;
		padding-inline: 1rem;
	}

	.special-request-page .special-request-type__choices label span {
		font-size: 1rem;
	}

	/* ---------- Location step ---------- */

	/* Flattened: the map block sits in the same column as the fields around
	   it, separated by a rule, so the step reads as one continuous "where"
	   task instead of a card floating inside a card. */
	.special-request-page .special-request-map {
		margin-block-start: 1.6rem;
		border: 0;
		border-block-start: 1px solid rgb(198 160 82 / 32%);
		border-radius: 0;
		padding: 1.5rem 0 0;
		background: transparent;
	}

	.special-request-page .special-request-map__heading h4 {
		font-size: 1.3rem;
	}

	.special-request-page .special-request-map > p {
		margin: 0.5rem 0 1.1rem;
		font-size: 0.95rem;
		line-height: 1.55;
	}

	.special-request-page .special-request-map__ui > label {
		font-size: 0.9375rem;
	}

	.special-request-page .special-request-map__ui gmp-basic-place-autocomplete::part(input),
	.special-request-page .special-request-map__ui gmp-place-autocomplete::part(input) {
		min-height: 52px;
		font-size: 16px;
	}

	.special-request-page .special-request-map__canvas {
		height: 280px;
		margin-top: 0.9rem;
		border: 1px solid rgb(23 58 85 / 20%);
		border-radius: 12px;
	}

	/* Kept at a 44px hit area with 10px of vertical padding absorbed by the
	   pill, so eight chips still land in three rows at 360px. */
	.special-request-page .special-request-location__area-list {
		gap: 0.45rem;
	}

	.special-request-page .special-request-location__area {
		min-height: 44px;
		padding: 0 0.8rem;
		font-size: 0.875rem;
	}

	.special-request-page .special-request-location__hint,
	.special-request-page .special-request-map__resolved,
	.special-request-page .special-request-map__fallback {
		border-radius: 0 8px 8px 0;
		font-size: 0.9rem !important;
	}

	html[dir="rtl"] .special-request-page .special-request-location__hint,
	html[dir="rtl"] .special-request-page .special-request-map__resolved,
	html[dir="rtl"] .special-request-page .special-request-map__fallback {
		border-radius: 8px 0 0 8px;
	}

	/* ---------- Review step ---------- */

	.special-request-review section {
		border-radius: 12px;
		padding: 1rem 1.05rem;
	}

	.special-request-review dl > div {
		grid-template-columns: 1fr;
		gap: 0.15rem;
		padding-block: 0.6rem;
	}

	/* ---------- Step actions ---------- */

	/* Held at the bottom of the viewport while the step is being filled in.
	   Step 2 in particular is taller than three screens, and "Continue" used
	   to be reachable only by scrolling past the map every time. */
	.special-request-page .special-request-wizard__actions {
		position: sticky;
		z-index: 6;
		bottom: 0;
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		gap: 0.65rem;
		margin: 1.75rem calc(-1 * var(--special-request-gutter)) 0;
		padding: 12px var(--special-request-gutter) calc(12px + env(safe-area-inset-bottom, 0px));
		border-block-start: 1px solid rgb(198 160 82 / 34%);
		background: #f5f0e6;
	}

	.special-request-page .special-request-wizard__actions .button {
		min-width: 0;
		min-height: 52px;
		flex: 0 1 auto;
		font-size: 1rem;
	}

	.special-request-page .special-request-wizard__back {
		max-width: none;
		padding-inline: 1rem;
	}

	/* Step 1 has no Back button, so its Continue takes the whole bar. */
	.special-request-page .special-request-wizard__actions .button:only-child {
		grid-column: 1 / -1;
		margin-inline-start: 0;
	}
}

/* ---------- Narrow phones ---------- */

@media (max-width: 380px) {

	.special-request-wizard__progress li {
		font-size: 0.66rem;
	}

	.special-request-wizard__progress-badge,
	.etebar-checkout-progress__number {
		width: 38px;
		height: 38px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product {
		grid-template-columns: 60px minmax(0, 1fr);
		gap: 12px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product img {
		width: 60px;
		height: 60px;
		flex-basis: 60px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product strong {
		font-size: 16.5px;
	}
}

/* ==========================================================================
   Deadline mobile flow pass — fewer, larger, clearer controls.
   ========================================================================== */

.etebar-checkout-kabul-note-mobile {
	display: none;
}

.etebar-checkout-step-help--mobile {
	display: none;
}

.etebar-location-picker__zone-error {
	margin: 0.75rem 0 0 !important;
	border-inline-start: 3px solid var(--etebar-danger, #a33a31);
	padding: 0.75rem 0.9rem;
	background: #fff3f1;
	color: #7d241d !important;
	font-size: 0.9375rem !important;
	font-weight: 650;
	line-height: 1.45 !important;
}

@media (max-width: 820px) {
	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-control: 56px;
		--etebar-flow-cta: 56px;
		--etebar-flow-input: 16.5px;
		--etebar-flow-body: 16px;
		--etebar-flow-label: 16px;
		--etebar-flow-help: 15.5px;
		--etebar-flow-step-title: 26px;
		--etebar-flow-card-title: 20px;
	}

	/* Checkout: the receipt is an ordinary disclosure in document flow. */
	body.woocommerce-checkout .wc-block-checkout__sidebar {
		position: static !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		align-self: stretch !important;
		transform: none !important;
		border: 0;
		border-block: 1px solid var(--etebar-flow-rule);
		border-radius: 0;
		background: transparent;
		overflow: visible;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		min-height: 68px;
		padding: 0.75rem 0.15rem;
	}

	body.woocommerce-checkout .wc-block-components-checkout-order-summary__content {
		padding: 0 0 1rem;
		border-top-color: var(--etebar-flow-rule);
	}

	/* One heading, one rail, one receipt disclosure. */
	body.woocommerce-checkout .entry__header h1 {
		font-size: 40px;
		line-height: 1.06;
	}

	body.woocommerce-checkout .etebar-checkout-orientation {
		margin: 0 !important;
		border: 0;
		border-radius: 0;
		padding: 0 !important;
		background: transparent;
	}

	body.woocommerce-checkout .etebar-checkout-orientation__intro {
		display: none;
	}

	body.woocommerce-checkout .etebar-checkout-progress {
		margin: 0.7rem 0 0.35rem;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout,
	body.woocommerce-checkout .wc-block-checkout {
		margin-block-start: 0.7rem;
	}

	.etebar-checkout-step-intro {
		margin: 0 0 1.15rem !important;
		border: 0;
		border-radius: 0;
		padding: 0 !important;
		background: transparent;
	}

	.etebar-checkout-step-intro .eyebrow {
		display: none;
	}

	.etebar-checkout-step-help--desktop {
		display: none;
	}

	.etebar-checkout-step-help--mobile {
		display: block;
	}

	.etebar-checkout-step-intro h3,
	.special-request-page .order-request-form__title-row h3 {
		margin: 0 0 0.45rem;
		font-size: var(--etebar-flow-step-title) !important;
		line-height: 1.14;
	}

	.etebar-checkout-step-intro > p,
	.special-request-page .order-request-form__help {
		margin: 0 0 1rem !important;
		font-size: var(--etebar-flow-body) !important;
		line-height: 1.48;
	}

	/* Full-width recipient and delivery fields at every supported phone width. */
	body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__billing-fields .wc-block-components-address-form,
	body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__order-fields .wc-block-components-address-form {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 1rem !important;
	}

	body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__billing-fields .wc-block-components-address-form > *,
	body.woocommerce-checkout.etebar-checkout-steps-ready .wc-block-checkout__order-fields .wc-block-components-address-form > * {
		width: 100% !important;
		min-width: 0 !important;
		grid-column: 1 / -1 !important;
	}

	/* Country and city remain populated by JS and server filters; they are not choices. */
	body.woocommerce-checkout .etebar-checkout-fixed-location,
	body.woocommerce-checkout .etebar-checkout-internal-address,
	body.woocommerce-checkout .etebar-checkout-secondary-address,
	body.woocommerce-checkout .wc-block-components-address-form__address_2-toggle {
		display: none !important;
	}

	body.woocommerce-checkout .wc-block-checkout__shipping-option.etebar-checkout-single-shipping {
		display: none !important;
	}

	/* Delivery: map and written address read as one section, without fact walls. */
	.etebar-checkout-step-intro--delivery .etebar-checkout-kabul-note,
	.etebar-checkout-step-intro--delivery .etebar-delivery-facts,
	.etebar-checkout-step-intro--delivery .etebar-checkout-proof-note {
		display: none !important;
	}

	.etebar-checkout-kabul-note-mobile {
		display: block;
		margin: 0 0 1rem !important;
		color: var(--etebar-flow-muted);
		font-size: var(--etebar-flow-body) !important;
		line-height: 1.45;
	}

	.etebar-location-picker--checkout,
	.special-request-page .special-request-map {
		margin: 0.8rem 0 1rem !important;
		border: 0 !important;
		border-radius: 0 !important;
		padding: 0 !important;
		background: transparent !important;
	}

	.etebar-location-picker__heading h4 {
		font-size: 21px;
		line-height: 1.2;
	}

	.etebar-location-picker__intro {
		display: none;
	}

	.etebar-location-picker__ui {
		margin-top: 0.85rem;
	}

	.etebar-location-picker__ui > label,
	.etebar-location-picker__areas-title {
		font-size: var(--etebar-flow-label) !important;
	}

	.etebar-location-picker__canvas {
		height: 276px;
		margin-top: 0.75rem;
		border-radius: 13px;
	}

	.etebar-location-picker__areas {
		margin-block-start: 0.9rem;
	}

	.etebar-location-picker__area {
		min-height: 44px;
		padding-inline: 0.8rem;
		font-size: 14.5px;
	}

	.etebar-location-picker__hint,
	.etebar-location-picker__resolved,
	.etebar-location-picker__fallback,
	.etebar-location-picker__zone-error {
		font-size: var(--etebar-flow-help) !important;
		line-height: 1.48 !important;
	}

	body.woocommerce-checkout .wc-block-checkout__billing-fields,
	body.woocommerce-checkout .wc-block-checkout__order-fields {
		margin-bottom: 0.7rem !important;
	}

	body.woocommerce-checkout .etebar-video-proof-option {
		margin: 0.35rem 0 0 !important;
		border: 0;
		border-block-start: 1px solid var(--etebar-flow-rule);
		border-radius: 0;
		padding: 1rem 0 0;
		background: transparent;
	}

	body.woocommerce-checkout .etebar-video-proof-option > label {
		min-height: 56px;
		align-items: center;
	}

	body.woocommerce-checkout .etebar-video-proof-option label strong {
		font-size: 17px;
	}

	body.woocommerce-checkout .etebar-video-proof-option label small {
		font-size: 15.5px;
	}

	body.woocommerce-checkout .etebar-video-proof-option > p,
	html[dir="rtl"] body.woocommerce-checkout .etebar-video-proof-option > p {
		margin: 0.25rem 0 0 2.15rem;
		font-size: var(--etebar-flow-help);
		line-height: 1.45;
	}

	html[dir="rtl"] body.woocommerce-checkout .etebar-video-proof-option > p {
		margin-right: 2.15rem;
		margin-left: 0;
	}

	/* Larger native type and controls; the input value stays above iOS zoom size. */
	body.woocommerce-checkout .wc-block-components-text-input label,
	body.woocommerce-checkout .wc-blocks-components-select__label,
	body.woocommerce-checkout .wc-block-components-checkbox__label,
	.special-request-page :is(.special-request-type legend, .order-request-form label > span) {
		font-size: var(--etebar-flow-label) !important;
		line-height: 1.42;
	}

	body.woocommerce-checkout .wc-block-components-checkout-step__description,
	body.woocommerce-checkout .etebar-checkout-field-help,
	.special-request-page .order-request-field-help,
	.special-request-page .order-request-field-error,
	.special-request-page .order-request-consent span {
		font-size: var(--etebar-flow-help) !important;
		line-height: 1.48;
	}

	/* Compact sticky actions are the only sticky UI in either flow. */
	body.woocommerce-checkout.etebar-checkout-steps-ready {
		padding-bottom: calc(90px + env(safe-area-inset-bottom, 0px));
	}

	body.woocommerce-checkout .etebar-checkout-sticky,
	.special-request-page .special-request-wizard__actions {
		flex-wrap: nowrap !important;
		margin-top: 1.25rem !important;
		padding-block-start: 10px !important;
		padding-block-end: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
	}

	body.woocommerce-checkout .etebar-checkout-sticky > div {
		display: none;
	}

	body.woocommerce-checkout .etebar-checkout-sticky__back,
	.special-request-page .special-request-wizard__back,
	.special-request-page .order-request-submit .special-request-wizard__back {
		min-height: var(--etebar-flow-cta);
		font-size: 17px;
	}

	body.woocommerce-checkout .etebar-checkout-sticky__next,
	.special-request-page .special-request-wizard__actions .button--primary,
	.special-request-page .special-request-wizard__actions button[type="submit"] {
		min-height: var(--etebar-flow-cta);
		font-size: 17px;
	}

	body.etebar-mobile-flow-actions-active :is(.back-to-top, .scroll-to-top, #back-to-top, #scroll-to-top, [data-back-to-top]) {
		display: none !important;
	}

	/* Coupon is a quiet secondary disclosure, then two substantial controls. */
	body.woocommerce-cart .etebar-coupon,
	body.woocommerce-checkout .etebar-coupon {
		margin: 0.4rem 0;
		border: 0;
		border-block: 1px solid var(--etebar-flow-rule, rgb(198 160 82 / 32%));
		background: transparent;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button {
		display: grid !important;
		min-height: 54px;
		grid-template-columns: minmax(0, 1fr) 16px;
		align-items: center;
		gap: 0.55rem;
		padding: 0 !important;
		border: 0;
		background: transparent;
		color: var(--etebar-navy);
		font-size: 0;
		text-align: start;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button > svg,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button > svg {
		display: none !important;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button::before,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button::before {
		grid-column: 1;
		color: var(--etebar-navy);
		content: attr(data-etebar-coupon-label);
		font-size: 16px;
		font-weight: 700;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button::after,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button::after {
		grid-column: 2;
		width: 9px;
		height: 9px;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		content: "";
		transform: rotate(45deg) translateY(-2px);
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button[aria-expanded="true"]::after,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button[aria-expanded="true"]::after {
		transform: rotate(225deg) translate(-2px, -2px);
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__form,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__form {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(108px, auto);
		gap: 0.65rem;
		padding: 0 0 0.9rem;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__input,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__input,
	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__button,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__button {
		width: 100%;
		min-width: 0;
		margin: 0;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__input input,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__input input,
	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__button,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__button {
		min-height: 54px;
		box-sizing: border-box;
		border-radius: 11px;
		font-size: 16.5px;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__button,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__button {
		border: 1px solid var(--etebar-navy);
		background: var(--etebar-navy);
		color: #fff;
		font-weight: 750;
	}

	body.woocommerce-cart .wc-block-components-totals-discount__coupon-list-item button,
	body.woocommerce-checkout .wc-block-components-totals-discount__coupon-list-item button {
		min-width: 44px;
		min-height: 44px;
	}

	/* Special Request reaches the first field quickly and shares checkout scale. */
	.special-request-page .order-request-hero {
		min-height: 0 !important;
		padding: 28px 0 30px !important;
	}

	.special-request-page .order-request-hero__layout {
		display: block;
	}

	.special-request-page .order-request-hero__intro .eyebrow,
	.special-request-page .order-request-hero__aside,
	.special-request-page .order-request-panel__intro {
		display: none !important;
	}

	.special-request-page .order-request-hero__intro h1 {
		max-width: 12ch;
		margin: 0 0 0.65rem;
		font-size: 40px !important;
		line-height: 1.04;
	}

	.special-request-page .order-request-hero__intro > p:last-of-type {
		max-width: 38ch;
		margin: 0;
		font-size: 16px !important;
		line-height: 1.48;
	}

	.special-request-page .order-request-content {
		padding-block: 0 2.5rem !important;
	}

	.special-request-page .special-request-wizard__progress {
		margin-inline: 0;
		padding: 1.1rem 0 0.9rem;
		border-block-end: 1px solid var(--etebar-flow-rule);
		background: transparent;
	}

	.special-request-page .order-request-form .order-request-form__group {
		padding-top: 1.25rem !important;
	}

	.special-request-page .special-request-type__choices label {
		min-height: 62px;
		height: auto;
	}

	.special-request-page .special-request-type__choices label span {
		font-size: 16px !important;
	}

	.special-request-page .special-request-substep__title,
	.special-request-page .etebar-location-picker__heading h4,
	.special-request-page .special-request-review h4 {
		font-size: 20px;
		letter-spacing: 0;
		text-transform: none;
	}

	.special-request-page .special-request-map {
		border-block-start: 1px solid var(--etebar-flow-rule) !important;
		padding-top: 1.15rem !important;
	}

	.etebar-checkout-review__grid > section,
	.special-request-review section {
		padding: 1rem;
		border-color: var(--etebar-flow-rule);
		background: #fffdf8;
	}

	.etebar-checkout-review__grid dt,
	.special-request-review dt {
		font-size: 15px;
	}

	.etebar-checkout-review__grid dd,
	.special-request-review dd {
		font-size: 16.5px;
	}
}

@media (max-width: 374px) {
	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-step-title: 25px;
		--etebar-flow-control: 54px;
		--etebar-flow-cta: 54px;
	}

	.special-request-wizard__progress li,
	.special-request-wizard__progress-label,
	.etebar-checkout-progress strong {
		font-size: 12px;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__form,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__form {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   ETEBAR MOBILE FLOW SYSTEM — normal checkout and Special Request.

   The two customer flows were built at different times and had drifted into
   two different products: Special Request had a one-column phone layout with
   an icon stepper and a sticky action bar, while checkout was still the
   desktop WooCommerce block layout with a sidebar, 13px labels and an action
   row that ran off the right edge. Everything below gives both flows one set
   of tokens, one stepper, one action bar, one review-card style and one
   location component, so a buyer recognises the second flow from the first.

   Scoped to <= 820px except the shared location component, which is new markup
   with no desktop "before" to preserve and is deliberately identical at both
   sizes. Desktop checkout and desktop Special Request are otherwise untouched.
   ========================================================================== */

/* ==========================================================================
   1. Shared location component (all widths).
   ========================================================================== */

/* The confirmed map point, as "lat,lng".

   It is internal implementation state: the picker writes it, Step 3 validates
   from it, and the delivery team reads it off the finished order. The customer
   has no business seeing or reaching it at any width.

   It has to exist as a real form control, because WooCommerce's additional
   checkout fields API supports only text, select and checkbox types and
   accepts only maxLength, readOnly, pattern, autocomplete, autocapitalize and
   title as attributes -- there is no way to register it as a native hidden
   input, and `type`/`hidden`/`tabindex` are dropped with a _doing_it_wrong
   notice. Hiding the wrapper is therefore the honest fix rather than a
   workaround: display:none also takes the input out of the tab order and out
   of the accessibility tree, while WooCommerce keeps reading its value from
   the checkout store, so nothing the order carries is affected.

   Unconditional on purpose. This rule previously lived inside the phone-width
   block, which is why the field was visible and tab-focusable on desktop. */
body.woocommerce-checkout .wc-block-components-address-form__etebar-delivery-coordinates {
	display: none !important;
}

.etebar-location-picker__heading h4 {
	margin: 0;
	color: #031321;
	font-family: var(--etebar-serif);
	font-size: 1.35rem;
	line-height: 1.25;
}

.etebar-location-picker__intro {
	max-width: 66ch;
	margin: 0.6rem 0 1.1rem !important;
	color: #52616c;
	font-size: 1rem;
	line-height: 1.55;
}

.etebar-location-picker__ui > label {
	display: block;
	margin-bottom: 0.55rem !important;
	color: #173a55;
	font-size: 0.9375rem;
	font-weight: 600;
}

.etebar-location-picker__ui input[type="search"],
.etebar-location-picker__ui gmp-basic-place-autocomplete,
.etebar-location-picker__ui gmp-place-autocomplete {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1px solid rgb(23 58 85 / 18%);
	border-radius: 10px;
	background-color: #fffdf8;
	color: #031321;
	color-scheme: light;
	font: 400 1rem/1.45 var(--etebar-sans);
}

.etebar-location-picker__ui input[type="search"] {
	min-height: 3rem;
	padding: 0.85rem 1rem;
}

.etebar-location-picker__ui gmp-basic-place-autocomplete::part(input),
.etebar-location-picker__ui gmp-place-autocomplete::part(input) {
	min-height: 3rem;
	padding: 0.85rem 1rem;
}

.etebar-location-picker__canvas {
	width: 100%;
	height: 340px;
	margin-top: 1rem;
	overflow: hidden;
	border: 1px solid rgb(23 58 85 / 20%);
	border-radius: 12px;
	background: #e8e2d6;
}

.etebar-location-picker__resolved,
.etebar-location-picker__fallback,
.etebar-location-picker__hint {
	margin: 1rem 0 0 !important;
	border-inline-start: 3px solid #c6a052;
	padding: 0.8rem 1rem;
	background: #fffaf1;
	color: #374854 !important;
	font-size: 0.9375rem !important;
	line-height: 1.5 !important;
}

.etebar-location-picker__areas {
	margin-block-start: 1.1rem;
}

.etebar-location-picker__areas-title {
	margin: 0 0 0.6rem !important;
	color: #173a55;
	font-family: var(--etebar-sans);
	font-size: 0.9375rem !important;
	font-weight: 600;
	line-height: 1.35 !important;
}

.etebar-location-picker__area-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

/* A chip only prefills the written area field. Styled as a quiet selectable
   control, never as something that submits. */
.etebar-location-picker__area {
	min-height: 40px;
	border: 1px solid rgb(23 58 85 / 26%);
	border-radius: 999px;
	padding: 0 0.95rem;
	background: #fffdf8;
	color: #173a55;
	cursor: pointer;
	font-family: var(--etebar-sans);
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1;
}

.etebar-location-picker__area:hover {
	border-color: #c6a052;
	background: rgb(198 160 82 / 12%);
}

.etebar-location-picker__area.is-selected {
	border-color: #173a55;
	background: #173a55;
	color: #f7f2e8;
}

.etebar-location-picker__area:focus-visible {
	outline: 3px solid #c6a052;
	outline-offset: 2px;
}

/* On checkout the picker has no beige card around it, so it brings its own
   surface; inside Special Request it sits on the section's existing card. */
.etebar-location-picker--checkout {
	margin: 1.25rem 0;
	border: 1px solid rgb(198 160 82 / 42%);
	border-radius: 14px;
	padding: 1.35rem;
	background: #fffdf8;
}

/* ==========================================================================
   2. Phone widths.
   ========================================================================== */

@media (max-width: 820px) {

	/* ---------- Shared tokens ----------

	   One set of sizes for both flows, taken from the rendered pages rather
	   than from the desktop scale: 56px controls clear the 44px minimum with
	   room for a fingertip, and 16.5px input text is above the 16px threshold
	   below which iOS Safari zooms the whole page on focus. */
	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-gutter: 12px;
		--etebar-flow-control: 56px;
		--etebar-flow-cta: 56px;
		--etebar-flow-input: 16.5px;
		--etebar-flow-body: 16.5px;
		--etebar-flow-label: 15.5px;
		--etebar-flow-help: 14.5px;
		--etebar-flow-step-title: 24px;
		--etebar-flow-card-title: 18px;
		--etebar-flow-radius: 14px;
		--etebar-flow-ink: #031321;
		--etebar-flow-muted: #5a6771;
		--etebar-flow-line: #173a55;
		--etebar-flow-rule: rgb(198 160 82 / 32%);
		--etebar-flow-surface: #fff;
	}

	/* ======================================================================
	   2.1 Checkout opening rhythm.

	   The page opened on ~180px of empty cream. Three separate paddings
	   stacked up: `.site-main` contributes the 100px header-overlap
	   clearance, `.content-shell` another 80px (5rem) and the entry its own.
	   The header is sticky and already occupies flow, so none of that
	   clearance is needed here -- this is the identical correction the cart
	   and the catalog already carry, landing on the same 26px rhythm.
	   ====================================================================== */

	body.woocommerce-checkout .site-main {
		padding-top: 26px;
		min-height: 0;
	}

	body.woocommerce-checkout .content-shell {
		padding-top: 0;
		padding-bottom: 2.25rem;
	}

	body.woocommerce-checkout article.entry {
		padding-top: 0;
	}

	body.woocommerce-checkout .entry__header {
		margin-bottom: 0.9rem;
	}

	body.woocommerce-checkout .entry__header h1 {
		margin-bottom: 0;
		font-size: 39px;
		line-height: 1.12;
	}

	/* ======================================================================
	   2.2 One column, full width.

	   WooCommerce's own sidebar layout is a flex row: on any viewport where it
	   engages, the form and the order summary become two narrow columns and
	   the actions row runs past the right edge. Forced flat here so the phone
	   layout cannot depend on which breakpoint the block library happens to
	   use, or on how wide the device reports its layout viewport to be.
	   ====================================================================== */

	/* A single flex column rather than `display: block`, so the summary can
	   still be reordered above the form with `order`. */
	body.woocommerce-checkout .wc-block-components-sidebar-layout {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 0 !important;
	}

	body.woocommerce-checkout .wc-block-checkout__main,
	body.woocommerce-checkout .wc-block-checkout__sidebar {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
		flex: none !important;
		padding-inline: 0 !important;
	}

	/* The summary reads first: what am I paying for, then who receives it. */
	body.woocommerce-checkout .wc-block-checkout__sidebar {
		order: -1;
		margin: 0 0 1.1rem !important;
	}

	/* The block library reserves desktop separation above the checkout block;
	   on a phone that landed as a second empty gap under the step card. */
	body.woocommerce-checkout .wp-block-woocommerce-checkout,
	body.woocommerce-checkout .wc-block-checkout {
		margin-block-start: 1.1rem;
	}

	body.woocommerce-checkout .wc-block-checkout .wc-block-checkout {
		margin-block-start: 0;
	}

	body.woocommerce-checkout .wc-block-checkout__form,
	body.woocommerce-checkout .wc-block-components-form {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}

	body.woocommerce-checkout .wc-block-checkout__actions_row {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding-inline: 0;
	}

	/* The block library repeats the whole totals table inside the actions area
	   on narrow layouts. On this page the review card above it and the sticky
	   bar below it both already carry the total, so the third copy is noise.
	   The notices and the native place-order row it also contains stay. */
	body.woocommerce-checkout .wc-block-checkout__actions > .wc-block-components-totals-wrapper,
	body.woocommerce-checkout .wc-block-checkout__actions > .wc-block-components-checkout-step__heading {
		display: none;
	}

	/* ======================================================================
	   2.3 Order summary accordion.
	   ====================================================================== */

	body.woocommerce-checkout .wc-block-checkout__sidebar {
		border: 1px solid var(--etebar-border);
		border-radius: var(--etebar-flow-radius);
		background: var(--etebar-flow-surface);
		overflow: hidden;
	}

	/* Two rows of information, not one: the action label reads first, the item
	   count and order total sit under it. Side by side they wrapped the label
	   onto two lines at 360px, and the brief asks for the count and the total
	   to be legible while the panel is closed. */
	/* Matches the specificity of the earlier disclosure pass, which set this
	   element to a `space-between` flex row with `display: flex !important`.
	   That put the count beside the label instead of under it, and at 360px it
	   wrapped both onto two lines each. */
	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		display: grid !important;
		min-height: 64px;
		min-block-size: 64px;
		box-sizing: border-box;
		grid-template-columns: minmax(0, 1fr) 22px !important;
		align-items: center;
		justify-content: stretch !important;
		gap: 0.2rem 0.75rem;
		margin: 0;
		padding: 0.9rem 1rem;
		border: 0;
		background: transparent;
		color: var(--etebar-flow-ink);
		cursor: pointer;
		font-family: var(--etebar-sans);
		font-size: var(--etebar-flow-card-title);
		font-weight: 700;
		line-height: 1.25;
	}

	.etebar-order-summary__label {
		grid-column: 1 !important;
		grid-row: 1 !important;
		min-width: 0;
	}

	/* Count and total, read off the native totals so the collapsed header can
	   never disagree with what the order is placed with. */
	.etebar-order-summary__meta {
		grid-column: 1 !important;
		grid-row: 2 !important;
		min-width: 0;
		color: var(--etebar-flow-muted);
		font-size: 15px;
		font-weight: 600;
	}

	.etebar-order-summary__meta:empty {
		display: none;
	}

	/* The chevron the earlier pass already drew from borders, re-placed into
	   the grid so it sits centred against both rows rather than being pushed
	   by `space-between`. */
	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title::after {
		width: 10px;
		height: 10px;
		flex: none;
		grid-column: 2 !important;
		grid-row: 1 / 3 !important;
		margin-block-start: -4px;
		justify-self: center;
		align-self: center;
		transform: rotate(45deg);
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title.is-open::after,
	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title[aria-expanded="true"]::after {
		margin-block-start: 4px;
		transform: rotate(225deg);
	}

	body.woocommerce-checkout .wc-block-components-checkout-order-summary__content {
		padding: 0 1rem 1rem;
		border-top: 1px solid var(--etebar-muted);
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item {
		padding-block: 0.9rem;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
		width: 56px;
		height: 56px;
		box-sizing: border-box;
		padding: 3px;
		border: 1px solid var(--etebar-muted);
		border-radius: 10px;
		background: #fff;
		object-fit: contain;
	}

	body.woocommerce-checkout .wc-block-components-product-name {
		font-size: var(--etebar-flow-body);
		font-weight: 650;
		line-height: 1.3;
	}

	body.woocommerce-checkout .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wc-block-components-totals-item__value {
		font-size: 16px;
	}

	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
		font-family: var(--etebar-serif);
		font-size: 21px;
		font-weight: 700;
	}

	body.woocommerce-checkout .wc-block-components-panel__button {
		min-height: 52px;
		font-size: var(--etebar-flow-body);
	}

	/* ======================================================================
	   2.4 One stepper for both flows.

	   Same badge size, same active and completed treatment, same connector,
	   same label type. Only the step names differ.
	   ====================================================================== */

	.special-request-wizard__progress ol,
	.etebar-checkout-orientation .etebar-checkout-progress ol {
		position: relative;
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	/* One hairline behind the badges, stopping short of the first and last so
	   it never runs to the edge of the card. */
	.special-request-wizard__progress ol::before,
	.etebar-checkout-orientation .etebar-checkout-progress ol::before {
		position: absolute;
		z-index: 0;
		top: 22px;
		right: calc(12.5% + 20px);
		left: calc(12.5% + 20px);
		height: 1px;
		background: rgb(23 58 85 / 24%);
		content: "";
	}

	.special-request-wizard__progress li,
	.etebar-checkout-orientation .etebar-checkout-progress li {
		position: relative;
		z-index: 1;
		display: grid;
		min-width: 0;
		justify-items: center;
		gap: 0.45rem;
		padding: 0 0.15rem;
	}

	.etebar-checkout-progress button {
		display: grid;
		width: 100%;
		min-height: 0;
		grid-template-rows: auto auto;
		justify-items: center;
		gap: 0.45rem;
		padding: 0;
	}

	.special-request-wizard__progress-badge,
	.etebar-checkout-progress__number {
		display: inline-flex;
		width: 44px;
		height: 44px;
		flex: 0 0 44px;
		align-items: center;
		justify-content: center;
		border: 1px solid rgb(23 58 85 / 30%);
		border-radius: 50%;
		background: #fffdf8;
		color: var(--etebar-flow-line);
	}

	.special-request-wizard__progress-badge .etebar-step-icon,
	.etebar-checkout-progress__number::before {
		width: 22px;
		height: 22px;
		mask-size: 22px 22px;
	}

	/* Active: filled navy with a gold ring, the same emphasis in both flows. */
	.special-request-wizard__progress li.is-active .special-request-wizard__progress-badge,
	.etebar-checkout-progress .is-current .etebar-checkout-progress__number {
		border-color: #c6a052;
		background: var(--etebar-flow-line);
		color: #f3d99c;
		box-shadow: 0 0 0 4px rgb(198 160 82 / 20%);
	}

	/* Completed: filled navy, no ring, tick instead of the pictogram. */
	.special-request-wizard__progress li.is-complete .special-request-wizard__progress-badge,
	.etebar-checkout-progress .is-complete .etebar-checkout-progress__number {
		border-color: var(--etebar-flow-line);
		background: var(--etebar-flow-line);
		color: #f3d99c;
		box-shadow: none;
	}

	.special-request-wizard__progress li.is-complete .special-request-wizard__progress-check {
		width: 22px;
		height: 22px;
	}

	.etebar-checkout-progress .is-complete .etebar-checkout-progress__number::after {
		font-size: 1.05rem;
	}

	.special-request-wizard__progress li,
	.special-request-wizard__progress-label,
	.etebar-checkout-progress strong {
		color: var(--etebar-flow-muted);
		font-family: var(--etebar-sans);
		font-size: 12.5px;
		font-weight: 600;
		line-height: 1.25;
		text-align: center;
	}

	.special-request-wizard__progress li.is-active,
	.special-request-wizard__progress li.is-complete,
	.etebar-checkout-progress .is-current strong,
	.etebar-checkout-progress .is-complete strong {
		color: var(--etebar-flow-ink);
	}

	/* The per-step status sentence duplicates what the badge state already
	   shows, and at four across it forced the labels down to 10px. The
	   accessible name on the button keeps carrying it. */
	.etebar-checkout-progress small[data-etebar-step-status] {
		display: none;
	}

	/* ======================================================================
	   2.5 Step headings and body copy.
	   ====================================================================== */

	.etebar-checkout-step-intro .eyebrow,
	.special-request-page .order-request-form__group .eyebrow {
		font-size: 12.5px;
		letter-spacing: 0.1em;
	}

	.etebar-checkout-step-intro h3,
	.special-request-page .order-request-form__title-row h3 {
		margin: 0.25rem 0 0.5rem;
		font-family: var(--etebar-serif);
		font-size: var(--etebar-flow-step-title);
		font-weight: 600;
		line-height: 1.2;
	}

	.etebar-checkout-step-intro > p,
	.special-request-page .order-request-form__help {
		color: var(--etebar-flow-muted);
		font-size: var(--etebar-flow-body);
		line-height: 1.55;
	}

	/* ======================================================================
	   2.6 Form controls — one size in both flows.
	   ====================================================================== */

	body.woocommerce-checkout .wc-block-components-text-input input,
	body.woocommerce-checkout .wc-block-components-text-input textarea,
	body.woocommerce-checkout .wc-blocks-components-select__select,
	body.woocommerce-checkout .wc-block-components-combobox input,
	.special-request-page .order-request-form input,
	.special-request-page .order-request-form select {
		min-height: var(--etebar-flow-control) !important;
		box-sizing: border-box;
		border-radius: 11px;
		font-size: var(--etebar-flow-input) !important;
	}

	.special-request-page .order-request-form textarea {
		min-height: 116px;
		border-radius: 11px;
		font-size: var(--etebar-flow-input);
		line-height: 1.5;
	}

	body.woocommerce-checkout .wc-block-components-text-input label,
	body.woocommerce-checkout .wc-blocks-components-select__label {
		font-size: var(--etebar-flow-label);
	}

	body.woocommerce-checkout .wc-block-components-checkbox__label,
	body.woocommerce-checkout .wc-block-components-checkout-step__description,
	.etebar-checkout-field-help {
		font-size: var(--etebar-flow-help);
		line-height: 1.5;
	}

	body.woocommerce-checkout .wc-block-components-checkbox__input {
		width: 24px;
		height: 24px;
	}

	.special-request-page .order-request-form label > span:not(.order-request-field-error) {
		font-size: var(--etebar-flow-label);
	}

	.special-request-page .order-request-field-help,
	.special-request-page .order-request-field-error {
		font-size: var(--etebar-flow-help);
		line-height: 1.5;
	}

	/* ======================================================================
	   2.7 One sticky action bar for both flows.

	   Flex rather than a fixed grid so that when Back is hidden on step 1 the
	   primary simply takes the whole row instead of leaving a gap where the
	   Back button would have been.
	   ====================================================================== */

	body.woocommerce-checkout .etebar-checkout-sticky,
	.special-request-page .special-request-wizard__actions {
		position: sticky;
		z-index: 6;
		right: auto;
		bottom: 0;
		left: auto;
		display: flex !important;
		width: auto !important;
		/* An earlier rule stacks `.order-request-submit` into a column, which
		   put Send under Back on the review step. */
		flex-direction: row !important;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.6rem !important;
		box-sizing: border-box;
		margin: 1.5rem calc(-1 * var(--etebar-flow-gutter)) 0 !important;
		padding: 12px var(--etebar-flow-gutter) calc(12px + env(safe-area-inset-bottom, 0px)) !important;
		border: 0;
		border-block-start: 1px solid var(--etebar-flow-rule);
		border-radius: 0;
		background: #f5f0e6;
	}

	/* The running total keeps its own row above the two actions, so the shared
	   [Back] [Continue] composition stays identical between the flows.
	   `order: -1` is what puts it there: in DOM order it sits between the two
	   buttons, and a full-width flex line in that position pushed Back onto a
	   row of its own and the primary onto a third. */
	body.woocommerce-checkout .etebar-checkout-sticky > div {
		display: flex;
		width: 100%;
		flex: 1 0 100%;
		order: -1;
		align-items: baseline;
		justify-content: space-between;
		gap: 0.5rem;
	}

	body.woocommerce-checkout .etebar-checkout-sticky > div span {
		color: var(--etebar-flow-muted);
		font-size: 14.5px;
		font-weight: 600;
	}

	body.woocommerce-checkout .etebar-checkout-sticky > div strong {
		color: var(--etebar-flow-ink);
		font-family: var(--etebar-serif);
		font-size: 21px;
		font-weight: 700;
	}

	/* Step 4's action row also carries `.order-request-submit`, whose earlier
	   rule paints every `.button` inside it navy with `!important`. Without
	   matching that specificity, Back arrived on the review step as a second
	   filled primary the same width as Send. */
	body.woocommerce-checkout .etebar-checkout-sticky__back,
	.special-request-page .special-request-wizard__back,
	.special-request-page .order-request-submit .special-request-wizard__back {
		flex: 0 0 auto;
		width: auto;
		max-width: none;
		min-width: 0;
		min-height: var(--etebar-flow-cta);
		padding-inline: 1.1rem;
		border: 1px solid rgb(23 58 85 / 46%) !important;
		border-radius: 12px;
		background: transparent !important;
		color: var(--etebar-flow-line) !important;
		font-family: var(--etebar-sans) !important;
		font-size: 16px;
		font-weight: 650;
	}

	body.woocommerce-checkout .etebar-checkout-sticky__next,
	.special-request-page .special-request-wizard__actions .button--primary,
	.special-request-page .special-request-wizard__actions button[type="submit"],
	.special-request-page .order-request-submit .button--primary,
	.special-request-page .order-request-submit button[type="submit"] {
		/* Basis 0, not auto: the Dari and Pashto labels are long enough that a
		   content-sized primary pushed itself onto a second row next to Back at
		   360px. With basis 0 it takes the space that is left and wraps its own
		   label instead. */
		flex: 1 1 0%;
		width: auto;
		min-width: 0;
		min-height: var(--etebar-flow-cta);
		height: auto;
		padding-block: 0.5rem;
		padding-inline: 0.9rem;
		border: 1px solid var(--etebar-navy);
		border-radius: 12px;
		background: var(--etebar-navy);
		color: #fff;
		font-size: 17px;
		font-weight: 700;
		letter-spacing: 0.01em;
		line-height: 1.25;
		white-space: normal;
	}

	/* Keeps a focused field clear of the bar when the browser scrolls it in. */
	body.woocommerce-checkout .wc-block-components-form :is(input, textarea, select),
	.special-request-page .order-request-form :is(input, textarea, select) {
		scroll-margin-block-end: 132px;
	}

	/* ======================================================================
	   2.8 One review-card language for both flows.
	   ====================================================================== */

	.etebar-checkout-review__grid,
	.special-request-review {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.8rem;
		margin-bottom: 1.5rem;
	}

	.etebar-checkout-review__grid > section,
	.special-request-review section {
		min-width: 0;
		border: 1px solid var(--etebar-flow-rule);
		border-radius: var(--etebar-flow-radius);
		padding: 1rem 1.1rem;
		background: #fffdf8;
	}

	.etebar-checkout-review__grid > section header,
	.special-request-review header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
		margin-bottom: 0.55rem;
	}

	.etebar-checkout-review__grid h4,
	.special-request-review h4 {
		margin: 0;
		color: var(--etebar-flow-ink);
		font-family: var(--etebar-serif);
		font-size: var(--etebar-flow-card-title);
		line-height: 1.3;
	}

	.etebar-checkout-review__grid header button,
	.special-request-review header button {
		min-width: 44px;
		min-height: 44px;
		border: 0;
		border-radius: 8px;
		padding: 0.4rem 0.55rem;
		background: transparent;
		color: var(--etebar-flow-line);
		cursor: pointer;
		font-family: var(--etebar-sans);
		font-size: 15px;
		font-weight: 650;
		text-decoration: underline;
		text-decoration-color: #c6a052;
		text-underline-offset: 3px;
	}

	.etebar-checkout-review__grid dl > div,
	.special-request-review dl > div {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.15rem;
		padding-block: 0.6rem;
		border-top: 1px solid var(--etebar-flow-rule);
	}

	.etebar-checkout-review__grid dt,
	.special-request-review dt {
		color: var(--etebar-flow-muted);
		font-size: 14px;
		font-weight: 600;
		line-height: 1.45;
	}

	.etebar-checkout-review__grid dd,
	.special-request-review dd {
		min-width: 0;
		margin: 0;
		color: var(--etebar-flow-line);
		font-size: var(--etebar-flow-body);
		font-weight: 650;
		line-height: 1.5;
		overflow-wrap: anywhere;
		white-space: pre-line;
	}

	.etebar-checkout-review__grid [data-etebar-review-row][hidden] {
		display: none;
	}

	/* The totals card reads as money: label left, figure right, total last. */
	.etebar-checkout-review__totals dl > div {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 0.75rem;
	}

	.etebar-checkout-review__totals dd {
		text-align: end;
		white-space: nowrap;
	}

	.etebar-checkout-review__totals dl > div.is-total dt,
	.etebar-checkout-review__totals dl > div.is-total dd {
		color: var(--etebar-flow-ink);
		font-family: var(--etebar-serif);
		font-size: 20px;
		font-weight: 700;
	}

	/* ======================================================================
	   2.9 Location component at phone widths.
	   ====================================================================== */

	.etebar-location-picker--checkout {
		margin: 1.15rem 0;
		padding: 1rem;
	}

	.etebar-location-picker__heading h4 {
		font-size: 21px;
	}

	.etebar-location-picker__intro {
		margin: 0.5rem 0 1rem !important;
		font-size: var(--etebar-flow-body);
	}

	.etebar-location-picker__ui > label {
		font-size: var(--etebar-flow-label);
	}

	.etebar-location-picker__ui input[type="search"],
	.etebar-location-picker__ui gmp-basic-place-autocomplete::part(input),
	.etebar-location-picker__ui gmp-place-autocomplete::part(input) {
		min-height: var(--etebar-flow-control);
		font-size: var(--etebar-flow-input);
	}

	.etebar-location-picker__canvas {
		height: 280px;
		margin-top: 0.85rem;
	}

	.etebar-location-picker__area-list {
		gap: 0.45rem;
	}

	.etebar-location-picker__area {
		min-height: 44px;
		padding: 0 0.8rem;
		font-size: 14.5px;
	}

	.etebar-location-picker__resolved,
	.etebar-location-picker__fallback,
	.etebar-location-picker__hint {
		border-radius: 0 8px 8px 0;
		font-size: 15px !important;
	}

	html[dir="rtl"] .etebar-location-picker__resolved,
	html[dir="rtl"] .etebar-location-picker__fallback,
	html[dir="rtl"] .etebar-location-picker__hint {
		border-radius: 8px 0 0 8px;
	}

	/* ======================================================================
	   2.10 Special Request scale pass.

	   Structure is unchanged from the previous pass; this is size and rhythm
	   only, bringing it onto the shared tokens above.
	   ====================================================================== */

	.special-request-page .order-request-panel__intro h2 {
		font-size: 2rem;
		line-height: 1.12;
	}

	.special-request-page .order-request-panel__intro > p:last-child {
		font-size: var(--etebar-flow-body);
		line-height: 1.55;
	}

	.special-request-page .special-request-type legend > span {
		font-size: var(--etebar-flow-label);
	}

	.special-request-page .special-request-type__choices label {
		min-height: 60px;
		border-radius: var(--etebar-flow-radius);
		padding-inline: 1.05rem;
	}

	.special-request-page .special-request-type__choices label span {
		font-size: var(--etebar-flow-body);
	}

	.special-request-page .order-request-consent {
		gap: 0.75rem;
	}

	.special-request-page .order-request-consent span {
		font-size: var(--etebar-flow-help);
		line-height: 1.55;
	}

	.special-request-page .order-request-consent input[type="checkbox"] {
		width: 24px;
		height: 24px;
		min-height: 0 !important;
		flex: 0 0 24px;
	}

	.special-request-page .special-request-substep__title {
		font-size: 13px;
		letter-spacing: 0.1em;
	}
}

/* ---------- Narrow phones ---------- */

@media (max-width: 380px) {

	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-step-title: 22px;
		--etebar-flow-control: 54px;
		--etebar-flow-cta: 54px;
	}

	.special-request-wizard__progress li,
	.special-request-wizard__progress-label,
	.etebar-checkout-progress strong {
		font-size: 11.5px;
	}

	.special-request-wizard__progress-badge,
	.etebar-checkout-progress__number {
		width: 42px;
		height: 42px;
		flex-basis: 42px;
	}

	.special-request-wizard__progress ol::before,
	.etebar-checkout-orientation .etebar-checkout-progress ol::before {
		top: 21px;
	}

	.etebar-order-summary__meta {
		font-size: 14px;
	}
}

/* Final cascade guard: this pass intentionally follows every earlier mobile layer. */
@media (max-width: 820px) {
	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-control: 56px;
		--etebar-flow-cta: 56px;
		--etebar-flow-input: 16.5px;
		--etebar-flow-body: 16px;
		--etebar-flow-label: 16px;
		--etebar-flow-help: 15.5px;
		--etebar-flow-step-title: 26px;
		--etebar-flow-card-title: 20px;
	}

	body.woocommerce-checkout .entry__header h1,
	.special-request-page .order-request-hero__intro h1 {
		font-size: 40px !important;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar {
		position: static !important;
		top: auto !important;
		border: 0;
		border-block: 1px solid var(--etebar-flow-rule);
		border-radius: 0;
		background: transparent;
		overflow: visible;
		transform: none !important;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		padding-inline: 0.15rem;
	}

	body.woocommerce-checkout .etebar-checkout-sticky > div {
		display: none;
	}

	body.woocommerce-checkout .etebar-checkout-sticky,
	.special-request-page .special-request-wizard__actions {
		flex-wrap: nowrap !important;
		padding-block-start: 10px !important;
		padding-block-end: calc(10px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.special-request-page .special-request-substep__title,
	.special-request-page .special-request-review h4 {
		font-size: 20px;
		letter-spacing: 0;
		text-transform: none;
	}
}

@media (max-width: 380px) {
	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-step-title: 25px;
		--etebar-flow-control: 54px;
		--etebar-flow-cta: 54px;
	}

	.etebar-order-summary__meta {
		font-size: 15px;
	}
}

@media (max-width: 820px) {
	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title {
		font-size: 0 !important;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title::before {
		display: block;
		grid-column: 1;
		grid-row: 1 / 3;
		align-self: center;
		color: var(--etebar-flow-ink);
		content: attr(data-etebar-summary-label) "\A" attr(data-etebar-summary-meta);
		font-size: 17px;
		font-weight: 700;
		line-height: 1.42;
		white-space: pre-line;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title > * {
		display: none !important;
	}

	body.woocommerce-checkout .wc-block-checkout__shipping-option {
		display: none !important;
	}

	body.woocommerce-checkout .wc-block-checkout__actions .wp-block-woocommerce-checkout-order-summary-block {
		display: none !important;
	}

	body.woocommerce-cart .etebar-coupon,
	body.woocommerce-checkout .etebar-coupon {
		border-radius: 0 !important;
		padding: 0 !important;
		box-shadow: none !important;
	}

	body.woocommerce-cart .etebar-coupon label[data-etebar-coupon-code-label],
	body.woocommerce-checkout .etebar-coupon label[data-etebar-coupon-code-label] {
		font-size: 0 !important;
	}

	body.woocommerce-cart .etebar-coupon label[data-etebar-coupon-code-label]::before,
	body.woocommerce-checkout .etebar-coupon label[data-etebar-coupon-code-label]::before {
		content: attr(data-etebar-coupon-code-label);
		font-size: 16px;
	}

	body.woocommerce-cart .etebar-coupon [data-etebar-coupon-apply-label],
	body.woocommerce-checkout .etebar-coupon [data-etebar-coupon-apply-label] {
		font-size: 0 !important;
	}

	body.woocommerce-cart .etebar-coupon [data-etebar-coupon-apply-label]::before,
	body.woocommerce-checkout .etebar-coupon [data-etebar-coupon-apply-label]::before {
		content: attr(data-etebar-coupon-apply-label);
		font-size: 16.5px;
	}
}

/* ==========================================================================
   Final mobile commerce polish.

   Everything below is scoped to `max-width: 820px` and to the cart, checkout
   and add-to-cart sheet. The desktop storefront is deliberately untouched:
   each correction here restores on a phone the treatment the desktop rules
   already have, rather than redefining both.
   ========================================================================== */

@media (max-width: 820px) {

	/* ======================================================================
	   A. Add-to-cart confirmation: a real bottom sheet.

	   It was a card floating 10px clear of all three screen edges, which is
	   the shape of a desktop dialog scaled down. Anchored flush to the bottom
	   with only the top corners rounded, it reads as a sheet the phone pushed
	   up, and the extra 20px of width buys the type its larger sizes without
	   the title wrapping to three lines.
	   ====================================================================== */

	.etebar-cart-confirmation,
	html[dir="rtl"] .etebar-cart-confirmation {
		right: 0;
		bottom: 0;
		left: 0;
		width: auto;
		border: 0;
		border-radius: 20px 20px 0 0;
		padding: 20px 20px calc(22px + env(safe-area-inset-bottom, 0px));
		box-shadow: 0 -16px 44px rgb(3 19 33 / 20%);
	}

	/* ---------- Dismiss timer ----------

	   Previously an inset capsule with 999px ends riding above the message.
	   A timer drawn as a pill reads as a decorative badge; drawn as a single
	   2px rule running the full width of the sheet's own square bottom edge,
	   it reads as a countdown and no radius can clip it. */
	.etebar-cart-confirmation::before,
	.etebar-cart-confirmation__progress {
		top: auto;
		right: 0;
		bottom: env(safe-area-inset-bottom, 0px);
		left: 0;
		height: 2px;
		border-radius: 0;
	}

	.etebar-cart-confirmation::before {
		background: var(--etebar-muted);
	}

	.etebar-cart-confirmation__progress {
		background: color-mix(in srgb, var(--etebar-navy) 70%, var(--etebar-border));
	}

	/* ---------- Message ---------- */

	.etebar-cart-confirmation .etebar-cart-confirmation__product {
		grid-template-columns: 78px minmax(0, 1fr);
		gap: 16px;
		padding: 2px 44px 0 0 !important;
	}

	html[dir="rtl"] .etebar-cart-confirmation .etebar-cart-confirmation__product {
		padding: 2px 0 0 44px !important;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product img {
		width: 78px;
		height: 78px;
		flex-basis: 78px;
		padding: 6px;
		border-radius: 14px;
	}

	/* The confirmation is the sentence the sheet exists to say, so it is no
	   longer the smallest type on it. */
	.etebar-cart-confirmation .etebar-cart-confirmation__success {
		margin: 0 0 5px;
		font-size: 15.5px;
		font-weight: 700;
		letter-spacing: 0;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__success::before {
		width: 19px;
		height: 19px;
		flex-basis: 19px;
		margin-inline-end: 8px;
		background-size: 19px 19px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__product strong {
		font-size: 20.5px;
		line-height: 1.24;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__count {
		margin: 6px 0 0;
		font-size: 15.5px;
		line-height: 1.4;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__close {
		top: 8px;
		inset-inline-end: 6px;
		width: 44px;
		height: 44px;
		font-size: 1.35rem;
	}

	/* ---------- Actions ---------- */

	.etebar-cart-confirmation .etebar-cart-confirmation__actions {
		gap: 12px !important;
		margin: 18px 0 0 !important;
		padding: 18px 0 0 !important;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .button {
		min-height: 58px !important;
		border-radius: 14px;
		font-size: 18px;
	}

	.etebar-cart-confirmation .etebar-cart-confirmation__actions .text-link {
		min-height: 54px !important;
		border-radius: 14px;
		font-size: 17px;
	}

	/* ======================================================================
	   B. Cart readability.

	   The card layout was already right; every size in it was one step below
	   what the same content is given on the product and checkout pages. The
	   variation line ("Tea choice: Black Tea — 420 g") was the worst of it at
	   14px grey, which is the size this pass exists to remove.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-cart-items__row {
		row-gap: 10px;
		margin-bottom: 14px;
		padding: 14px !important;
	}

	body.woocommerce-cart .wc-block-components-product-name {
		margin-bottom: 6px;
		font-size: 19px !important;
	}

	body.woocommerce-cart .wc-block-cart-item__prices {
		margin-bottom: 6px;
	}

	body.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price {
		font-size: 21px !important;
	}

	body.woocommerce-cart .wc-block-components-product-metadata {
		font-size: 16px !important;
		line-height: 1.5 !important;
	}

	body.woocommerce-cart .wc-block-components-product-details__name {
		color: var(--etebar-navy);
		font-weight: 700;
	}

	body.woocommerce-cart .wc-block-cart-item__quantity {
		padding-top: 12px !important;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector {
		min-width: 132px;
		height: 48px;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__input {
		font-size: 17.5px;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__button {
		width: 46px;
		min-height: 46px;
	}

	body.woocommerce-cart .wc-block-cart-item__remove-link {
		width: 48px !important;
		height: 48px !important;
	}

	body.woocommerce-cart .wc-block-components-totals-item__label,
	body.woocommerce-cart .wc-block-components-totals-item__value {
		font-size: 17px;
	}

	/* ======================================================================
	   C. Coupon disclosure, cart and checkout.

	   Three separate faults read as "broken". The trigger was a two-column
	   grid, but the block markup leaves the literal string "Add coupons" as a
	   bare text node inside the button: hidden at `font-size: 0` it is still
	   an anonymous grid item, it took the second column, and the chevron was
	   pushed onto a second row below the label. A flex row cannot be
	   displaced that way -- a zero-width item between the two ends changes
	   nothing. The disclosure also sat inside a totals wrapper that draws its
	   own rule, so every hairline appeared twice. And the field and its Apply
	   button were sized independently, so they did not agree on a height.
	   ====================================================================== */

	body.woocommerce-cart .etebar-coupon-wrapper,
	body.woocommerce-checkout .etebar-coupon-wrapper {
		border: 0 !important;
		padding-block: 0 !important;
	}

	body.woocommerce-cart .etebar-coupon,
	body.woocommerce-checkout .etebar-coupon {
		margin: 0 !important;
		border: 0 !important;
		border-block-start: 1px solid var(--etebar-flow-rule, rgb(198 160 82 / 32%)) !important;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button {
		display: flex !important;
		min-height: 58px;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		grid-template-columns: none !important;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button::before,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button::before {
		flex: 0 1 auto;
		font-size: 17px;
		font-weight: 700;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button::after,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button::after {
		flex: 0 0 auto;
		width: 10px;
		height: 10px;
		margin-inline-end: 3px;
	}

	/* One row, one height. `align-items: stretch` is what makes the Apply
	   button match the field instead of guessing at the same number. */
	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__form,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__form {
		grid-template-columns: minmax(0, 1fr) auto !important;
		align-items: stretch;
		gap: 10px;
		padding: 0 0 18px !important;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__input input,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__input input {
		width: 100%;
		height: 58px;
		min-height: 58px;
		box-sizing: border-box;
		padding: 21px 14px 5px;
		border: 1px solid var(--etebar-border);
		border-radius: 12px;
		font-size: 16.5px;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__input label,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__input label {
		inset-inline-start: 14px;
	}

	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__button,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__button {
		height: 58px;
		min-height: 58px;
		min-width: 104px;
		box-sizing: border-box;
		padding: 0 22px;
		border-radius: 12px;
		font-size: 16.5px;
	}

	/* Disabled until a code is typed: a solid navy button that does nothing
	   when pressed is the single most confusing state this block has. */
	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__button:disabled,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__button:disabled {
		border-color: var(--etebar-border);
		background: var(--etebar-muted);
		color: var(--etebar-gray);
		opacity: 1;
	}

	/* The panel puts focus in the field the moment it opens, and the theme's
	   3px ring at 2px offset drew a second rounded box around the first --
	   the box-in-box this pass is removing everywhere else. Still clearly a
	   focus ring, no longer a frame. */
	body.woocommerce-cart .etebar-coupon .wc-block-components-totals-coupon__input input:focus-visible,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__input input:focus-visible {
		outline: 2px solid var(--etebar-gold);
		outline-offset: 0;
	}

	/* Once the label has floated to the top of the field it is a field label,
	   not body copy, and at 16px it read as a value the buyer had typed. */
	body.woocommerce-cart .etebar-coupon .is-active label[data-etebar-coupon-code-label]::before,
	body.woocommerce-checkout .etebar-coupon .is-active label[data-etebar-coupon-code-label]::before {
		font-size: 13.5px;
	}

	/* ======================================================================
	   D. Checkout stepper alignment.

	   The four columns are equal, but each badge sat at the left edge of its
	   own column rather than its centre: `justify-items: center` on the item
	   let the button shrink to the width of its label, and the label widths
	   differ, so the four badges landed at four unrelated offsets. The single
	   connector behind them is positioned from the column centres, so it met
	   the first badge 19px late and ran underneath the last one. Stretching
	   the button to fill its column puts every badge on its column centre,
	   which is the geometry the connector already assumes.
	   ====================================================================== */

	/* The item resolved to two grid tracks -- the button in the first, sized
	   to its label, and the remainder left in a second -- so `width: 100%` on
	   the button measured 100% of a track that was only ever as wide as the
	   word inside it. One explicit `1fr` column, and the button told to span
	   it, removes the second track and the guesswork with it. */
	.etebar-checkout-orientation .etebar-checkout-progress li {
		padding-inline: 4px;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-auto-flow: row !important;
		justify-items: stretch !important;
	}

	.etebar-checkout-orientation .etebar-checkout-progress li > button {
		width: 100% !important;
		grid-column: 1 / -1 !important;
		justify-self: stretch !important;
		justify-items: center !important;
	}

	.etebar-checkout-orientation .etebar-checkout-progress__number {
		justify-self: center;
	}

	/* 4px of air between the badge and the rule, at both ends of every gap. */
	.etebar-checkout-orientation .etebar-checkout-progress ol::before {
		right: calc(12.5% + 26px);
		left: calc(12.5% + 26px);
	}

	body.woocommerce-checkout .etebar-checkout-progress {
		margin: 0.85rem 0 0.5rem !important;
	}

	/* ======================================================================
	   E. Dead space under the checkout.

	   The sticky action bar is in normal flow and reserves its own height at
	   the end of the document, so the 90px of body padding added for it was
	   never needed. Below 600px another rule already zeroed this; between
	   601px and 820px it survived as 90px of blank page under the footer that
	   the page could still be scrolled into.
	   ====================================================================== */

	body.woocommerce-checkout.etebar-checkout-steps-ready {
		padding-bottom: 0 !important;
	}

	/* ======================================================================
	   F. Form and contact area.
	   ====================================================================== */

	body.woocommerce-checkout {
		--etebar-flow-help: 15px;
	}

	body.woocommerce-checkout .wc-block-components-text-input input,
	body.woocommerce-checkout .wc-block-components-textarea {
		font-size: var(--etebar-flow-input) !important;
	}

	/* The log-in prompt was a lone right-aligned link floating over the first
	   field with nothing to align to. */
	body.woocommerce-checkout .wc-block-checkout__login-prompt {
		margin: 0 0 0.35rem;
		font-size: var(--etebar-flow-help);
		text-align: start;
	}

	body.woocommerce-checkout .etebar-checkout-field-help {
		margin-top: 0.4rem;
		font-size: var(--etebar-flow-help) !important;
		line-height: 1.45 !important;
	}

	/* ======================================================================
	   G. Delivery step: one block, not five.

	   Search, map, resolved line, popular areas, hint and the written address
	   fields each carried their own margin, so the step scrolled as a stack of
	   unrelated panels. The gaps are halved and the hint loses its tinted box,
	   which was the only card-like surface left in the step.
	   ====================================================================== */

	.etebar-location-picker--checkout .etebar-location-picker__heading {
		margin-bottom: 0.35rem;
	}

	.etebar-location-picker--checkout .etebar-location-picker__ui {
		margin-top: 0.5rem;
	}

	.etebar-location-picker--checkout .etebar-location-picker__canvas {
		height: 250px;
		margin-top: 0.55rem;
	}

	.etebar-location-picker--checkout .etebar-location-picker__resolved,
	.etebar-location-picker--checkout .etebar-location-picker__zone-error {
		margin: 0.55rem 0 0 !important;
	}

	.etebar-location-picker--checkout .etebar-location-picker__areas {
		margin-block-start: 0.7rem !important;
	}

	.etebar-location-picker--checkout .etebar-location-picker__areas-title {
		margin: 0 0 0.45rem;
	}

	.etebar-location-picker--checkout .etebar-location-picker__area {
		min-height: 46px;
		font-size: 15.5px;
	}

	/* Selected state: the chip is now a real location choice, so it has to
	   look chosen rather than merely hovered. */
	.etebar-location-picker--checkout .etebar-location-picker__area.is-selected {
		border-color: var(--etebar-navy);
		background: var(--etebar-navy);
		color: #fff;
		font-weight: 700;
	}

	.etebar-location-picker--checkout .etebar-location-picker__hint {
		margin: 0.7rem 0 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		color: var(--etebar-flow-muted);
		font-size: var(--etebar-flow-help) !important;
		line-height: 1.45 !important;
	}

	/* Inline feedback: short, red, directly under the control it refers to. */
	.etebar-location-picker--checkout .etebar-location-picker__zone-error {
		color: var(--etebar-danger);
		font-weight: 650;
	}

	/* Afghanistan is the only country served, so it is never offered as a
	   choice on a phone. It stays populated by the server and by theme.js. */
	body.woocommerce-checkout .wc-block-components-address-form .wc-block-components-country-input,
	body.woocommerce-checkout .wc-block-components-address-form .wc-block-components-state-input,
	body.woocommerce-checkout .wc-block-components-address-form__country,
	body.woocommerce-checkout .wc-block-components-address-form__state {
		display: none !important;
	}
}

/* ==========================================================================
   Delivery location picker: search, suggestions, map, areas, status.

   Mobile-scoped like the rest of this pass. The section reads as one block --
   find, refine, describe -- rather than as five panels each with its own
   surface, so nothing here draws a card.
   ========================================================================== */

@media (max-width: 820px) {

	/* ---------- 1. Find your location ---------- */

	.etebar-location-picker__search {
		position: relative;
		margin-top: 0.55rem;
	}

	.etebar-location-picker__search-input {
		width: 100%;
		min-height: 56px;
		box-sizing: border-box;
		padding: 0 0.95rem;
		border: 1px solid var(--etebar-border);
		border-radius: 12px;
		background: #fff;
		color: var(--etebar-navy);
		font-family: var(--etebar-sans);
		font-size: 16.5px;
	}

	.etebar-location-picker__search-input::placeholder {
		color: var(--etebar-gray);
	}

	/* The suggestion list overlays the map rather than pushing it down, so the
	   field does not jump under the thumb while the customer is typing. */
	.etebar-location-picker__suggestions {
		position: absolute;
		z-index: 30;
		top: calc(100% + 6px);
		right: 0;
		left: 0;
		margin: 0;
		border: 1px solid var(--etebar-border);
		border-radius: 12px;
		background: #fff;
		box-shadow: 0 14px 34px rgb(3 19 33 / 16%);
		padding: 0;
		list-style: none;
		overflow: hidden;
	}

	.etebar-location-picker__suggestions[hidden] {
		display: none;
	}

	.etebar-location-picker__suggestion {
		display: block;
		width: 100%;
		min-height: 60px;
		box-sizing: border-box;
		padding: 0.7rem 0.95rem;
		border: 0;
		border-block-end: 1px solid var(--etebar-muted);
		background: transparent;
		color: var(--etebar-navy);
		cursor: pointer;
		font-family: var(--etebar-sans);
		text-align: start;
	}

	.etebar-location-picker__suggestions li:last-child .etebar-location-picker__suggestion {
		border-block-end: 0;
	}

	.etebar-location-picker__suggestion strong {
		display: block;
		font-size: 16.5px;
		font-weight: 700;
		line-height: 1.3;
	}

	.etebar-location-picker__suggestion span {
		display: block;
		margin-top: 2px;
		color: var(--etebar-gray);
		font-size: 15px;
		line-height: 1.35;
	}

	.etebar-location-picker__suggestion.is-active,
	.etebar-location-picker__suggestion:hover,
	.etebar-location-picker__suggestion:focus-visible {
		background: color-mix(in srgb, var(--etebar-gold) 12%, #fff);
	}

	/* ---------- 2. Confirmation ---------- */

	/* A short confirmation the customer can act on. The coordinates it used to
	   print are engineering detail and now travel only on the order. */
	.etebar-location-picker__resolved {
		margin: 0.7rem 0 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		color: var(--etebar-green-dark, #1c6b47);
		font-size: 16px !important;
		font-weight: 700;
		line-height: 1.4 !important;
	}

	.etebar-location-picker__zone-error {
		margin: 0.7rem 0 0 !important;
		color: var(--etebar-danger);
		font-size: var(--etebar-flow-help, 15px) !important;
		font-weight: 650;
		line-height: 1.45 !important;
	}

	/* ---------- 3. Written directions ---------- */

	/* The redundant "Area or district" box disappears while the map is doing
	   its job, and comes back only in the manual fallback below. Hidden with
	   the field still in the form: the value the order carries is derived from
	   the customer's actual choice, so nothing the backend needs is lost. */
	body:not(.etebar-location-manual) .wc-block-components-address-form__etebar-delivery-area,
	body:not(.etebar-location-manual) [data-etebar-manual-area] {
		display: none !important;
	}
}

/* --------------------------------------------------------------------------
   Location suggestion list: shared baseline.

   The picker now draws its own suggestion list instead of mounting Google's
   opaque autocomplete widget, so the list is new markup at every width and
   needs a base treatment here rather than only in the mobile block above.
   The phone sizing in that block still overrides these.
   -------------------------------------------------------------------------- */

.etebar-location-picker__search {
	position: relative;
}

.etebar-location-picker__search-input {
	width: 100%;
	min-height: 48px;
	box-sizing: border-box;
	padding: 0 0.85rem;
	border: 1px solid var(--etebar-border);
	border-radius: 10px;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 1rem;
}

.etebar-location-picker__suggestions {
	position: absolute;
	z-index: 30;
	top: calc(100% + 4px);
	right: 0;
	left: 0;
	margin: 0;
	border: 1px solid var(--etebar-border);
	border-radius: 10px;
	background: var(--etebar-paper);
	box-shadow: 0 12px 30px rgb(3 19 33 / 14%);
	padding: 0;
	list-style: none;
	overflow: hidden;
}

.etebar-location-picker__suggestions[hidden] {
	display: none;
}

/* The list items inherit the theme's inline-block chip treatment from the
   surrounding picker, which left each row only as wide as its own text and
   the separators stopping mid-panel. */
.etebar-location-picker__suggestions > li {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.etebar-location-picker__suggestion {
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0.6rem 0.85rem;
	border: 0;
	border-block-end: 1px solid var(--etebar-muted);
	border-radius: 0;
	background: transparent;
	color: var(--etebar-navy);
	cursor: pointer;
	font-family: var(--etebar-sans);
	text-align: start;
}

.etebar-location-picker__suggestions li:last-child .etebar-location-picker__suggestion {
	border-block-end: 0;
}

.etebar-location-picker__suggestion strong {
	display: block;
	font-size: 0.98rem;
	font-weight: 700;
	line-height: 1.3;
}

.etebar-location-picker__suggestion span {
	display: block;
	margin-top: 1px;
	color: var(--etebar-gray);
	font-size: 0.88rem;
	line-height: 1.35;
}

.etebar-location-picker__suggestion.is-active,
.etebar-location-picker__suggestion:hover,
.etebar-location-picker__suggestion:focus-visible {
	background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
}

.etebar-location-picker__resolved {
	color: var(--etebar-green-dark, #1c6b47);
	font-weight: 700;
}

.etebar-location-picker__zone-error {
	color: var(--etebar-danger);
	font-weight: 650;
}

/* ==========================================================================
   Cart and checkout readability pass — phone widths only.

   Everything below is scoped to `max-width: 820px`. Desktop already carries
   the larger treatment these rules restore on a phone, so nothing here is
   allowed to escape the media block.

   Three defects this addresses, each observed in the rendered pages rather
   than in the numbers:

   1. Cart type sat one step below the rest of the mobile storefront, and the
      variation line ("Tea choice: Black Tea — 420 g") was the smallest text
      on the page.
   2. The cart thumbnail stage was 80px wide, not the 96px the earlier pass
      intended: WooCommerce's own `.is-small table.wc-block-cart-items` rule
      is more specific than the theme's and kept the first grid track at
      80px. The product sources are square canvases whose subject fills only
      29–55% of the width, so at 80px the visible product was ~60px tall in a
      card 174px tall — the dead area under the image the brief describes.
   3. The checkout Order Summary drew two nested boxes: a bordered stage that
      stretched to the row's full height, and a bordered 48×56 image pinned
      to its top-left corner and overflowing it by 5px. That is why the
      thumbnails read as uncentred, worst on the taller bundle row.
   ========================================================================== */

@media (max-width: 820px) {

	/* ======================================================================
	   A. Cart card: image stage.

	   The track is forced past the block library's 80px, and the stage is
	   given a fractionally portrait box so the square source lands centred
	   with only a few pixels of air above and below it rather than a band of
	   white. The image is the only thing that draws a frame now -- the stage
	   owns the border, the image owns none -- and it fills the stage instead
	   of floating inside a second one.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-cart-items__row {
		grid-template-columns: 104px minmax(0, 1fr) !important;
		column-gap: 12px;
		padding: 13px !important;
	}

	body.woocommerce-cart .wc-block-cart-item__image {
		display: flex !important;
		width: 104px !important;
		min-width: 104px !important;
		max-width: 104px !important;
		height: 116px !important;
		align-items: center;
		justify-content: center;
		align-self: start;
		padding: 4px !important;
		border: 1px solid var(--etebar-border) !important;
		border-radius: 12px !important;
		background: #fff !important;
		box-sizing: border-box;
		overflow: hidden;
	}

	body.woocommerce-cart .wc-block-cart-item__image a {
		display: flex;
		width: 100%;
		height: 100%;
		align-items: center;
		justify-content: center;
	}

	body.woocommerce-cart .wc-block-cart-item__image img {
		display: block;
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		max-height: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 8px !important;
		background: #fff !important;
		object-fit: contain;
		object-position: center;
	}

	/* ======================================================================
	   B. Cart card: type scale.

	   Title and price carry the card; the variation line stays secondary in
	   colour and weight but is no longer small enough to have to lean in for.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-components-product-name {
		font-size: 20px !important;
		line-height: 1.26 !important;
	}

	body.woocommerce-cart .wc-block-cart-item__prices .wc-block-components-product-price {
		font-size: 21.5px !important;
	}

	body.woocommerce-cart .wc-block-components-product-metadata {
		font-size: 17px !important;
		line-height: 1.45 !important;
	}

	/* ======================================================================
	   C. Cart card: quantity and remove.

	   The stepper glyphs were drawn at 16px inside 46px buttons, which is the
	   one control on the card that has to be readable before it is pressed.
	   The cluster is trimmed by the few pixels the wider image stage takes,
	   and every touch target stays at or above 44px.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-cart-item__quantity {
		gap: 10px;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector {
		min-width: 128px;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__input {
		font-size: 18px;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__button {
		width: 44px;
		min-width: 44px;
		min-height: 46px;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector__button::before {
		font-size: 22px;
		line-height: 1;
	}

	body.woocommerce-cart .wc-block-cart-item__remove-link {
		width: 46px !important;
		min-width: 46px !important;
		height: 46px !important;
	}

	/* ======================================================================
	   D. Checkout Order Summary: one image stage.

	   A single square stage per line, the same size for a bundle and for a
	   normal product. `align-self: start` stops it stretching to the height
	   of the tallest row, and the image is centred in both axes inside it
	   with its own border and radius removed so no box sits inside another.
	   ====================================================================== */

	body.woocommerce-checkout .wc-block-components-order-summary-item__image {
		display: flex !important;
		width: 66px !important;
		min-width: 66px !important;
		max-width: 66px !important;
		height: 66px !important;
		flex: 0 0 66px;
		align-items: center;
		justify-content: center;
		align-self: start;
		margin-block-start: 2px;
		padding: 5px !important;
		border: 1px solid var(--etebar-muted) !important;
		border-radius: 12px !important;
		background: #fff !important;
		box-sizing: border-box;
		overflow: visible;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
		display: block;
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		max-height: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 8px !important;
		background: #fff !important;
		object-fit: contain !important;
		object-position: center !important;
	}

	/* The count badge is positioned against the stage, so it moves with it. */
	body.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
		min-width: 24px;
		height: 24px;
		font-size: 13.5px;
		font-weight: 700;
	}

	/* ======================================================================
	   E. Checkout Order Summary: type scale.

	   Sized against the checkout step below it, not above it: the summary is
	   what the customer is paying for, so it reads at the same distance as
	   the form, without becoming heavier than it.
	   ====================================================================== */

	body.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__title::before {
		font-size: 19px;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description {
		padding-inline-start: 16px !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
		font-size: 18px !important;
		font-weight: 700;
		line-height: 1.28;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices,
	body.woocommerce-checkout .wc-block-components-order-summary-item__individual-price {
		font-size: 17px !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-metadata,
	body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-details,
	body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-details__tea-choice,
	body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-details__name,
	body.woocommerce-checkout .wc-block-components-order-summary-item .wc-block-components-product-details__value {
		font-size: 16px !important;
		line-height: 1.45 !important;
	}

	body.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
	body.woocommerce-checkout .wc-block-components-order-summary-item__total-price .wc-block-components-product-price {
		font-size: 17.5px !important;
		font-weight: 650;
	}

	body.woocommerce-checkout .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wc-block-components-totals-item__value {
		font-size: 17px;
	}

	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
	body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
		font-size: 23px;
	}

	/* ======================================================================
	   F. Checkout: the remaining small roles.

	   Only the roles the screenshots showed sitting below the page's own
	   reading size are raised. The H1 is untouched.
	   ====================================================================== */

	body.woocommerce-checkout,
	body.page-template-page-special-request {
		--etebar-flow-body: 17px;
		--etebar-flow-label: 17px;
		--etebar-flow-help: 16px;
	}

	.etebar-checkout-orientation .etebar-checkout-progress strong {
		font-size: 13.5px;
	}

	/* Lifted field labels are the block library's own element, and it styles
	   them to truncate on one line -- "Additional delivery instructions
	   (optio…" is the longest of them. A label that has been moved above its
	   input has the full width of the step to use, so it wraps instead. */
	body.woocommerce-checkout .etebar-checkout-field--labelled > label {
		max-width: 100%;
		overflow: visible;
		line-height: 1.35;
		white-space: normal;
		text-overflow: clip;
	}

	.etebar-checkout-review__grid dt {
		font-size: 15.5px;
	}

	.etebar-checkout-review__grid header button {
		font-size: 16px;
	}

	.etebar-checkout-review__totals dl > div.is-total dt,
	.etebar-checkout-review__totals dl > div.is-total dd {
		font-size: 22px;
	}

	/* The coupon disclosure keeps the collapsed presentation it already has;
	   only the trigger label follows the summary heading up a step. */
	body.woocommerce-cart .etebar-coupon .wc-block-components-panel__button::before,
	body.woocommerce-checkout .etebar-coupon .wc-block-components-panel__button::before {
		font-size: 17.5px;
	}

	/* G. Expanded coupon row on checkout only.

	   The checkout script adds `etebar-checkout-field--labelled` to every
	   field so its label sits above the input rather than floating inside it,
	   and it reaches the coupon field too. That is the right label treatment
	   here -- it matches the rest of the step -- but the row was stretching
	   its two children from the same top edge, so Apply started 26px above
	   the input it belongs to. Aligned to the end of the row, the button and
	   the field share a baseline and a height. The cart's coupon has no
	   outside label, so nothing there moves. */
	body.woocommerce-checkout .etebar-coupon .wc-block-components-totals-coupon__form {
		align-items: end;
	}
}

/* --------------------------------------------------------------------------
   Narrow phones.

   At 360px the card's own width is the constraint: the quantity stepper and
   the remove control need 180px beside the image, so the stage takes the
   largest square the row can still spare rather than the 104px it gets from
   375px up.
   -------------------------------------------------------------------------- */

@media (max-width: 380px) {

	body.woocommerce-cart .wc-block-cart-items__row {
		grid-template-columns: 92px minmax(0, 1fr) !important;
		padding: 12px !important;
	}

	body.woocommerce-cart .wc-block-cart-item__image {
		width: 92px !important;
		min-width: 92px !important;
		max-width: 92px !important;
		height: 104px !important;
	}

	body.woocommerce-cart .wc-block-components-product-name {
		font-size: 19px !important;
	}

	body.woocommerce-cart .wc-block-components-product-metadata {
		font-size: 16.5px !important;
	}

	body.woocommerce-cart .wc-block-components-quantity-selector {
		min-width: 126px;
	}

	body.woocommerce-cart .wc-block-cart-item__remove-link {
		width: 44px !important;
		min-width: 44px !important;
		height: 44px !important;
	}

	.etebar-checkout-orientation .etebar-checkout-progress strong {
		font-size: 12.5px;
	}
}

/* ==========================================================================
   Focused mobile correction pass: homepage quick-add, cart card geometry and
   cart/Special Request rendered type sizes.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Homepage Everyday Essentials: no inline "View cart".

   WooCommerce's own add-to-cart.js appends `<a class="added_to_cart
   wc-forward">View cart</a>` as a sibling of every successful ajax add
   button. On the shop archive that link is the only feedback there is, so it
   stays. On the homepage quick-add list the theme already answers the add
   with the confirmation bottom sheet, which offers Checkout and View cart as
   its two actions -- the injected link is then a third, unstyled copy of one
   of them sitting inside the product card.

   Scoped to `.mobile-essential-item`, which exists only in front-page.php, so
   the archive, the PDP and the cart are untouched. The button's own
   `is-added` state is a separate element and keeps working.
   -------------------------------------------------------------------------- */

.mobile-essential-item .added_to_cart {
	display: none !important;
}

@media (max-width: 820px) {

	/* ======================================================================
	   2. Cart card: the image stage belongs to the whole card.

	   The stage was `height: 116px` with `align-self: start`, so in a row
	   whose content column runs to 176px -- any card whose title wraps to two
	   lines -- it stopped 60px short and left a white gap beside the quantity
	   stepper. Stretching the cell to the grid row and letting the image
	   contain itself inside removes the gap without making the card taller:
	   the row height is still set by the title/price/quantity column.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-cart-items__row {
		grid-template-columns: 112px minmax(0, 1fr) !important;
	}

	body.woocommerce-cart .wc-block-cart-item__image {
		width: 112px !important;
		min-width: 112px !important;
		max-width: 112px !important;
		height: auto !important;
		min-height: 116px;
		align-self: stretch !important;
		padding: 6px !important;
	}

	/* `object-fit: contain` keeps the whole product visible and centres it in
	   both axes inside the taller stage -- no clipping, no negative margins,
	   no transforms. */
	body.woocommerce-cart .wc-block-cart-item__image img {
		width: 100% !important;
		height: 100% !important;
		object-fit: contain;
		object-position: center center;
	}

	/* ======================================================================
	   3. Cart card: the variation line at its real rendered size.

	   The previous pass sized `.wc-block-components-product-metadata`, which
	   is only the wrapper. WooCommerce's cart stylesheet then sets the
	   element that actually carries the text with a doubled class --
	   `.wc-block-components-product-details.wc-block-components-product-details
	   { font-size: var(--wp--preset--font-size--x-small, ...) }` -- which
	   resolved to 11.375px here and won on specificity. "Tea choice: Black
	   Tea — 420 g" was rendering at 11.375px while the declared value said
	   17px. Matched with the same doubled class plus the body scope so the
	   rendered size is the one that was asked for.
	   ====================================================================== */

	body.woocommerce-cart .wc-block-components-product-metadata,
	body.woocommerce-cart .wc-block-components-product-details.wc-block-components-product-details,
	body.woocommerce-cart .wc-block-components-product-details li,
	body.woocommerce-cart .wc-block-components-product-details__name,
	body.woocommerce-cart .wc-block-components-product-details__value {
		font-size: 17.5px !important;
		line-height: 1.45 !important;
	}

	/* Secondary through colour and weight, not through size. */
	body.woocommerce-cart .wc-block-components-product-details__name {
		color: var(--etebar-navy);
		font-weight: 700;
	}

	body.woocommerce-cart .wc-block-components-product-details__value {
		color: var(--etebar-gray);
		font-weight: 400;
	}

	/* The remove control is an inline SVG, so its size comes from the element
	   rather than from the button's font-size. */
	body.woocommerce-cart .wc-block-cart-item__remove-link svg {
		width: 21px;
		height: 21px;
	}
}

@media (max-width: 380px) {

	/* 360px keeps the narrower stage the quantity cluster needs beside it,
	   but it stretches like the wider one. */
	body.woocommerce-cart .wc-block-cart-items__row {
		grid-template-columns: 96px minmax(0, 1fr) !important;
	}

	body.woocommerce-cart .wc-block-cart-item__image {
		width: 96px !important;
		min-width: 96px !important;
		max-width: 96px !important;
		height: auto !important;
		min-height: 104px;
		align-self: stretch !important;
	}

	body.woocommerce-cart .wc-block-components-product-metadata,
	body.woocommerce-cart .wc-block-components-product-details.wc-block-components-product-details,
	body.woocommerce-cart .wc-block-components-product-details__name,
	body.woocommerce-cart .wc-block-components-product-details__value {
		font-size: 17px !important;
	}
}

/* --------------------------------------------------------------------------
   4. Special Request: mobile type scale.

   Measured off the rendered page rather than off the declarations: the flow
   was carrying desktop-derived sizes in the roles a phone reads most --
   field labels at 16px, inputs at 16.5px, the review labels at 14px, the Back
   button at 16px and the progress labels at 12.5px. Each role is lifted to
   the size it needs and no further; hierarchy stays with colour and weight,
   and no spacing is added, so the page does not get longer.

   Mobile only, and the workflow, the map and the location architecture are
   untouched.
   -------------------------------------------------------------------------- */

@media (max-width: 820px) {

	/* Section and sub-step headings. */
	.special-request-page .special-request-substep__title,
	.special-request-page .etebar-location-picker__heading h4,
	.special-request-page .special-request-review h4 {
		font-size: 21px !important;
	}

	/* Field labels and the legend above the request-type cards. */
	.special-request-page .order-request-form label > span,
	.special-request-page .special-request-type legend,
	.special-request-page .etebar-location-picker__ui > label,
	.special-request-page .etebar-location-picker__areas-title {
		font-size: 17px !important;
		line-height: 1.4;
	}

	/* Typed values. Above the 16px threshold below which iOS Safari zooms the
	   whole page when the field takes focus. */
	.special-request-page .order-request-form input[type="text"],
	.special-request-page .order-request-form input[type="email"],
	.special-request-page .order-request-form input[type="tel"],
	.special-request-page .order-request-form input[type="search"],
	.special-request-page .order-request-form textarea,
	.special-request-page .order-request-form select,
	.special-request-page .etebar-location-picker__search-input {
		font-size: 17px !important;
	}

	/* Helper and body copy: secondary in colour, not in size. */
	.special-request-page .order-request-field-help,
	.special-request-page .etebar-location-picker__hint,
	.special-request-page .order-request-field-error {
		font-size: 16.5px !important;
		line-height: 1.45;
	}

	/* Request-type cards and the area chips are both tap targets with text. */
	.special-request-page .special-request-type__choices label span {
		font-size: 17px !important;
	}

	.special-request-page .etebar-location-picker__area {
		font-size: 15.5px !important;
	}

	/* Review: the label was the smallest type in the flow at 14px. */
	.special-request-page .special-request-review dt {
		font-size: 16px !important;
	}

	.special-request-page .special-request-review dd {
		font-size: 17.5px !important;
	}

	.special-request-page .order-request-consent span {
		font-size: 16px !important;
	}

	/* Actions: Back read a step below Continue for no reason. */
	.special-request-page .special-request-wizard__back,
	.special-request-page .order-request-submit .special-request-wizard__back,
	.special-request-page .special-request-wizard__actions .button--primary,
	.special-request-page .special-request-wizard__actions button[type="submit"],
	.special-request-page .order-request-submit button[type="submit"] {
		font-size: 17.5px !important;
	}

	/* Four labels across still fit at this size at 360px. */
	.special-request-page .special-request-wizard__progress li,
	.special-request-page .special-request-wizard__progress-label {
		font-size: 13.5px !important;
	}
}

/* ==========================================================================
   MOBILE QOL PASS — My Account opening rhythm.

   Mobile My Account opened on ~130px of empty cream between the header and
   the "My Account" heading. Three paddings stacked, exactly as they once did
   on the cart and the checkout: `.site-main` carried 50px of header-overlap
   clearance (`@media (max-width: 430px)`, 68px above that) and
   `.content-shell` added its base 5rem/80px on top.

   The header is sticky and already occupies flow, so none of that clearance
   is needed here. This is the identical correction `body.woocommerce-cart`
   and `body.woocommerce-checkout` already carry, landing on the same 26px
   rhythm the shop archive opens with, so the account page now matches Shop /
   Checkout / Special Request instead of sitting 100px lower than all of them.

   Scoped to max-width 820px — the mobile header breakpoint used by the cart
   and checkout corrections — so the desktop account layout is untouched.
   `body.woocommerce-account` covers both states of the page: the logged-out
   auth screen (`.etebar-account-auth-page`) and the logged-in dashboard
   (`body.logged-in.woocommerce-account`). The account card itself is not
   touched; only the space above it.
   ========================================================================== */

@media (max-width: 820px) {
	body.woocommerce-account .site-main {
		padding-block-start: 26px;
		min-height: 0;
	}

	body.woocommerce-account .content-shell {
		padding-top: 0;
	}
}

/* ==========================================================================
   MOBILE QOL PASS — image-stage skeletons.

   These are placeholders for IMAGE STAGES ONLY. Nothing here hides
   server-rendered text: titles, prices, unit notes and buttons keep painting
   at first paint, so the page is readable and tappable while photography is
   still arriving. There is no full-screen loader and no artificial delay.

   The skeleton is painted as an ::after overlay on the media stage rather than
   as a background on the stage itself, because every one of these stages
   already carries its own warm background and that background must survive.
   The stages also already reserve their geometry (explicit width/height
   attributes on the images plus aspect-ratio on the stages), so the overlay
   fills a box that was there before the image arrived -- it removes no layout
   jump and it introduces none.

   The `etebar-media--pending` class is added by JavaScript and only for an
   image that has not resolved yet. An image already in cache reports
   `complete` synchronously and is settled without ever being marked pending,
   so a warm load shows no flash. An image that ERRORS settles too: the
   skeleton clears and the stage falls back to its own background rather than
   shimmering forever.

   Colours come from the storefront tokens already in use on these stages
   (--etebar-muted over --etebar-paper, the same blend .etebar-shop-card__image
   paints), so the placeholder reads as a slightly deeper wash of the cream the
   card is already made of rather than a grey box.
   ========================================================================== */

/* Scoped to the mobile breakpoint. The stages exist in the desktop layout too
   (the homepage card grid is shipped at every width), so an unscoped rule put a
   shimmering placeholder on the desktop homepage during load -- a desktop
   visual change this mobile pass must not make. The desktop grid keeps loading
   exactly as it did. */
@media (max-width: 820px) {
	.etebar-media--pending {
		position: relative;
	}

	.etebar-media--pending::after {
		content: "";
		position: absolute;
		z-index: 2;
		inset: 0;
		background-color: color-mix(in srgb, var(--etebar-muted) 72%, var(--etebar-paper));
		background-image: linear-gradient(
			100deg,
			rgb(255 252 246 / 0%) 28%,
			rgb(255 252 246 / 55%) 50%,
			rgb(255 252 246 / 0%) 72%
		);
		background-repeat: no-repeat;
		background-size: 220% 100%;
		background-position: 140% 0;
		animation: etebar-media-shimmer 1.4s ease-in-out infinite;
		pointer-events: none;
	}

	/* The tint still communicates "image on its way"; only the sweep is dropped. */
	@media (prefers-reduced-motion: reduce) {
		.etebar-media--pending::after {
			background-image: none;
			animation: none;
		}
	}
}

@keyframes etebar-media-shimmer {
	from {
		background-position: 140% 0;
	}

	to {
		background-position: -40% 0;
	}
}

/* ==========================================================================
   MOBILE UI PASS — search overlay, footer, and the footer-linked
   informational pages (FAQ, Contact, Delivery Proof, Privacy, Terms).

   Everything below is scoped to `@media (max-width: 820px)` — the breakpoint
   the shared mobile header already uses — with two deliberate exceptions that
   are called out where they appear: the footer logo width, which follows the
   replaced logo asset and therefore has to change at every width, and nothing
   else. The desktop storefront renders from the rules above this block.

   Written as one consolidated section rather than as edits scattered through
   the thirty-odd earlier search/footer layers: the components addressed here
   are each defined several times further up, and adding a thirty-first partial
   override is what produced the mismatched composition in the first place.
   These rules restate the finished mobile composition in one place.
   ========================================================================== */

@media (max-width: 820px) {

	/* ----------------------------------------------------------------------
	   1. Search overlay.

	   The overlay previously read as three unrelated rectangles: a cream
	   field, a gold submit block butted against it with a square corner, and
	   a filled navy close button floating on top of the row in absolute
	   position (which is why `.site-header__search-inner` carried a
	   52px inline-end padding to keep the field clear of it).

	   The composition here is two elements: one white search surface with the
	   submit inset inside it, and a quiet ghost close control beside it. The
	   inner row is an ordinary flex row, so the close button is laid out
	   rather than positioned over the row, the reserved padding is gone, and
	   the order mirrors correctly in RTL with no direction-specific rules.

	   Behaviour is untouched: this changes presentation only. The panel keeps
	   its id, its `hidden` handling, its fixed offset under the mobile header
	   and its backdrop, so opening, focus, typing, Escape and the intentional
	   outside-click close all continue to run through the same JavaScript.
	   ---------------------------------------------------------------------- */

	/* `!important` and the body-class prefix are both required here, not
	   stylistic: the panel's padding and background are set with `!important`
	   inside `@media (max-width: 1180px)` further up, and that layer also
	   governs tablet widths this pass must not touch. Overriding under
	   `body.etebar-mobile-header` — the same guard the existing mobile-header
	   rules use — keeps the change inside the mobile header's own scope. */
	body.etebar-mobile-header .site-header__search-panel {
		padding: 12px 16px 16px !important;
		/* The mobile header bar paints #fffdfc; matching it exactly is what
		   makes the overlay read as the header growing rather than as a
		   separate cream tray dropped in front of the page. */
		background: #fffdfc !important;
		border-block-end: 1px solid rgb(3 19 33 / 9%);
		box-shadow: 0 18px 34px rgb(5 18 31 / 16%);
	}

	.site-header__search-inner {
		display: flex;
		align-items: center;
		gap: 8px;
		max-width: none;
		padding: 0;
	}

	.site-header .etebar-product-search {
		display: block;
		flex: 1 1 auto;
		min-width: 0;
	}

	/* One surface. The 4px padding is what insets the submit button, so the
	   button reads as living inside the field instead of being glued to its
	   edge — hence `overflow: visible` here, where the earlier layers needed
	   `overflow: hidden` to clip a full-bleed square button into the field's
	   rounded corners. */
	.site-header .etebar-product-search__controls {
		height: 52px;
		min-height: 52px;
		grid-template-columns: minmax(0, 1fr) 44px;
		align-items: center;
		gap: 0;
		border: 1px solid rgb(3 19 33 / 15%);
		border-radius: 14px;
		background: #fff;
		padding: 4px;
		overflow: visible;
		box-shadow: 0 1px 2px rgb(5 18 31 / 5%);
		transition: border-color 140ms ease, box-shadow 140ms ease;
	}

	.site-header .etebar-product-search__controls:focus-within {
		border-color: var(--etebar-gold);
		box-shadow: 0 0 0 3px rgb(215 174 95 / 22%);
	}

	/* 16px is the largest size that still fits the placeholder at 360px and
	   the smallest that stops mobile Safari zooming the page on focus. */
	.site-header .etebar-product-search input[type="search"],
	.site-header .etebar-product-search input[type="search"]::placeholder {
		font-size: 16px;
	}

	.site-header .etebar-product-search input[type="search"] {
		height: 44px;
		min-height: 44px;
		padding-inline: 12px 8px;
		font-weight: 500;
		color: var(--etebar-navy);
	}

	.site-header .etebar-product-search input[type="search"]::placeholder {
		color: #6b7480;
		font-weight: 400;
	}

	.site-header .etebar-product-search button,
	.site-header .etebar-product-search button[type="submit"] {
		width: 44px;
		min-width: 44px;
		height: 44px;
		min-height: 44px;
		border: 0;
		border-radius: 10px;
		background: var(--etebar-gold);
		color: var(--etebar-navy-dark);
	}

	.site-header .etebar-product-search button:hover,
	.site-header .etebar-product-search button:focus-visible {
		background: var(--etebar-gold-light);
	}

	.site-header .etebar-product-search button svg {
		width: 20px;
		height: 20px;
	}

	/* Quiet by design: dismissing the overlay must not compete with the
	   search field for attention, so the close control carries no fill and
	   no border until it is interacted with. It keeps a full 44px target. */
	.site-header__search-close {
		position: static;
		flex: 0 0 auto;
		display: grid;
		place-items: center;
		width: 44px;
		min-width: 44px;
		height: 44px;
		min-height: 44px;
		padding: 0;
		border: 1px solid transparent;
		border-radius: 12px;
		background: transparent;
		color: rgb(3 19 33 / 55%);
		font-size: 26px;
		line-height: 1;
	}

	.site-header__search-close:hover,
	.site-header__search-close:focus-visible {
		border-color: rgb(3 19 33 / 12%);
		background: rgb(3 19 33 / 5%);
		color: var(--etebar-navy);
	}

	/* ----------------------------------------------------------------------
	   2. Footer.

	   Three problems, in the order they read: the brand block sat hard left
	   while the lockup itself was inset inside its own image, so the logo
	   floated between the two; the Legal group took one cell of the two-column
	   nav grid and left an empty cell beside it; and the whole footer used a
	   12px gutter where the informational pages below use 20px.
	   ---------------------------------------------------------------------- */

	/* `.container` sizes itself with `width: min(calc(100% - 2rem), …)`, so a
	   gutter has to be set as width — a margin only shifts a box whose width
	   is already resolved and eats the opposite gutter instead. Every gutter
	   in this pass is written this way, so the footer and the informational
	   pages share one 20px edge. */
	.site-footer__grid,
	.site-footer__legal {
		width: calc(100% - 40px);
		margin-inline: auto;
	}

	.site-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 28px 18px;
		padding-block: 34px 26px;
	}

	.site-footer__brand {
		grid-column: 1 / -1;
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.site-footer__brand > p {
		max-width: 34ch;
		margin-block-start: 0.85rem;
		font-size: 0.95rem;
		line-height: 1.55;
	}

	.site-footer__heading {
		margin-block-end: 0.35rem;
		padding-block-end: 0.5rem;
		font-size: 0.8rem;
	}

	.site-footer .footer-menu a {
		padding-block: 0.55rem;
		font-size: 0.95rem;
	}

	/* The Legal group holds two short links, so on a two-column grid it wastes
	   a whole cell. Spanning the row and laying its links out inline closes the
	   gap and keeps the group's heading rule the full width of the footer. */
	.site-footer__nav--legal {
		grid-column: 1 / -1;
	}

	/* `flex-direction` is restated because `.footer-menu` is set to `column`
	   further up; without it the two links stack and the spanned row is no
	   improvement on the cell it replaced. */
	.site-footer__nav--legal .footer-menu {
		display: flex;
		flex-flow: row wrap;
		align-items: center;
		gap: 0 1.75rem;
	}

	.site-footer__legal {
		align-items: center;
		justify-content: center;
		padding-block: 1.1rem;
		text-align: center;
	}

	/* ----------------------------------------------------------------------
	   3. Opening rhythm on the informational pages.

	   `.site-main` carries `--etebar-header-overlap` (100px) of clearance
	   because the DESKTOP header is a floating pill with a negative bottom
	   margin. The mobile header is a sticky bar in normal flow and already
	   occupies its own space, so on these templates that clearance rendered
	   as 100px of dead colour above the hero — on FAQ and Contact it was the
	   single largest block of empty space on the page.

	   This is the same correction the cart, the checkout, the PDP and the
	   account page already carry; those pages fix it one template at a time,
	   and this extends it to the templates in this pass. The hero-led pages
	   take zero, because the hero supplies its own top padding and should meet
	   the header edge; the legal pages take 22px, because they open straight
	   onto a heading on cream with nothing to separate it from the header.
	   ---------------------------------------------------------------------- */

	.site-main.content-detail-page {
		padding-block-start: 0;
		min-height: 0;
	}

	body.etebar-legal-page .site-main {
		padding-block-start: 22px;
		min-height: 0;
	}

	body.etebar-legal-page .content-shell {
		width: calc(100% - 40px);
		margin-inline: auto;
		padding-block: 0 2.5rem;
	}

	/* ----------------------------------------------------------------------
	   4. Shared hero and section rhythm for the hero-led informational pages
	   (FAQ, Contact, Delivery Proof, How it works).
	   ---------------------------------------------------------------------- */

	.content-detail-page .page-hero {
		padding-block: 30px 34px;
	}

	.content-detail-page .content-detail-hero {
		width: calc(100% - 40px);
		margin-inline: auto;
	}

	.content-detail-page .content-detail-hero__intro .eyebrow {
		margin-block-end: 0.6rem;
	}

	.content-detail-page .content-detail-hero__intro h1 {
		margin-block-end: 0.6rem;
	}

	/* The trailing margin on the last paragraph was adding a second, invisible
	   band of space on top of the hero's own bottom padding — most visible at
	   412px, where the description wraps short of the hero's height. */
	.content-detail-page .content-detail-hero__intro > p:last-child {
		margin-block-end: 0;
		font-size: 1rem;
		line-height: 1.6;
	}

	body.page-template-page-faq .content-detail-page > .section,
	body.page-template-page-contact .content-detail-page > .section,
	body.page-template-page-delivery-proof .content-detail-page > .section,
	body.page-template-page-how-it-works .content-detail-page > .section {
		padding-block: 36px 44px;
	}

	.content-detail-page > .section > .container {
		width: calc(100% - 40px);
		margin-inline: auto;
	}

	/* ----------------------------------------------------------------------
	   5. FAQ.

	   The accordion itself works and is left alone structurally; only the
	   distance between a category heading and the group it labels (40px, far
	   enough that the heading read as belonging to the group above it) and
	   the row comfort are adjusted.
	   ---------------------------------------------------------------------- */

	.faq-page .faq-topic + .faq-topic {
		margin-block-start: 2.25rem;
	}

	.faq-page .faq-topic > h2 {
		margin-block-end: 0.75rem;
	}

	.faq-page .accordion--page {
		margin-block-start: 0.9rem;
	}

	.faq-page .accordion__trigger {
		padding: 1rem 1.1rem;
		gap: 0.9rem;
	}

	/* ----------------------------------------------------------------------
	   6. Contact.

	   The "Primary route" note was a bordered, shadowed, translucent-navy card
	   sitting on the navy hero — a box inside a box, with its own text set at
	   three sizes inside 20px of padding. On mobile it becomes an editorial
	   note under a gold rule instead: same content, same order, no second box.

	   The two route cards keep their card treatment (they sit on the section
	   background, not inside another card) but lose the 32px desktop padding
	   that left roughly 300px of usable width for body copy.
	   ---------------------------------------------------------------------- */

	.contact-page .content-detail-hero__record {
		margin-block-start: 1.5rem;
		border: 0;
		border-block-start: 2px solid var(--etebar-gold);
		border-radius: 0;
		padding: 1.1rem 0 0;
		background: transparent;
		box-shadow: none;
	}

	.contact-page .content-detail-hero__record strong {
		display: block;
		margin-block: 0.35rem;
		font-size: 1.05rem;
		line-height: 1.4;
	}

	.contact-page .content-detail-hero__record span {
		display: block;
		font-size: 0.95rem;
		line-height: 1.6;
	}

	.contact-page .contact-grid {
		gap: 1rem;
	}

	.contact-page .contact-grid article {
		padding: 1.4rem;
	}

	.contact-page .contact-grid h2 {
		margin-block-end: 0.6rem;
	}

	.contact-page .contact-grid .button {
		width: 100%;
	}

	.contact-page .contact-email {
		display: inline-block;
		margin-block-start: 1rem;
		line-height: 1.5;
	}

	/* ----------------------------------------------------------------------
	   7. Delivery Proof.
	   ---------------------------------------------------------------------- */

	.delivery-proof-page .delivery-proof-options {
		margin-block-start: 1.5rem;
	}

	/* ----------------------------------------------------------------------
	   8. Privacy Policy and Terms & Conditions.

	   Long legal copy on a phone needs section separation more than it needs
	   decoration, so each h2 gets a hairline above it and the "On this page"
	   links get an even rhythm instead of the ragged two-and-three-per-row
	   wrap they fell into. No boxes are introduced.
	   ---------------------------------------------------------------------- */

	body.etebar-legal-page .entry__header h1 {
		margin-block-end: 0.5rem;
		line-height: 1.05;
	}

	.legal-page__updated {
		font-size: 0.875rem;
	}

	.legal-page__toc {
		margin-block-end: 2rem;
		padding-block: 1.1rem;
	}

	.legal-page__toc > strong {
		margin-block-end: 0.75rem;
		font-size: 0.95rem;
	}

	/* The desktop treatment wraps these six links across the available width.
	   At phone widths their lengths differ enough that they fell into a ragged
	   two-one-two-one pattern with no alignment to read down. One column costs
	   about the same height and gives an even rhythm and a single left edge. */
	.legal-page__toc ul {
		flex-direction: column;
		gap: 0;
	}

	.legal-page__toc a {
		display: block;
		padding-block: 0.35rem;
		font-size: 0.95rem;
		font-weight: 600;
		text-decoration-color: rgb(11 43 64 / 35%);
	}

	.legal-page__content h2 {
		margin-block: 1.75rem 0.7rem;
		padding-block-start: 1.5rem;
		border-block-start: 1px solid var(--etebar-border);
		font-size: 1.4rem;
		line-height: 1.25;
	}

	.legal-page__content > h2:first-child {
		margin-block-start: 0;
		padding-block-start: 0;
		border-block-start: 0;
	}

	.legal-page__content p {
		margin-block-end: 1.1rem;
		line-height: 1.72;
	}
}

/* The footer logo asset was replaced with a tightly trimmed cut of the header
   lockup (see footer.php). The old file was 3.44:1 with roughly 17% of its
   width taken up by baked-in margin; the new one is 2.17:1 and is all artwork,
   so the widths below are the widths at which the rendered "Etebar" wordmark
   matches — on desktop — the size it has always had, now with the Dari line
   drawn to the same horizontal presence and the lockup's true left edge
   aligned with the tagline beneath it. This is the one rule in this pass that
   is not scoped to mobile, because the asset changed at every width. */
.site-logo--footer {
	width: 165px;
}

@media (max-width: 820px) {
	.site-logo--footer {
		width: 200px;
	}
}

/* ==========================================================================
   Saved recipients.

   Two surfaces for one feature: the account screens where a customer keeps
   the people they send to, and the compact selector at the top of checkout
   Step 2. Written mobile-first — the base rules are the phone layout and the
   only width-scoped block widens the list on desktop — and built entirely
   from new class names, so nothing that renders today changes shape.
   ========================================================================== */

.etebar-saved-recipients__header {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	align-items: flex-start;
}

.etebar-saved-recipients__header h2 {
	margin: 0;
	font-size: clamp(1.5rem, 5vw, 1.9rem);
	line-height: 1.2;
}

.etebar-saved-recipients__intro {
	max-width: 60ch;
	margin: 0.7rem 0 0;
	color: var(--etebar-gray);
	font-size: 1rem;
	line-height: 1.55;
}

.etebar-saved-recipients__add {
	width: 100%;
}

/* ---------- Empty state ---------- */

.etebar-saved-recipients__empty {
	margin-top: 1.5rem;
	border: 1px dashed var(--etebar-border);
	border-radius: var(--etebar-radius);
	padding: 1.5rem 1.25rem;
	background: var(--etebar-paper);
	text-align: start;
}

.etebar-saved-recipients__empty-title {
	margin: 0 0 0.5rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.35;
}

.etebar-saved-recipients__empty p {
	margin: 0 0 1.1rem;
	color: var(--etebar-gray);
	font-size: 1rem;
	line-height: 1.55;
}

.etebar-saved-recipients__empty .button {
	width: 100%;
}

/* ---------- List ----------

   Deliberately rows rather than cards: a saved recipient is a short record
   the customer scans, and a grid of bordered tiles would be the "card spam"
   the storefront avoids everywhere else. One hairline between rows, the
   nickname carrying the weight, everything else quiet. */

.etebar-saved-recipients__list {
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.etebar-saved-recipient {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
	border-top: 1px solid var(--etebar-border);
	padding-block: 1.1rem;
}

.etebar-saved-recipient:last-child {
	border-bottom: 1px solid var(--etebar-border);
}

.etebar-saved-recipient__label {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	margin: 0 0 0.2rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-serif);
	font-size: 1.2rem;
	line-height: 1.25;
}

.etebar-saved-recipient__badge {
	display: inline-flex;
	min-height: 24px;
	align-items: center;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
	border-radius: 999px;
	padding: 0 0.6rem;
	background: color-mix(in srgb, var(--etebar-gold) 15%, var(--etebar-paper));
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.etebar-saved-recipient__name {
	margin: 0;
	color: var(--etebar-charcoal);
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.4;
}

.etebar-saved-recipient__meta {
	margin: 0.15rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.95rem;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.etebar-saved-recipient__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.etebar-saved-recipient__inline-form {
	margin: 0;
}

/* Text-weight controls with a real 44px hit area, so three actions on a row
   never become three competing buttons. */
.etebar-saved-recipient__action {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	border: 1px solid var(--etebar-border);
	border-radius: 7px;
	padding: 0.45rem 0.85rem;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	cursor: pointer;
	font-family: var(--etebar-sans);
	font-size: 0.9rem;
	font-weight: 650;
	text-decoration: none;
}

.etebar-saved-recipient__action:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
	text-decoration: none;
}

.etebar-saved-recipient__action:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 2px;
}

/* Delete is named as destructive rather than merely coloured, and the
   confirmation in front of it is what actually protects the record. */
.etebar-saved-recipient__action--danger {
	border-color: color-mix(in srgb, var(--etebar-danger) 40%, var(--etebar-border));
	color: var(--etebar-danger);
}

.etebar-saved-recipient__action--danger:hover {
	border-color: var(--etebar-danger);
	background: color-mix(in srgb, var(--etebar-danger) 8%, var(--etebar-paper));
}

/* The account content area colours every link green at a specificity the
   component classes cannot reach on their own, which turned the primary
   "Add recipient" button into green text on navy. These restate the intended
   colour at the same specificity rather than reaching for !important. */
.woocommerce-account .woocommerce-MyAccount-content .etebar-saved-recipients .button--primary {
	color: var(--etebar-ivory);
}

.woocommerce-account .woocommerce-MyAccount-content .etebar-saved-recipient__action {
	color: var(--etebar-navy);
}

.woocommerce-account .woocommerce-MyAccount-content .etebar-saved-recipient__action--danger {
	color: var(--etebar-danger);
}

.woocommerce-account .woocommerce-MyAccount-content .etebar-saved-recipient-form__cancel {
	color: var(--etebar-gray);
}

.woocommerce-account .woocommerce-MyAccount-content .etebar-saved-recipients__errors a {
	color: var(--etebar-danger);
}

/* ---------- Add and edit form ---------- */

.etebar-saved-recipients__errors {
	margin: 1.25rem 0 0;
	border-inline-start: 3px solid var(--etebar-danger);
	border-radius: 6px;
	padding: 0.9rem 1rem;
	background: color-mix(in srgb, var(--etebar-danger) 6%, var(--etebar-paper));
}

.etebar-saved-recipients__errors h3 {
	margin: 0 0 0.4rem;
	color: var(--etebar-danger);
	font-size: 1rem;
	line-height: 1.35;
}

.etebar-saved-recipients__errors ul {
	margin: 0;
	padding-inline-start: 1.1rem;
}

.etebar-saved-recipients__errors a {
	color: var(--etebar-danger);
}

.etebar-saved-recipient-form {
	margin-top: 1.5rem;
}

.etebar-saved-recipient-form__grid {
	display: grid;
	gap: 0;
}

.etebar-saved-recipient-form__field {
	margin: 0 0 1.15rem;
}

.etebar-saved-recipient-form__field label {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--etebar-navy);
	font-size: 0.95rem;
	font-weight: 650;
	line-height: 1.35;
}

.etebar-saved-recipient-form__field .optional {
	color: var(--etebar-gray);
	font-weight: 500;
}

.etebar-saved-recipient-form__field input,
.etebar-saved-recipient-form__field textarea {
	display: block;
	width: 100%;
	min-height: 3rem;
	box-sizing: border-box;
	border: 1px solid var(--etebar-border);
	border-radius: 10px;
	padding: 0.8rem 1rem;
	background: var(--etebar-paper);
	color: var(--etebar-charcoal);
	font: 400 1rem/1.45 var(--etebar-sans);
}

.etebar-saved-recipient-form__field textarea {
	resize: vertical;
}

.etebar-saved-recipient-form__field input:focus-visible,
.etebar-saved-recipient-form__field textarea:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 1px;
}

.etebar-saved-recipient-form__field input[aria-invalid="true"],
.etebar-saved-recipient-form__field textarea[aria-invalid="true"] {
	border-color: var(--etebar-danger);
}

.etebar-saved-recipient-form__field small {
	display: block;
	margin-top: 0.35rem;
	color: var(--etebar-gray);
	font-size: 0.875rem;
	line-height: 1.5;
}

.etebar-saved-recipient-form__error {
	color: var(--etebar-danger) !important;
	font-weight: 650;
}

.etebar-saved-recipient-form__location {
	margin: 0 0 1.15rem;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 42%, var(--etebar-border));
	border-radius: 14px;
	padding: 1.15rem;
	background: var(--etebar-paper);
}

/* The written area box disappears while the map is doing its job and returns
   in the manual fallback, matching the checkout delivery step exactly. */
body:not(.etebar-location-manual) .etebar-saved-recipient-form__location [data-etebar-manual-area] {
	display: none;
}

/* The picker's own status line ends the component, so the written area box
   that follows it needs its own breathing room or the two read as one label
   and its field. */
.etebar-saved-recipient-form__location [data-etebar-manual-area] {
	margin-top: 1rem;
	margin-bottom: 0;
}

.etebar-saved-recipient-form__field .optional {
	margin-inline-start: 0.35rem;
}

.etebar-saved-recipient-form__actions {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	align-items: stretch;
	margin-top: 1.5rem;
}

.etebar-saved-recipient-form__cancel {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	color: var(--etebar-gray);
	font-weight: 650;
}

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

.etebar-checkout-saved-recipients {
	margin: 1.25rem 0 1.5rem;
	border: 1px solid color-mix(in srgb, var(--etebar-gold) 42%, var(--etebar-border));
	border-radius: 14px;
	padding: 1.1rem;
	background: #fffdf8;
}

.etebar-checkout-saved-recipients__title {
	margin: 0 0 0.8rem;
	color: var(--etebar-navy);
	font-family: var(--etebar-sans);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.35;
}

.etebar-checkout-saved-recipients__list {
	display: grid;
	gap: 0.6rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.etebar-checkout-saved-recipient {
	display: flex;
	width: 100%;
	flex-direction: column;
	gap: 0.15rem;
	align-items: flex-start;
	border: 1px solid var(--etebar-border);
	border-radius: 10px;
	padding: 0.85rem 1rem;
	background: var(--etebar-paper);
	color: var(--etebar-charcoal);
	cursor: pointer;
	font-family: var(--etebar-sans);
	text-align: start;
}

.etebar-checkout-saved-recipient:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
}

.etebar-checkout-saved-recipient:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 2px;
}

.etebar-checkout-saved-recipient.is-selected {
	border-color: var(--etebar-navy);
	background: color-mix(in srgb, var(--etebar-navy) 6%, var(--etebar-paper));
	box-shadow: inset 0 0 0 1px var(--etebar-navy);
}

.etebar-checkout-saved-recipient__label {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	align-items: center;
	color: var(--etebar-navy);
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.3;
}

.etebar-checkout-saved-recipient__badge {
	display: inline-flex;
	min-height: 22px;
	align-items: center;
	border-radius: 999px;
	padding: 0 0.55rem;
	background: color-mix(in srgb, var(--etebar-gold) 22%, var(--etebar-paper));
	color: var(--etebar-navy);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.etebar-checkout-saved-recipient__name {
	color: var(--etebar-charcoal);
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.4;
}

.etebar-checkout-saved-recipient__meta {
	color: var(--etebar-gray);
	font-size: 0.9rem;
	line-height: 1.45;
	overflow-wrap: anywhere;
}

.etebar-checkout-saved-recipients__status {
	margin: 0.8rem 0 0;
	border-inline-start: 3px solid var(--etebar-gold);
	padding: 0.6rem 0.85rem;
	background: color-mix(in srgb, var(--etebar-gold) 10%, var(--etebar-paper));
	color: var(--etebar-charcoal);
	font-size: 0.9rem;
	line-height: 1.5;
}

.etebar-checkout-saved-recipients__note {
	margin: 0.8rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.85rem;
	line-height: 1.5;
}

/* ---------- Optional save-from-checkout control ---------- */

.etebar-checkout-save-recipient {
	margin: 1rem 0 0;
}

.etebar-checkout-save-recipient__button {
	display: inline-flex;
	width: 100%;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--etebar-border);
	border-radius: 8px;
	padding: 0.7rem 1rem;
	background: var(--etebar-paper);
	color: var(--etebar-navy);
	cursor: pointer;
	font-family: var(--etebar-sans);
	font-size: 0.95rem;
	font-weight: 650;
}

.etebar-checkout-save-recipient__button:hover {
	border-color: color-mix(in srgb, var(--etebar-gold) 70%, var(--etebar-border));
	background: color-mix(in srgb, var(--etebar-gold) 12%, var(--etebar-paper));
}

.etebar-checkout-save-recipient__button:focus-visible {
	outline: 3px solid var(--etebar-gold);
	outline-offset: 2px;
}

/* The button sets its own display, so [hidden] needs restating or the
   control stays on screen after it has done its one job. */
.etebar-checkout-save-recipient__button[hidden] {
	display: none;
}

.etebar-checkout-save-recipient__button[disabled] {
	cursor: default;
	opacity: 0.6;
}

.etebar-checkout-save-recipient__status {
	margin: 0.6rem 0 0;
	color: var(--etebar-gray);
	font-size: 0.9rem;
	line-height: 1.5;
}

/* ==========================================================================
   Saved recipients — wider viewports.

   The phone layout above is the baseline; this only relaxes it where there is
   room. Nothing here touches an existing selector, so the rest of the desktop
   account screen and the desktop checkout render exactly as before.
   ========================================================================== */

@media (min-width: 801px) {
	.etebar-saved-recipients__header {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
	}

	.etebar-saved-recipients__add,
	.etebar-saved-recipients__empty .button {
		width: auto;
	}

	.etebar-saved-recipient {
		flex-direction: row;
		gap: 1.5rem;
		align-items: center;
		justify-content: space-between;
	}

	.etebar-saved-recipient__actions {
		flex-shrink: 0;
		flex-wrap: nowrap;
	}

	.etebar-saved-recipient-form__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
	}

	.etebar-saved-recipient-form__grid > :first-child {
		grid-column: 1 / -1;
	}

	.etebar-saved-recipient-form__actions {
		flex-direction: row;
		align-items: center;
	}

	.etebar-saved-recipient-form__cancel {
		padding-inline: 0.5rem;
	}

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

	.etebar-checkout-save-recipient__button {
		width: auto;
	}
}

/* ---------- Catalog card "Add" button label contrast ---------- */

/* The gold catalog CTA shipped `color: #fff !important` against
   `background: #d2ae5d !important`, which is 2.11:1 — below the 4.5:1 WCAG AA
   floor for normal text. The history is visible in this file: an earlier rule
   painted the same button on the darker gold #9a6e25, where white did reach
   4.58:1, and a later rule lightened the fill to #d2ae5d without revisiting the
   ink.

   The gold fill is the primary-purchase signal, so the fill is kept exactly as
   it is and only the label colour changes, to the existing --etebar-navy
   (#0b2b40). That reads 7.06:1 on #d2ae5d and 5.60:1 on the #c29a48
   hover/focus fill. Geometry, radius, border, font and shadow are untouched, so
   nothing moves. The masked cart glyph paints with `background-color:
   currentColor`, so it follows the label colour and needs no separate rule.

   Scope: catalog and homepage product cards only. The selectors below mirror
   the ones that currently win, so specificity ties and source order decides;
   `!important` is required only because the declarations being corrected are
   themselves `!important`. The product page's own add-to-cart and sticky
   buttons are deliberately not included — they carry the same defect and are
   left for a separate, explicitly scoped pass. */

.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added),
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.woocommerce ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):active,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.woocommerce-page ul.products li.product.etebar-shop-card .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):active,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):hover,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):focus-visible,
.home .home-products.woocommerce ul.products.home-products__grid li.product.etebar-shop-card--home .etebar-shop-card__footer a.button.add_to_cart_button:not(.added):active {
	color: var(--etebar-navy) !important;
}

@media (max-width: 820px) {

	/* Below 820px the catalog rules paint the label through
	   --etebar-mobile-cta-ink, across a large family of body-class and
	   html[lang] variants whose specificity climbs higher than anything worth
	   mirroring. Rather than chase that cascade, the token is re-declared on
	   the card footer itself: custom properties inherit, so every one of those
	   rules resolves the new value at the point of use no matter which of them
	   wins. The root definition is untouched, so the product page's own buy
	   button and sticky bar — which are not inside a card footer — keep
	   reading #fff and are unchanged. */
	.etebar-shop-card__footer,
	body.home .mobile-essential-item__add.add_to_cart_button {
		--etebar-mobile-cta-ink: var(--etebar-navy);
	}

	/* Belt-and-braces for the mobile rules that hardcode the ink instead of
	   reading the token. */
	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button,
	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover,
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover,
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button:hover,
	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button:focus-visible,
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button:focus-visible,
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button:focus-visible,
	body.woocommerce-shop.woocommerce ul.products li.product .etebar-shop-card__footer .button:active,
	body.tax-product_cat.woocommerce ul.products li.product .etebar-shop-card__footer .button:active,
	body.post-type-archive-product.woocommerce ul.products li.product .etebar-shop-card__footer .button:active {
		color: var(--etebar-navy) !important;
	}

	/* Homepage "Everyday essentials" card, the mobile equivalent of the catalog
	   card Add. Scoped to the add-to-cart variant so the navy "View product"
	   and Browse-all tiles, which are white on navy and already readable, keep
	   their own treatment. */
	body.home .mobile-essential-item__add.add_to_cart_button,
	body.home .mobile-essential-item__add.add_to_cart_button:hover,
	body.home .mobile-essential-item__add.add_to_cart_button:focus-visible,
	body.home .mobile-essential-item__add.add_to_cart_button:active {
		color: var(--etebar-navy) !important;
	}
}
/* Native WooCommerce reviews V1: compact, product-specific, and intentionally quiet. */
.etebar-review-summary { display: inline-flex; align-items: center; gap: 7px; color: var(--etebar-navy); font-size: 14px; font-weight: 700; text-decoration: none; }
.etebar-review-summary .star-rating { display: inline-block; color: #9a711f; line-height: 1; }
.etebar-review-summary--empty { color: var(--pdp-muted); font-weight: 600; }
.etebar-review-summary--pdp { margin-top: 10px; }
.etebar-review-summary--card { margin-top: 7px; font-size: 13px; }
.etebar-reviews { max-width: 760px; margin: 56px auto 0; padding-top: 30px; border-top: 1px solid var(--pdp-line); }
.etebar-reviews__header { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.etebar-reviews h2 { margin: 0; color: var(--pdp-navy); }
.etebar-reviews .commentlist { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
.etebar-reviews .comment_container { padding: 18px; border: 1px solid var(--pdp-line); border-radius: 10px; background: #fff; }
.etebar-reviews .comment-text { margin: 0; }
.etebar-reviews .meta { color: var(--pdp-muted); font-size: 14px; }
.etebar-reviews__form { margin-top: 24px; padding: 22px; border-radius: 10px; background: var(--pdp-cream-deep); }
.etebar-reviews label { display: block; margin-bottom: 7px; color: var(--pdp-navy); font-weight: 700; }
.etebar-reviews select, .etebar-reviews textarea { width: 100%; border: 1px solid var(--pdp-line); border-radius: 6px; background: #fff; color: var(--pdp-navy); font: inherit; }
.etebar-reviews select { min-height: 44px; padding-inline: 10px; }
.etebar-reviews textarea { padding: 10px; }
.etebar-reviews .comment-form-rating .stars { display: none; }
.etebar-reviews .comment-form-rating #rating { display: block !important; position: static; clip: auto; clip-path: none; width: 100%; height: auto; margin: 0; }
.etebar-reviews input[type="submit"] { min-height: 44px; border: 0; border-radius: 6px; padding: 10px 18px; background: var(--etebar-navy); color: #fff; font: inherit; font-weight: 700; }
.etebar-reviews :is(select, textarea, input[type="submit"]):focus-visible { outline: 3px solid var(--etebar-gold); outline-offset: 2px; }
.etebar-review-privacy { color: var(--pdp-muted); font-size: 14px; line-height: 1.5; }
@media (max-width: 820px) { .etebar-reviews { margin-top: 38px; } .etebar-reviews__header { align-items: start; flex-direction: column; gap: 10px; } html[dir="rtl"] .etebar-reviews { letter-spacing: normal; } }

/* Native WooCommerce order receipt: customer-scoped and print-friendly. */
.etebar-receipt-page { padding: 48px 20px 72px; background: #f7f3ea; }
.etebar-receipt { max-width: 880px; margin: 0 auto; padding: clamp(24px, 5vw, 52px); background: #fffdf8; color: var(--etebar-navy); border: 1px solid var(--pdp-line); }
.etebar-receipt__header { display: flex; justify-content: space-between; gap: 24px; align-items: start; border-bottom: 2px solid var(--etebar-gold); padding-bottom: 22px; }
.etebar-receipt__brand { margin: 0 0 8px; color: #9a711f; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.etebar-receipt h1 { margin: 0; }.etebar-receipt__header p:last-child { color: var(--pdp-muted); }
.etebar-receipt__print,.etebar-order-receipt-link { min-height: 44px; padding: 10px 16px; border: 0; background: var(--etebar-navy); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }.etebar-receipt__print:focus-visible,.etebar-order-receipt-link:focus-visible { outline: 3px solid var(--etebar-gold); outline-offset: 3px; }
.etebar-receipt__summary dl { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; margin: 28px 0; }.etebar-receipt__summary dl div { padding-inline-start: 14px; border-inline-start: 2px solid var(--etebar-gold); }.etebar-receipt dt { color: var(--pdp-muted); font-size: 13px; font-weight: 700; }.etebar-receipt dd { margin: 4px 0 0; font-weight: 700; }
.etebar-receipt__people { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding: 22px 0; border-block: 1px solid var(--pdp-line); }.etebar-receipt h2 { font-size: 18px; margin: 0 0 8px; }.etebar-receipt h3 { font-size: 14px; margin: 18px 0 5px; }.etebar-receipt__people p { margin: 0; line-height: 1.55; }
.etebar-receipt__items { margin-top: 28px; }.etebar-receipt table { width: 100%; border-collapse: collapse; }.etebar-receipt th,.etebar-receipt td { padding: 13px 8px; text-align: start; vertical-align: top; border-bottom: 1px solid var(--pdp-line); }.etebar-receipt th:last-child,.etebar-receipt td:last-child { text-align: end; }.etebar-receipt tfoot th,.etebar-receipt tfoot td { font-weight: 700; }.etebar-receipt tfoot tr:last-child th,.etebar-receipt tfoot tr:last-child td { font-size: 18px; border-bottom: 0; }.etebar-receipt .wc-item-meta { margin: 7px 0 0; padding: 0; list-style: none; color: var(--pdp-muted); font-size: 13px; }.etebar-receipt__refund { margin: 24px 0 0; padding: 14px; border-inline-start: 3px solid var(--etebar-gold); background: var(--pdp-cream-deep); }
@media (max-width: 620px) { .etebar-receipt-page { padding: 24px 12px 44px; }.etebar-receipt__header,.etebar-receipt__people { grid-template-columns: 1fr; display: grid; }.etebar-receipt__summary dl { grid-template-columns: 1fr 1fr; }.etebar-receipt th,.etebar-receipt td { padding: 11px 5px; font-size: 14px; } }
@media print { @page { margin: 14mm; } body { background:#fff!important; } .site-header,.site-footer,.etebar-account-menu,.etebar-receipt__print,.etebar-order-receipt-link,.etebar-sticky-cart { display:none!important; } .etebar-receipt-page,.etebar-receipt { padding:0!important; margin:0!important; border:0!important; background:#fff!important; max-width:none!important; box-shadow:none!important; } .etebar-receipt a { color:inherit!important; text-decoration:none!important; } }

/*
 * Lost password: keep the footer on the floor of the viewport.
 *
 * This is the one page in the storefront whose content is shorter than a
 * desktop viewport -- a heading, one field and a button. Nothing established a
 * minimum height for the page, so the document simply ended where the footer
 * ended: at 893px. On anything taller than that the browser painted the
 * remaining canvas with the body background, which is cream, leaving a pale
 * strip under the navy footer -- 132px at 1280x1024, 187px at 1440x1080 and
 * 307px at 1920x1200.
 *
 * The fix is the standard sticky-footer layout rather than a height guess:
 * the page is at least one viewport tall, the main region takes the leftover
 * space, and the footer keeps its own height. The footer is NOT positioned or
 * fixed -- it stays in normal flow and simply has nothing left to fall short
 * of, so it never covers content and its design is untouched.
 *
 * Deliberately scoped to this page's body class rather than applied to every
 * page. Home, shop, product and the account dashboard all produce documents
 * taller than the viewport, so a global rule would switch their display model
 * to fix a problem they do not have. Cart and checkout DO show the same strip
 * when the cart is empty (measured at 185px on a 1920x1200 viewport), but they
 * are out of scope here and are deliberately left exactly as they are; the
 * same three rules would fix them if that is ever wanted.
 */
body.woocommerce-lost-password {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	/* dvh where supported, so mobile browser chrome cannot create the same gap. */
	min-height: 100dvh;
}

body.woocommerce-lost-password .site-main {
	flex: 1 0 auto;
}

body.woocommerce-lost-password .site-footer {
	flex-shrink: 0;
}
