/* ==========================================================================
   EQUIPPEDLY — COMMERCE (Batch 3)
   Shop, archives, PDP, cart, checkout, account, search.
   Tokens come from foundation.css. Product cards reuse homepage-batch2.css.
   ========================================================================== */

/*
 * Commerce header clearance (single owner).
 *
 * Rendered DOM on PDP:
 *   #brx-content
 *     .woocommerce-notices-wrapper   ← sibling BEFORE the Bricks section
 *     section.brxe-section.eq-section
 *       … .eq-breadcrumbs …
 *
 * Putting header-height padding on the section meant that when a Woo notice
 * appeared above the section, that full 72px+ clearance became a blank band
 * BETWEEN the notice and the breadcrumbs. Measured at 1440px: section
 * padding-top 96px was the gap contributor; #brx-header is 0px in flow
 * (.eq-header is fixed).
 *
 * Clear the fixed solid header once on #brx-content. Section top padding is
 * breathing room only (--eq-space-lg). Notices sit in the cleared zone.
 */
.eq-commerce #brx-content,
.eq-shop-page #brx-content,
.eq-pdp-page #brx-content,
.eq-cart-page #brx-content,
.eq-checkout-page #brx-content,
.eq-account-page #brx-content,
.eq-search-page #brx-content {
	padding-top: var(--eq-header-h-scrolled);
	padding-bottom: 0;
}

.eq-pdp-page .brxe-section.eq-section,
.eq-cart-page .brxe-section.eq-section,
.eq-checkout-page .brxe-section.eq-section,
.eq-shop-page .brxe-section.eq-section,
.eq-account-page .eq-section.eq-woo-page,
.eq-search-page .brxe-section.eq-section {
	padding-top: var(--eq-space-lg);
	padding-bottom: var(--eq-space-3xl);
}

/* PDP owns its own vertical rhythm inside the shortcode — do not add Bricks section padding. */
.eq-pdp-page .brxe-section.eq-section {
	padding-top: 0;
	padding-bottom: 0;
}

.eq-shop,
.eq-woo-page,
.eq-search-page,
.eq-pdp {
	padding-top: 0;
}

.eq-coming-soon {
	padding-top: calc(var(--eq-header-h-scrolled) + var(--eq-space-lg));
}

/* Notices: keep them visible with normal token spacing; do not invent gap. */
.eq-pdp-page #brx-content > .woocommerce-notices-wrapper:not(:empty),
.eq-cart-page #brx-content > .woocommerce-notices-wrapper:not(:empty),
.eq-checkout-page #brx-content > .woocommerce-notices-wrapper:not(:empty),
.eq-shop-page #brx-content > .woocommerce-notices-wrapper:not(:empty),
.eq-account-page #brx-content > .woocommerce-notices-wrapper:not(:empty) {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: var(--eq-space-md);
	width: 100%;
	max-width: none;
}

@media (max-width: 991px) {
	.eq-commerce #brx-content,
	.eq-shop-page #brx-content,
	.eq-pdp-page #brx-content,
	.eq-cart-page #brx-content,
	.eq-checkout-page #brx-content,
	.eq-account-page #brx-content,
	.eq-search-page #brx-content {
		padding-top: var(--eq-header-h-mobile);
	}

	.eq-pdp-page .brxe-section.eq-section,
	.eq-cart-page .brxe-section.eq-section,
	.eq-checkout-page .brxe-section.eq-section,
	.eq-shop-page .brxe-section.eq-section,
	.eq-account-page .eq-section.eq-woo-page,
	.eq-search-page .brxe-section.eq-section {
		padding-top: var(--eq-space-md);
		padding-bottom: calc(var(--eq-space-3xl) + 72px);
	}

	.eq-coming-soon {
		padding-top: calc(var(--eq-header-h-mobile) + var(--eq-space-md));
	}
}

/* --- Shop head / toolbar ------------------------------------------------ */

.eq-shop > .eq-container {
	/* Premium catalogue ~1400px content; keep side padding moderate so
	   1440 viewports are not squeezed by the site-wide 80px gutter. */
	max-width: calc(1400px + 96px);
	padding-inline: clamp(16px, 3vw, 48px);
}

.eq-shop {
	padding-bottom: clamp(80px, 8vw, 120px);
}

.eq-shop-head {
	margin-bottom: var(--eq-space-2xl);
	max-width: none;
}

.eq-shop-head__crumbs {
	margin-bottom: var(--eq-space-lg);
}

.eq-shop-head__crumbs span[aria-hidden="true"] {
	margin: 0 0.4em;
	opacity: 0.55;
}

.eq-shop-head__title {
	margin: 0 0 var(--eq-space-md);
	font-size: clamp(32px, 3.8vw, 56px);
	line-height: 1.08;
	letter-spacing: -0.01em;
}

.eq-shop-head__line {
	margin: 0;
	max-width: 36rem;
}

.eq-shop-toolbar {
	display: grid;
	gap: var(--eq-space-lg);
	margin-bottom: var(--eq-space-2xl);
}

.eq-shop-toolbar__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--eq-space-md) var(--eq-space-lg);
}

.eq-shop-styles {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--eq-space-sm);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding-bottom: 2px;
	max-width: 100%;
}

.eq-shop-styles::-webkit-scrollbar {
	display: none;
}

.eq-shop-styles .eq-chip--action {
	flex: 0 0 auto;
	min-height: 44px;
	padding: 0 16px;
	align-items: center;
	text-transform: none;
	letter-spacing: 0;
	font-size: var(--eq-type-body-sm);
	font-weight: 500;
}

.eq-chip--action {
	text-decoration: none;
	cursor: pointer;
	border: 1px solid var(--eq-color-border-light);
	background: var(--eq-color-chalk-white);
	color: var(--eq-color-ink-black);
	transition: background-color var(--eq-motion-micro) var(--eq-ease),
		border-color var(--eq-motion-micro) var(--eq-ease),
		color var(--eq-motion-micro) var(--eq-ease);
}

.eq-chip--action:hover {
	border-color: color-mix(in srgb, var(--eq-color-ink-black) 35%, var(--eq-color-border-light));
	background: var(--eq-color-pure-white);
}

.eq-chip--action.is-active {
	background: var(--eq-color-ink-black);
	border-color: var(--eq-color-ink-black);
	color: var(--eq-color-chalk-white);
}

.eq-shop-toolbar__controls {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--eq-space-sm) var(--eq-space-md);
	margin-left: auto;
}

.eq-shop-shape__select,
.eq-shop-orderby select,
.woocommerce-ordering select {
	min-height: 44px;
	padding: 0 var(--eq-space-md);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-md);
	background: var(--eq-color-pure-white);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-body-sm);
	color: var(--eq-color-ink-black);
	cursor: pointer;
}

.eq-shop-orderby {
	display: inline-flex;
	align-items: center;
	gap: var(--eq-space-sm);
	margin: 0;
}

.eq-shop-orderby__label {
	font-size: var(--eq-type-body-sm);
	color: var(--eq-color-text-secondary-light);
	white-space: nowrap;
}

.eq-shop-toolbar__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: var(--eq-space-md);
	padding-top: var(--eq-space-md);
	border-top: 1px solid var(--eq-color-border-light);
}

.eq-shop-toolbar__meta .woocommerce-result-count {
	margin: 0;
	font-size: var(--eq-type-body-sm);
	color: var(--eq-color-text-muted);
}

/* Desktop: Filters sheet toggle stays available but shape/sort are inline. */
.eq-shop-filters__toggle {
	display: none;
	min-height: 44px;
}

/* Filters — desktop inline / mobile sheet */

.eq-shop-filters[hidden] {
	display: none !important;
}

.eq-shop-filters:not([hidden]) {
	display: block;
}

.eq-shop-filters__panel {
	padding: var(--eq-space-lg);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.eq-shop-filters__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: var(--eq-space-md);
}

.eq-shop-filters__group {
	border: 0;
	margin: 0 0 var(--eq-space-lg);
	padding: 0;
}

.eq-shop-filters__group legend {
	margin-bottom: var(--eq-space-sm);
}

.eq-shop-filters__options {
	display: flex;
	flex-wrap: wrap;
	gap: var(--eq-space-sm);
	margin-bottom: var(--eq-space-sm);
}

@media (max-width: 991px) {
	.eq-shop-filters__toggle {
		display: inline-flex;
	}

	.eq-shop-shape {
		display: none;
	}
}

@media (max-width: 767px) {
	.eq-shop-toolbar__row {
		flex-direction: column;
		align-items: stretch;
	}

	.eq-shop-toolbar__controls {
		margin-left: 0;
		justify-content: space-between;
	}

	.eq-shop-orderby {
		flex: 1 1 auto;
	}

	.eq-shop-orderby select {
		flex: 1 1 auto;
		width: 100%;
	}

	.eq-shop-filters:not([hidden]) {
		position: fixed;
		inset: 0;
		z-index: calc(var(--eq-z-overlay) + 5);
		display: flex;
		align-items: flex-end;
		background: rgba(14, 14, 16, 0.45);
	}

	.eq-shop-filters__panel {
		width: 100%;
		max-height: 85vh;
		overflow: auto;
		border-radius: var(--eq-radius-2xl) var(--eq-radius-2xl) 0 0;
		border: 0;
		box-shadow: var(--eq-shadow-overlay);
	}
}

/* --- Product grid ------------------------------------------------------- */

.eq-shop-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.eq-shop-grid--related {
	margin-top: var(--eq-space-lg);
}

@media (max-width: 1199px) {
	.eq-shop-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}
}

@media (max-width: 767px) {
	.eq-shop-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--eq-space-xl);
	}
}

.eq-shop-empty {
	padding: var(--eq-space-3xl) 0;
	text-align: left;
	max-width: 36rem;
}

.eq-shop-empty .eq-btn-group {
	margin-top: var(--eq-space-lg);
}

/* Shop archive product cards — premium storefront cards.
   Scoped under .eq-shop / .eq-shop-grid so homepage bestsellers keep their look. */

.eq-shop-grid .eq-card-product,
.eq-shop .eq-card-product--shop {
	background: var(--eq-color-pure-white);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-xl);
	overflow: hidden;
	box-shadow: none;
	transform: none;
	transition: border-color var(--eq-motion-standard) var(--eq-ease),
		box-shadow var(--eq-motion-standard) var(--eq-ease);
}

.eq-shop-grid .eq-card-product:hover,
.eq-shop .eq-card-product--shop:hover {
	border-color: color-mix(in srgb, var(--eq-color-ink-black) 22%, var(--eq-color-border-light));
	box-shadow: var(--eq-shadow-card);
	transform: none;
}

.eq-shop-grid .eq-card-product__media,
.eq-shop .eq-card-product--shop .eq-card-product__media {
	display: flex;
	align-items: center;
	justify-content: center;
	height: clamp(320px, 28vw, 420px);
	aspect-ratio: auto;
	border: 0;
	border-radius: 0;
	background: var(--eq-color-chalk-white);
	overflow: hidden;
}

.eq-shop-grid .eq-card-product__media img,
.eq-shop-grid .eq-card-product__img,
.eq-shop .eq-card-product--shop .eq-card-product__img {
	width: 100%;
	height: 100%;
	max-height: 100%;
	object-fit: contain;
	object-position: center;
	padding: clamp(20px, 3vw, 40px);
}

.eq-shop-grid .eq-card-product__body,
.eq-shop .eq-card-product--shop .eq-card-product__body {
	padding: var(--eq-space-lg);
	gap: var(--eq-space-md);
}

.eq-shop-grid .eq-card-product__name,
.eq-shop .eq-card-product--shop .eq-card-product__name {
	font-size: clamp(17px, 1.2vw, 20px);
}

.eq-shop-grid .eq-card-product__price,
.eq-shop .eq-card-product--shop .eq-card-product__price {
	font-size: clamp(16px, 1.15vw, 18px);
}

.eq-shop-grid .eq-card-product__wish,
.eq-shop .eq-card-product--shop .eq-card-product__wish {
	display: none;
}

.eq-card-product__actions {
	margin-top: auto;
	width: 100%;
}

.eq-card-product__atc,
.eq-shop-grid a.button.eq-card-product__atc,
.eq-shop-grid .add_to_cart_button.eq-card-product__atc,
.eq-shop-grid .product_type_simple.eq-card-product__atc {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 0 var(--eq-space-lg);
	border: 0;
	border-radius: var(--eq-radius-md);
	background: var(--eq-color-ink-black);
	color: var(--eq-color-chalk-white);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-button);
	font-weight: 600;
	text-decoration: none;
	text-align: center;
	cursor: pointer;
	transition: background-color var(--eq-motion-micro) var(--eq-ease),
		color var(--eq-motion-micro) var(--eq-ease);
}

.eq-card-product__atc:hover,
.eq-shop-grid a.button.eq-card-product__atc:hover,
.eq-shop-grid .add_to_cart_button.eq-card-product__atc:hover {
	background: var(--eq-color-volt);
	color: var(--eq-color-ink-black);
}

.eq-card-product__atc.loading,
.eq-card-product__atc.added {
	opacity: 0.92;
}

.woocommerce-pagination,
.eq-shop .woocommerce-pagination {
	display: flex;
	justify-content: center;
	margin-top: var(--eq-space-3xl);
	margin-bottom: 0;
}

.woocommerce-pagination ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--eq-space-sm);
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0 var(--eq-space-sm);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-md);
	color: var(--eq-color-ink-black);
	text-decoration: none;
	font-size: var(--eq-type-body-sm);
	background: var(--eq-color-pure-white);
}

.woocommerce-pagination .page-numbers.current {
	background: var(--eq-color-ink-black);
	border-color: var(--eq-color-ink-black);
	color: var(--eq-color-chalk-white);
}

.woocommerce-pagination .page-numbers:hover:not(.current) {
	border-color: var(--eq-color-ink-black);
}

/* Breathing room before newsletter / footer on shop surfaces. */
.eq-shop-page .brxe-section.eq-section {
	padding-bottom: clamp(80px, 8vw, 120px);
}

/* Hide Bricks default products chrome when our shortcode archive is present */
.eq-shop ~ .brxe-woocommerce-products,
.eq-shop + .brxe-woocommerce-products {
	display: none;
}

/* --- PDP · Premium dark hero + editorial light body ----------------------
 *
 * ROOT CAUSE FIX:
 * Bricks WooCommerce sets `.single-product .product:not(tr){display:flex;flex-wrap:wrap}`.
 * Both `#brx-content` and our `<article class="eq-pdp product">` match that rule, so
 * hero / strip / story / info / related become row flex items and shrink-wrap to
 * content width (strip ~540px, info ~500px). Force block stacking + full width.
 * ------------------------------------------------------------------------- */

.eq-pdp-page {
	--eq-pdp-shell: 1360px;
	--eq-pdp-gutter: clamp(16px, 3vw, 24px);
}

.eq-pdp-page #brx-content {
	background: var(--eq-color-chalk-white);
}

.eq-pdp-page #brx-content.product,
.single-product .eq-pdp.product:not(tr),
.eq-pdp-page .eq-pdp.product {
	display: block;
	width: 100%;
	max-width: none;
	flex-wrap: unset;
	column-gap: unset;
	row-gap: unset;
}

.eq-pdp-page .brxe-section.eq-section {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	width: 100%;
	max-width: none;
	padding-top: 0;
	padding-bottom: 0;
	background: transparent;
}

.eq-pdp-page .brxe-shortcode {
	display: block;
	width: 100%;
	max-width: none;
	flex: none;
}

.eq-pdp--premium,
.eq-pdp {
	display: block;
	width: 100%;
	padding: 0;
}

.eq-pdp > .eq-pdp-hero,
.eq-pdp > .eq-pdp-strip,
.eq-pdp > .eq-pdp-story,
.eq-pdp > .eq-pdp-visual,
.eq-pdp > .eq-pdp-info,
.eq-pdp > .eq-pdp-related {
	display: block;
	width: 100%;
	max-width: none;
	flex: none;
	box-sizing: border-box;
}

/* Shared inner shell — consistent ~1360 content width */
.eq-pdp-shell,
.eq-pdp-hero__inner,
.eq-pdp-strip__inner,
.eq-pdp-story__inner,
.eq-pdp-visual__inner,
.eq-pdp-info > .eq-container,
.eq-pdp-related > .eq-container,
.eq-pdp--unavailable-market > .eq-container {
	width: 100%;
	max-width: var(--eq-pdp-shell);
	margin-inline: auto;
	padding-inline: var(--eq-pdp-gutter);
	box-sizing: border-box;
}

/* --- Hero ---------------------------------------------------------------- */

.eq-pdp-hero {
	background: var(--eq-color-ink-black);
	color: var(--eq-color-chalk-white);
	padding: var(--eq-space-sm) 0 clamp(32px, 4vw, 56px);
}

.eq-pdp-hero__inner {
	max-width: min(100%, 1440px);
}

.eq-pdp-breadcrumbs,
.eq-pdp-hero .eq-breadcrumbs {
	margin-bottom: var(--eq-space-md);
	color: color-mix(in srgb, var(--eq-color-chalk-white) 55%, transparent);
}

.eq-pdp-breadcrumbs a,
.eq-pdp-hero .eq-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.eq-pdp-breadcrumbs a:hover,
.eq-pdp-hero .eq-breadcrumbs a:hover {
	color: var(--eq-color-chalk-white);
	text-decoration: underline;
}

.eq-pdp-breadcrumbs span[aria-hidden="true"] {
	margin: 0 0.45em;
	opacity: 0.5;
}

.eq-pdp-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 58%) minmax(0, 42%);
	gap: clamp(32px, 3.5vw, 56px);
	align-items: center;
	min-height: min(720px, calc(100vh - var(--eq-header-h-scrolled, 72px) - 48px));
}

@media (max-width: 1199px) {
	.eq-pdp-hero__grid {
		min-height: 0;
		gap: var(--eq-space-2xl);
	}
}

@media (max-width: 991px) {
	.eq-pdp-hero__grid {
		grid-template-columns: 1fr;
		gap: var(--eq-space-xl);
		align-items: start;
	}
}

.eq-pdp-hero__media {
	min-width: 0;
}

.eq-pdp-hero__buy {
	min-width: 0;
	width: 100%;
	max-width: none;
	justify-self: stretch;
}

/* Gallery — large media stage; placeholder stays modest inside it */

.eq-pdp-gallery {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: var(--eq-space-md);
	align-items: stretch;
	width: 100%;
}

.eq-pdp-gallery:not(:has(.eq-pdp-gallery__thumbs)) {
	grid-template-columns: minmax(0, 1fr);
}

.eq-pdp-gallery__thumbs {
	display: flex;
	flex-direction: column;
	gap: var(--eq-space-sm);
	list-style: none;
	margin: 0;
	padding: 0;
	max-height: 650px;
	overflow-y: auto;
}

.eq-pdp-gallery__thumb {
	display: block;
	width: 64px;
	height: 64px;
	padding: 4px;
	border: 1px solid var(--eq-color-border-dark);
	border-radius: var(--eq-radius-sm);
	background: var(--eq-color-graphite);
	cursor: pointer;
	overflow: hidden;
}

.eq-pdp-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.eq-pdp-gallery__thumb.is-active,
.eq-pdp-gallery__thumb[aria-selected="true"] {
	border-color: var(--eq-color-volt);
	box-shadow: 0 0 0 1px var(--eq-color-volt);
}

.eq-pdp-gallery__stage {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 560px;
	height: clamp(560px, 58vh, 650px);
	background: color-mix(in srgb, var(--eq-color-graphite) 78%, #000);
	border-radius: var(--eq-radius-sm);
	overflow: hidden;
}

.eq-pdp-gallery__img,
.eq-pdp-gallery__stage img {
	display: block;
	width: auto;
	height: auto;
	max-width: 90%;
	max-height: 600px;
	object-fit: contain;
	object-position: center;
	padding: 0;
}

/* Woo placeholder: keep architecture large, asset modest */
.eq-pdp-gallery__stage img.woocommerce-placeholder,
.eq-pdp-gallery__img.woocommerce-placeholder,
.eq-pdp-gallery__stage img[src*="placeholder"],
.eq-pdp-gallery__img[src*="placeholder"] {
	max-width: min(42%, 260px);
	max-height: 260px;
	opacity: 0.72;
}

@media (max-width: 767px) {
	.eq-pdp-gallery {
		grid-template-columns: 1fr;
	}

	.eq-pdp-gallery__thumbs {
		order: 2;
		flex-direction: row;
		max-height: none;
		overflow-x: auto;
		overflow-y: hidden;
		padding-bottom: 2px;
	}

	.eq-pdp-gallery__stage {
		order: 1;
		min-height: 420px;
		height: min(72vw, 520px);
	}

	.eq-pdp-gallery__img,
	.eq-pdp-gallery__stage img {
		max-height: 480px;
	}
}

@media (max-width: 480px) {
	.eq-pdp-gallery__stage {
		min-height: 360px;
		height: min(88vw, 440px);
	}
}

/* Buy panel */

.eq-pdp-hero__series {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 var(--eq-space-sm);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-caption);
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--eq-color-chalk-white) 72%, transparent);
}

.eq-pdp-hero__series-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--eq-color-volt);
}

.eq-pdp-hero__temp {
	margin: 0 0 var(--eq-space-sm);
	color: color-mix(in srgb, var(--eq-color-chalk-white) 55%, transparent);
}

.eq-pdp-hero__title {
	margin: 0 0 var(--eq-space-md);
	max-width: min(100%, 520px);
	font-family: var(--eq-font-display);
	font-size: clamp(36px, 3.6vw, 56px);
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -0.02em;
	color: var(--eq-color-chalk-white);
	text-wrap: balance;
}

.eq-pdp-hero__positioning {
	margin: 0 0 var(--eq-space-md);
	max-width: 32rem;
	font-size: var(--eq-type-body-lg);
	line-height: 1.45;
	color: color-mix(in srgb, var(--eq-color-chalk-white) 82%, transparent);
}

.eq-pdp-hero__desc {
	margin-bottom: var(--eq-space-lg);
	color: color-mix(in srgb, var(--eq-color-chalk-white) 70%, transparent);
	max-width: 32rem;
}

.eq-pdp-hero__desc p {
	margin: 0 0 var(--eq-space-sm);
}

.eq-pdp-hero__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: var(--eq-space-xl);
}

.eq-pdp-chip {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	padding: 0 12px;
	border: 1px solid var(--eq-color-border-dark);
	border-radius: var(--eq-radius-sm);
	background: color-mix(in srgb, var(--eq-color-graphite) 80%, transparent);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.06em;
	color: var(--eq-color-chalk-white);
}

.eq-pdp-hero__price {
	margin: 0 0 var(--eq-space-sm);
	font-family: var(--eq-font-body);
	font-size: clamp(30px, 2.6vw, 40px);
	font-weight: 600;
	line-height: 1.1;
	font-feature-settings: 'tnum';
	color: var(--eq-color-chalk-white);
}

.eq-pdp-hero__price .woocommerce-Price-amount {
	font-weight: 600;
}

.eq-pdp-hero__market {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 var(--eq-space-lg);
	font-size: var(--eq-type-body-sm);
	color: color-mix(in srgb, var(--eq-color-chalk-white) 60%, transparent);
}

.eq-pdp-hero__market-btn {
	appearance: none;
	border: 0;
	background: none;
	padding: 0;
	color: var(--eq-color-volt);
	font: inherit;
	font-weight: 600;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.eq-pdp-hero__stock {
	margin-bottom: var(--eq-space-md);
	font-size: var(--eq-type-body-sm);
	color: color-mix(in srgb, var(--eq-color-chalk-white) 70%, transparent);
}

.eq-pdp-hero__stock .in-stock { color: var(--eq-color-volt); }
.eq-pdp-hero__stock .out-of-stock { color: var(--eq-color-error); }

.eq-pdp-hero__cart form.cart {
	display: grid;
	grid-template-columns: 96px minmax(0, 1fr);
	align-items: stretch;
	gap: 12px;
	width: 100%;
}

.eq-pdp-hero__cart .quantity {
	display: flex;
	align-items: center;
	margin: 0;
	width: 100%;
}

.eq-pdp-hero__cart .qty,
.eq-pdp--premium .quantity .qty {
	width: 100%;
	min-height: 56px;
	border: 1px solid var(--eq-color-border-dark);
	border-radius: var(--eq-radius-md);
	background: var(--eq-color-graphite);
	color: var(--eq-color-chalk-white);
	text-align: center;
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-body);
}

.eq-pdp-hero__cart .single_add_to_cart_button,
.eq-pdp--premium .single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 56px;
	padding: 0 var(--eq-space-xl);
	border: 0;
	border-radius: var(--eq-radius-md);
	background: var(--eq-color-volt);
	color: var(--eq-color-ink-black);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-button);
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	cursor: pointer;
	text-decoration: none;
}

.eq-pdp-hero__cart .single_add_to_cart_button:hover,
.eq-pdp--premium .single_add_to_cart_button:hover {
	background: var(--eq-color-volt-hover);
}

@media (max-width: 480px) {
	.eq-pdp-hero__cart form.cart {
		grid-template-columns: 80px minmax(0, 1fr);
	}

	.eq-pdp-hero__title {
		max-width: none;
		font-size: clamp(36px, 9vw, 48px);
	}
}

/* --- Full-width quick spec strip ---------------------------------------- */

.eq-pdp-strip {
	background: var(--eq-color-graphite);
	color: var(--eq-color-chalk-white);
	border-top: 1px solid var(--eq-color-border-dark);
	border-bottom: 1px solid var(--eq-color-border-dark);
}

.eq-pdp-strip__inner {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: space-between;
	gap: clamp(24px, 3vw, 48px);
	padding-block: clamp(28px, 3vw, 40px);
}

.eq-pdp-strip__item {
	display: grid;
	grid-template-columns: 28px minmax(0, 1fr);
	grid-template-rows: auto auto;
	column-gap: 12px;
	row-gap: 4px;
	align-items: center;
	flex: 1 1 0;
	min-width: 0;
	padding: var(--eq-space-sm) 0;
}

.eq-pdp-strip__icon {
	grid-row: 1 / span 2;
	width: 28px;
	height: 28px;
	color: var(--eq-color-volt);
}

.eq-pdp-strip__icon svg {
	width: 28px;
	height: 28px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.eq-pdp-strip__label {
	font-size: var(--eq-type-caption);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--eq-color-chalk-white) 55%, transparent);
}

.eq-pdp-strip__value {
	font-size: var(--eq-type-body);
	font-weight: 600;
}

@media (max-width: 767px) {
	.eq-pdp-strip__inner {
		display: flex;
		overflow-x: auto;
		gap: var(--eq-space-xl);
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
		padding-bottom: var(--eq-space-md);
	}

	.eq-pdp-strip__item {
		flex: 1 0 38%;
		min-width: 150px;
	}
}

/* --- Engineering / performance story ------------------------------------ */

.eq-pdp-story {
	background: var(--eq-color-chalk-white);
	color: var(--eq-color-ink-black);
	padding: 120px 0;
}

@media (max-width: 991px) {
	.eq-pdp-story { padding: 80px 0; }
}

@media (max-width: 767px) {
	.eq-pdp-story { padding: 64px 0; }
}

.eq-pdp-story__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(40px, 5vw, 80px);
	align-items: start;
}

@media (max-width: 991px) {
	.eq-pdp-story__inner {
		grid-template-columns: 1fr;
		gap: var(--eq-space-2xl);
	}
}

.eq-pdp-story__heading {
	max-width: 28rem;
}

.eq-pdp-story__kicker {
	margin: 0 0 var(--eq-space-sm);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-caption);
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--eq-color-text-muted);
}

.eq-pdp-story__title {
	margin: 0 0 var(--eq-space-lg);
	font-family: var(--eq-font-display);
	font-size: clamp(48px, 6vw, 88px);
	font-weight: 600;
	line-height: 0.95;
	letter-spacing: -0.025em;
	text-transform: uppercase;
}

.eq-pdp-story__lead {
	margin: 0;
	max-width: 34rem;
	font-size: clamp(17px, 1.15vw, 19px);
	line-height: 1.65;
	color: var(--eq-color-text-secondary);
}

.eq-pdp-story__modules {
	display: grid;
	gap: var(--eq-space-xl);
}

.eq-pdp-feature {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: var(--eq-space-md);
	align-items: start;
	padding-bottom: var(--eq-space-lg);
	border-bottom: 1px solid var(--eq-color-border-light);
}

.eq-pdp-feature__icon {
	width: 40px;
	height: 40px;
	color: var(--eq-color-ink-black);
}

.eq-pdp-feature__icon svg {
	width: 28px;
	height: 28px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.eq-pdp-feature__label {
	margin: 0 0 4px;
	font-size: var(--eq-type-caption);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--eq-color-text-muted);
}

.eq-pdp-feature__value {
	margin: 0;
	font-size: var(--eq-type-h4);
	font-weight: 600;
}

.eq-pdp-story__perf .eq-pdp-perf {
	margin: 0;
	padding: var(--eq-space-xl) 0 0;
	border-top: 1px solid var(--eq-color-border-light);
}

.eq-pdp-story__modules > .eq-pdp-story__perf:first-child .eq-pdp-perf {
	padding-top: 0;
	border-top: 0;
}

.eq-pdp-perf__title,
.eq-pdp-story__perf .eq-h3 {
	margin: 0 0 var(--eq-space-lg);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-caption);
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--eq-color-text-muted);
}

.eq-pdp-perf__meters {
	display: grid;
	gap: var(--eq-space-md);
	max-width: none;
	width: 100%;
	margin-top: 0;
}

.eq-pdp-story__customize {
	padding-top: var(--eq-space-lg);
	border-top: 1px solid var(--eq-color-border-light);
}

.eq-pdp-story__customize .eq-h4 {
	margin: 0 0 var(--eq-space-sm);
}

.eq-pdp-story__customize .eq-btn {
	margin-top: var(--eq-space-md);
}

/* --- Optional editorial visual (hidden when empty via PHP) -------------- */

.eq-pdp-visual {
	background: var(--eq-color-ink-black);
	color: var(--eq-color-chalk-white);
	padding: clamp(64px, 8vw, 120px) 0;
}

.eq-pdp-visual__inner {
	display: grid;
	gap: var(--eq-space-xl);
}

.eq-pdp-visual__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(320px, 42vw, 560px);
	background: color-mix(in srgb, var(--eq-color-graphite) 70%, #000);
	border-radius: var(--eq-radius-sm);
	overflow: hidden;
}

.eq-pdp-visual__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 560px;
	object-fit: cover;
	object-position: center;
}

.eq-pdp-visual__caption {
	max-width: 40rem;
	margin: 0;
	font-size: var(--eq-type-body);
	line-height: 1.55;
	color: color-mix(in srgb, var(--eq-color-chalk-white) 72%, transparent);
}

/* --- Info tabs / accordion ---------------------------------------------- */

.eq-pdp-info {
	background: var(--eq-color-pure-white);
	padding: clamp(64px, 7vw, 100px) 0;
	border-top: 1px solid var(--eq-color-border-light);
}

.eq-pdp-tabs {
	display: flex;
	flex-wrap: nowrap;
	gap: clamp(var(--eq-space-lg), 3vw, var(--eq-space-2xl));
	width: 100%;
	overflow-x: auto;
	border-bottom: 1px solid var(--eq-color-border-light);
	margin-bottom: var(--eq-space-2xl);
	scrollbar-width: none;
}

.eq-pdp-tabs::-webkit-scrollbar { display: none; }

.eq-pdp-tabs__btn {
	appearance: none;
	border: 0;
	background: none;
	padding: 0 0 16px;
	margin: 0;
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-body-sm);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--eq-color-text-muted);
	cursor: pointer;
	white-space: nowrap;
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
}

.eq-pdp-tabs__btn.is-active,
.eq-pdp-tabs__btn[aria-selected="true"] {
	color: var(--eq-color-ink-black);
	border-bottom-color: var(--eq-color-volt);
}

.eq-pdp-panels {
	width: 100%;
}

.eq-pdp-panel__accordion {
	display: none;
}

.eq-pdp-overview {
	display: grid;
	grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
	gap: clamp(32px, 4vw, 72px);
	align-items: start;
	width: 100%;
}

.eq-pdp-overview__eyebrow {
	margin: 0 0 var(--eq-space-sm);
	font-size: var(--eq-type-caption);
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--eq-color-text-muted);
}

.eq-pdp-overview__title {
	margin: 0;
	font-family: var(--eq-font-display);
	font-size: clamp(28px, 3vw, 40px);
	font-weight: 600;
	line-height: 1.15;
	letter-spacing: -0.015em;
}

.eq-pdp-overview__body,
.eq-pdp-panel__prose {
	max-width: none;
	font-size: clamp(17px, 1.1vw, 19px);
	line-height: 1.65;
	color: var(--eq-color-text-secondary);
}

.eq-pdp-overview__body p:first-child,
.eq-pdp-panel__prose p:first-child { margin-top: 0; }

.eq-pdp-panel__prose {
	max-width: 48rem;
}

.eq-spec-table {
	width: 100%;
	max-width: none;
	border-collapse: collapse;
}

.eq-spec-table th,
.eq-spec-table td {
	padding: var(--eq-space-md) 0;
	border-bottom: 1px solid var(--eq-color-border-light);
	text-align: left;
	font-size: var(--eq-type-body);
	vertical-align: top;
}

.eq-spec-table--grid {
	display: block;
	width: 100%;
}

.eq-spec-table--grid tbody {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 clamp(32px, 4vw, 80px);
	width: 100%;
}

.eq-spec-table--grid tr {
	display: grid;
	grid-template-columns: minmax(0, 0.45fr) minmax(0, 0.55fr);
	gap: var(--eq-space-md);
	border-bottom: 1px solid var(--eq-color-border-light);
	padding: var(--eq-space-md) 0;
}

.eq-spec-table--grid th,
.eq-spec-table--grid td {
	border: 0;
	padding: 0;
}

.eq-spec-table th {
	color: var(--eq-color-text-muted);
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	font-size: var(--eq-type-caption);
}

.eq-spec-table td {
	font-weight: 600;
	color: var(--eq-color-ink-black);
}

.eq-pdp-reviews__body {
	width: 100%;
	max-width: 48rem;
}

.eq-pdp-reviews__empty {
	margin: 0;
	padding: var(--eq-space-xl) 0;
	font-size: clamp(17px, 1.1vw, 19px);
	line-height: 1.65;
	color: var(--eq-color-text-muted);
}

@media (max-width: 991px) {
	.eq-pdp-overview {
		grid-template-columns: 1fr;
		gap: var(--eq-space-xl);
	}
}

@media (max-width: 767px) {
	.eq-pdp-tabs {
		display: none;
	}

	.eq-pdp-panel {
		border-bottom: 1px solid var(--eq-color-border-light);
	}

	.eq-pdp-panel__accordion {
		display: flex;
		width: 100%;
		align-items: center;
		justify-content: space-between;
		gap: var(--eq-space-md);
		appearance: none;
		border: 0;
		background: none;
		padding: var(--eq-space-lg) 0;
		font-family: var(--eq-font-body);
		font-size: var(--eq-type-body);
		font-weight: 600;
		text-align: left;
		cursor: pointer;
		color: var(--eq-color-ink-black);
	}

	.eq-pdp-panel__accordion svg {
		width: 20px;
		height: 20px;
		fill: none;
		stroke: currentColor;
		stroke-width: 1.5;
		transition: transform var(--eq-motion-standard) var(--eq-ease);
	}

	.eq-pdp-panel.is-open .eq-pdp-panel__accordion svg,
	.eq-pdp-panel.is-active .eq-pdp-panel__accordion[aria-expanded="true"] svg {
		transform: rotate(180deg);
	}

	.eq-pdp-panel__content {
		display: none;
		padding-bottom: var(--eq-space-lg);
	}

	.eq-pdp-panel.is-active .eq-pdp-panel__content,
	.eq-pdp-panel.is-open .eq-pdp-panel__content {
		display: block;
	}

	.eq-pdp-panel[hidden] {
		display: block !important;
	}

	.eq-pdp-panel[hidden] .eq-pdp-panel__content {
		display: none;
	}

	.eq-spec-table--grid tbody {
		grid-template-columns: 1fr;
	}
}

/* --- Related ------------------------------------------------------------ */

.eq-pdp-related {
	background: var(--eq-color-chalk-white);
	padding: clamp(64px, 7vw, 100px) 0;
	border-top: 1px solid var(--eq-color-border-light);
}

.eq-pdp-related__head {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: var(--eq-space-md);
	margin-bottom: var(--eq-space-2xl);
}

.eq-pdp-related__title {
	margin: 0;
	font-family: var(--eq-font-display);
	font-size: clamp(28px, 3vw, 40px);
	font-weight: 600;
	letter-spacing: -0.015em;
	text-transform: uppercase;
}

.eq-pdp-related__all {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: var(--eq-type-body-sm);
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--eq-color-ink-black);
}

.eq-pdp-related__all svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
}

.eq-pdp-related .eq-shop-grid--related {
	margin-top: 0;
}

/* Unavailable market — keep calm light treatment */
.eq-pdp--unavailable-market > .eq-container {
	padding-block: var(--eq-space-2xl);
}

.eq-pdp-unavailable {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: var(--eq-space-2xl);
	align-items: center;
}

@media (max-width: 991px) {
	.eq-pdp-unavailable {
		grid-template-columns: 1fr;
	}
}

.eq-breadcrumbs {
	margin-bottom: var(--eq-space-md);
	font-size: var(--eq-type-body-sm);
	color: var(--eq-color-text-muted);
}

.eq-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.eq-breadcrumbs a:hover {
	text-decoration: underline;
}

/* --- Search page -------------------------------------------------------- */

.eq-search-page__form {
	display: flex;
	flex-wrap: wrap;
	gap: var(--eq-space-md);
	margin-bottom: var(--eq-space-2xl);
	max-width: 40rem;
}

.eq-search-page__form .eq-search__input {
	flex: 1 1 220px;
	min-height: 48px;
	padding: 0 var(--eq-space-md);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-md);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-body);
	background: var(--eq-color-pure-white);
}

/* --- Woo pages: cart / checkout / account ------------------------------- */

.eq-woo-page__head {
	margin-bottom: var(--eq-space-2xl);
}

.eq-woo-page .woocommerce,
.eq-cart-page .woocommerce,
.eq-checkout-page .woocommerce,
.eq-account-page .woocommerce,
.eq-woo-cart .woocommerce,
.eq-woo-checkout .woocommerce,
.eq-woo-account .woocommerce {
	font-family: var(--eq-font-body);
	color: var(--eq-color-ink-black);
}

.eq-woo-page .woocommerce-notices-wrapper .woocommerce-message,
.eq-woo-page .woocommerce-notices-wrapper .woocommerce-info,
.eq-woo-page .woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error {
	padding: var(--eq-space-md) var(--eq-space-lg);
	border-radius: var(--eq-radius-md);
	border: 1px solid var(--eq-color-border-light);
	background: var(--eq-color-pure-white);
	list-style: none;
	margin: 0 0 var(--eq-space-lg);
}

.woocommerce-error {
	border-color: color-mix(in srgb, var(--eq-color-error) 35%, var(--eq-color-border-light)) !important;
}

.woocommerce-message {
	border-color: color-mix(in srgb, var(--eq-color-success) 35%, var(--eq-color-border-light)) !important;
}

/* Configurator → Cart success card (premium horizontal confirmation). */
.woocommerce-message:has(.eq-cart-atc-success) {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	margin: 0 0 var(--eq-space-lg);
}

.woocommerce-message:has(.eq-cart-atc-success)::before {
	display: none;
}

.eq-cart-atc-success {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: var(--eq-space-md) var(--eq-space-lg);
	padding: 26px var(--eq-space-lg);
	background: var(--eq-color-chalk-white);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	box-sizing: border-box;
}

.eq-cart-atc-success__icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--eq-color-volt) 28%, var(--eq-color-pure-white));
	color: var(--eq-color-ink-black);
}

.eq-cart-atc-success__icon svg {
	width: 20px;
	height: 20px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

.eq-cart-atc-success__copy {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
	text-align: start;
}

.eq-cart-atc-success__title {
	margin: 0;
	font-family: var(--eq-font-heading);
	font-size: clamp(1.05rem, 0.95rem + 0.4vw, 1.35rem);
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.15;
	text-transform: uppercase;
	color: var(--eq-color-ink-black);
}

.eq-cart-atc-success__text {
	margin: 0;
	font-family: var(--eq-font-ui, var(--eq-font-body));
	font-size: var(--eq-type-body-sm, 0.9375rem);
	font-weight: 400;
	line-height: 1.45;
	color: var(--eq-color-text-secondary-light);
}

.eq-cart-atc-success__cta.eq-btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--eq-space-xs);
	inline-size: auto;
	margin: 0;
	text-decoration: none;
	white-space: nowrap;
	background-color: var(--eq-color-volt);
	color: var(--eq-color-ink-black);
	border-color: transparent;
}

.eq-cart-atc-success__cta.eq-btn:hover {
	background-color: var(--eq-color-volt-hover);
	color: var(--eq-color-ink-black);
}

.eq-cart-atc-success__cta.eq-btn:focus-visible {
	outline: 2px solid var(--eq-color-volt);
	outline-offset: 3px;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--eq-color-ink-black) 55%, transparent);
}

.eq-cart-atc-success__cta-label {
	font-family: var(--eq-font-ui);
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.eq-cart-atc-success__cta-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.eq-cart-atc-success__cta-icon svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
}

[dir="rtl"] .eq-cart-atc-success {
	text-align: start;
}

[dir="rtl"] .eq-cart-atc-success__cta-icon {
	transform: scaleX(-1);
}

[dir="rtl"] .eq-cart-atc-success__title,
[dir="rtl"] .eq-cart-atc-success__cta-label {
	letter-spacing: 0;
	text-transform: none;
}

@media (max-width: 768px) {
	.eq-cart-atc-success {
		flex-wrap: wrap;
		align-items: flex-start;
		padding: var(--eq-space-lg);
		gap: var(--eq-space-md);
	}

	.eq-cart-atc-success__icon {
		width: 36px;
		height: 36px;
	}

	.eq-cart-atc-success__copy {
		flex: 1 1 calc(100% - 52px);
	}

	.eq-cart-atc-success__cta.eq-btn {
		flex: 1 0 100%;
		inline-size: 100%;
		max-inline-size: 100%;
		white-space: normal;
	}
}

@media (max-width: 389px) {
	.eq-cart-atc-success {
		padding: var(--eq-space-md);
	}

	.eq-cart-atc-success__title {
		font-size: 1.05rem;
	}
}

.eq-woo-cart .shop_table,
.eq-cart-page .shop_table,
.eq-woo-checkout .shop_table,
.eq-checkout-page .shop_table,
.eq-woo-account .shop_table,
.eq-account-page .shop_table {
	width: 100%;
	border-collapse: collapse;
}

.eq-woo-cart .shop_table th,
.eq-woo-cart .shop_table td,
.eq-woo-checkout .shop_table th,
.eq-woo-checkout .shop_table td,
.eq-woo-account .shop_table th,
.eq-woo-account .shop_table td {
	padding: var(--eq-space-md);
	border-bottom: 1px solid var(--eq-color-border-light);
	text-align: left;
	vertical-align: middle;
}

.eq-woo-cart .product-thumbnail img {
	width: 72px;
	height: auto;
	border-radius: var(--eq-radius-sm);
}

.eq-woo-cart .actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--eq-space-md);
	margin-top: var(--eq-space-lg);
}

.eq-woo-cart .cart-collaterals {
	margin-top: 0;
}

/* Desktop cart: contents left (~68%) / totals right (~32%), sticky summary */
@media (min-width: 992px) {
	.eq-cart-page .brxe-section.eq-woo-cart:not(.cart-empty) > .eq-container,
	.eq-woo-cart:not(.cart-empty) > .eq-container {
		display: grid;
		grid-template-columns: minmax(0, 2fr) minmax(280px, 0.95fr);
		column-gap: var(--eq-space-2xl);
		row-gap: var(--eq-space-lg);
		align-items: start;
	}

	.eq-cart-page .brxe-section.eq-woo-cart:not(.cart-empty) > .eq-container > .eq-h1,
	.eq-cart-page .brxe-section.eq-woo-cart:not(.cart-empty) > .eq-container > .brxe-heading,
	.eq-woo-cart:not(.cart-empty) > .eq-container > .eq-h1,
	.eq-woo-cart:not(.cart-empty) > .eq-container > .brxe-heading {
		grid-column: 1 / -1;
		margin-bottom: 0;
	}

	.eq-cart-page .brxe-woocommerce-cart-items,
	.eq-woo-cart .brxe-woocommerce-cart-items,
	.eq-woo-cart .woocommerce-cart-form {
		grid-column: 1;
		min-width: 0;
	}

	.eq-cart-page .brxe-woocommerce-cart-collaterals,
	.eq-woo-cart .brxe-woocommerce-cart-collaterals,
	.eq-woo-cart .cart-collaterals {
		grid-column: 2;
		width: 100%;
		position: sticky;
		top: calc(var(--eq-header-h-scrolled) + var(--eq-space-md));
		align-self: start;
	}
}

.eq-woo-cart .coupon {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--eq-space-sm);
	margin-bottom: 0;
	flex: 1 1 auto;
}

.eq-woo-cart .coupon input,
.eq-woo-page input.input-text,
.eq-woo-page select,
.eq-woo-page textarea,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
	min-height: 48px;
	padding: 0 var(--eq-space-md);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-md);
	background: var(--eq-color-pure-white);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-body);
	width: 100%;
	max-width: 100%;
}

/* Coupon is secondary — compact field, not a dominant bar */
.eq-woo-cart .coupon .input-text {
	width: auto;
	max-width: 200px;
	min-height: 40px;
	flex: 0 1 200px;
}

.eq-woo-cart .coupon .button {
	min-height: 40px;
	padding-inline: var(--eq-space-md);
	font-size: var(--eq-type-body-sm);
	font-weight: 500;
}

.eq-woo-page textarea {
	min-height: 120px;
	padding: var(--eq-space-md);
}

.eq-woo-page label {
	display: block;
	margin-bottom: var(--eq-space-xs);
	font-size: var(--eq-type-body-sm);
	font-weight: 500;
}

.eq-woo-page .form-row {
	margin-bottom: var(--eq-space-md);
}

/*
 * Equippedly Woo button chrome — POSITIVE scope only (TPC isolation).
 *
 * Do NOT use bare `.woocommerce …` or body.eq-pdp-page / body.eq-commerce.
 * WooCommerce puts `.woocommerce` on <body> for product pages; TPC’s expanded
 * Artwork Editor portals to `.tpc-artwork-expanded-host` under <body>, so
 * body-scoped selectors override TPC `.button` chrome (forensic RCA 2026-10-22).
 *
 * Allowed surfaces:
 * - .eq-woo-page — Bricks/section Woo content wrappers (not body)
 * - body.eq-woo-cart / .eq-woo-checkout / .eq-woo-account — cart, checkout,
 *   My Account (TPC is not hosted on these pages)
 *
 * PDP ATC Volt chrome lives under .eq-pdp-hero__cart / .eq-pdp--premium
 * (dedicated rules above). Do not reintroduce generic .button rules on .eq-pdp
 * or .eq-pdp-page — configure mode embeds TPC on the product template.
 */
.eq-woo-page a.button,
.eq-woo-page button.button,
.eq-woo-page input.button,
.eq-woo-page .button,
.eq-woo-cart a.button,
.eq-woo-cart button.button,
.eq-woo-cart input.button,
.eq-woo-cart .button,
.eq-woo-checkout a.button,
.eq-woo-checkout button.button,
.eq-woo-checkout input.button,
.eq-woo-checkout .button,
.eq-woo-account a.button,
.eq-woo-account button.button,
.eq-woo-account input.button,
.eq-woo-account .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0 var(--eq-space-lg);
	border: 1px solid var(--eq-color-ink-black);
	border-radius: var(--eq-radius-md);
	background: transparent;
	color: var(--eq-color-ink-black);
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-button);
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
}

.eq-woo-page a.checkout-button,
.eq-woo-page button.button.alt,
.eq-woo-page #place_order,
.eq-woo-page a.button.alt,
.eq-woo-cart a.checkout-button,
.eq-woo-cart button.button.alt,
.eq-woo-cart a.button.alt,
.eq-woo-checkout a.checkout-button,
.eq-woo-checkout button.button.alt,
.eq-woo-checkout #place_order,
.eq-woo-checkout a.button.alt,
.eq-woo-account a.checkout-button,
.eq-woo-account button.button.alt,
.eq-woo-account #place_order,
.eq-woo-account a.button.alt {
	background: var(--eq-color-volt);
	border-color: var(--eq-color-volt);
	color: var(--eq-color-ink-black);
}

.eq-woo-page a.checkout-button:hover,
.eq-woo-page button.button.alt:hover,
.eq-woo-page #place_order:hover,
.eq-woo-cart a.checkout-button:hover,
.eq-woo-cart button.button.alt:hover,
.eq-woo-checkout a.checkout-button:hover,
.eq-woo-checkout button.button.alt:hover,
.eq-woo-checkout #place_order:hover,
.eq-woo-account a.checkout-button:hover,
.eq-woo-account button.button.alt:hover,
.eq-woo-account #place_order:hover {
	background: var(--eq-color-volt-hover);
	border-color: var(--eq-color-volt-hover);
}

.eq-woo-cart .cart-collaterals .cart_totals {
	max-width: none;
	width: 100%;
	margin-left: 0;
	padding: var(--eq-space-xl);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.eq-woo-cart .wc-proceed-to-checkout {
	margin-top: var(--eq-space-lg);
}

.eq-woo-cart .wc-proceed-to-checkout a {
	width: 100%;
}

.cart-empty.woocommerce-info,
.eq-woo-cart .cart-empty {
	padding: var(--eq-space-2xl);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.return-to-shop {
	margin-top: var(--eq-space-lg);
}

/* Cart item removal — compact neutral confirmation (not green success). */
.woocommerce-info:has(.eq-cart-remove-notice),
.woocommerce-message:has(.eq-cart-remove-notice) {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	margin: 0 0 var(--eq-space-md);
}

.woocommerce-info:has(.eq-cart-remove-notice)::before,
.woocommerce-message:has(.eq-cart-remove-notice)::before {
	display: none;
}

.eq-cart-remove-notice {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: var(--eq-space-md);
	padding: 14px var(--eq-space-md);
	background: var(--eq-color-chalk-white);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-md, var(--eq-radius-lg));
	box-sizing: border-box;
}

.eq-cart-remove-notice__text {
	margin: 0;
	flex: 1 1 auto;
	min-width: 0;
	font-family: var(--eq-font-ui, var(--eq-font-body));
	font-size: var(--eq-type-body-sm, 0.9375rem);
	font-weight: 500;
	line-height: 1.4;
	color: var(--eq-color-ink-black);
	text-align: start;
}

.eq-cart-remove-notice__undo {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 14px;
	font-family: var(--eq-font-ui);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--eq-color-ink-black);
	background: transparent;
	border: 1px solid var(--eq-color-ink-black);
	border-radius: var(--eq-radius-sm, 6px);
	white-space: nowrap;
}

.eq-cart-remove-notice__undo:hover {
	background: var(--eq-color-ink-black);
	color: var(--eq-color-pure-white);
}

.eq-cart-remove-notice__undo:focus-visible {
	outline: 2px solid var(--eq-color-volt);
	outline-offset: 3px;
}

[dir="rtl"] .eq-cart-remove-notice__undo {
	letter-spacing: 0;
	text-transform: none;
}

@media (max-width: 768px) {
	.eq-cart-remove-notice {
		flex-wrap: wrap;
		padding: var(--eq-space-md);
	}

	.eq-cart-remove-notice__undo {
		flex: 1 0 100%;
		inline-size: 100%;
	}
}

/* Empty cart — Equippedly empty state. */
.wc-empty-cart-message:has(.eq-cart-empty) .woocommerce-info,
.wc-empty-cart-message .cart-empty:has(.eq-cart-empty),
.woocommerce-info:has(.eq-cart-empty) {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
	margin: 0;
}

.wc-empty-cart-message:has(.eq-cart-empty) .woocommerce-info::before,
.woocommerce-info:has(.eq-cart-empty)::before {
	display: none;
}

.eq-cart-empty {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--eq-space-sm, 12px);
	padding: var(--eq-space-xl, 32px) var(--eq-space-lg);
	background: var(--eq-color-chalk-white);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	box-sizing: border-box;
	max-width: 40rem;
}

.eq-cart-empty__title {
	margin: 0;
	font-family: var(--eq-font-heading);
	font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.75rem);
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.15;
	text-transform: uppercase;
	color: var(--eq-color-ink-black);
}

.eq-cart-empty__text {
	margin: 0;
	font-family: var(--eq-font-ui, var(--eq-font-body));
	font-size: var(--eq-type-body-sm, 0.9375rem);
	font-weight: 400;
	line-height: 1.5;
	color: var(--eq-color-text-secondary-light);
}

.eq-cart-page .return-to-shop .button,
.eq-woo-cart .return-to-shop .button,
.wc-empty-cart-message + .return-to-shop .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--eq-space-xs);
	padding: 12px 20px;
	font-family: var(--eq-font-ui);
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	background-color: var(--eq-color-volt);
	color: var(--eq-color-ink-black);
	border: 0;
	border-radius: var(--eq-radius-sm, 8px);
}

.eq-cart-page .return-to-shop .button:hover,
.eq-woo-cart .return-to-shop .button:hover,
.wc-empty-cart-message + .return-to-shop .button:hover {
	background-color: var(--eq-color-volt-hover);
	color: var(--eq-color-ink-black);
}

.eq-cart-page .return-to-shop .button:focus-visible,
.eq-woo-cart .return-to-shop .button:focus-visible,
.wc-empty-cart-message + .return-to-shop .button:focus-visible {
	outline: 2px solid var(--eq-color-volt);
	outline-offset: 3px;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--eq-color-ink-black) 55%, transparent);
}

[dir="rtl"] .eq-cart-empty__title,
[dir="rtl"] .eq-cart-page .return-to-shop .button,
[dir="rtl"] .eq-woo-cart .return-to-shop .button {
	letter-spacing: 0;
	text-transform: none;
}

@media (max-width: 768px) {
	.eq-cart-empty {
		padding: var(--eq-space-lg);
		max-width: none;
	}

	.eq-cart-page .return-to-shop .button,
	.eq-woo-cart .return-to-shop .button,
	.wc-empty-cart-message + .return-to-shop .button {
		inline-size: 100%;
	}
}

/* Checkout layout — customer fields left (~62%), order summary right (~38%) */
.eq-woo-checkout .col2-set,
.eq-checkout-page .col2-set,
.eq-woo-checkout form.checkout .col2-set#customer_details,
.eq-checkout-page form.checkout .col2-set#customer_details {
	display: flex;
	flex-direction: column;
	gap: var(--eq-space-xl);
	margin-bottom: 0;
	width: 100%;
	float: none;
}

.eq-woo-checkout .col2-set .col-1,
.eq-woo-checkout .col2-set .col-2,
.eq-checkout-page .col2-set .col-1,
.eq-checkout-page .col2-set .col-2 {
	width: 100%;
	float: none;
	max-width: none;
}

@media (min-width: 992px) {
	.eq-woo-checkout form.checkout,
	.eq-checkout-page form.checkout {
		display: grid;
		grid-template-columns: minmax(0, 1.65fr) minmax(300px, 1fr);
		column-gap: var(--eq-space-2xl);
		row-gap: var(--eq-space-lg);
		align-items: start;
	}

	.eq-woo-checkout form.checkout #customer_details,
	.eq-woo-checkout form.checkout .col2-set,
	.eq-checkout-page form.checkout #customer_details,
	.eq-checkout-page form.checkout .col2-set {
		grid-column: 1;
		grid-row: 1;
	}

	.eq-woo-checkout form.checkout .eq-checkout-summary,
	.eq-checkout-page form.checkout .eq-checkout-summary {
		grid-column: 2;
		grid-row: 1;
		position: sticky;
		top: calc(var(--eq-header-h-scrolled) + var(--eq-space-md));
		align-self: start;
	}

	/* Fallback before JS wraps heading + review */
	.eq-woo-checkout form.checkout:not(:has(.eq-checkout-summary)) #order_review_heading,
	.eq-checkout-page form.checkout:not(:has(.eq-checkout-summary)) #order_review_heading {
		grid-column: 2;
		grid-row: 1;
		margin: 0;
	}

	.eq-woo-checkout form.checkout:not(:has(.eq-checkout-summary)) #order_review,
	.eq-checkout-page form.checkout:not(:has(.eq-checkout-summary)) #order_review {
		grid-column: 2;
		grid-row: 1;
		margin-top: 2.75rem;
		position: sticky;
		top: calc(var(--eq-header-h-scrolled) + var(--eq-space-md) + 2.75rem);
		align-self: start;
	}

	/*
	 * Woo injects .woocommerce-NoticeGroup as a direct child of form.checkout on
	 * validation errors. Without an explicit span it becomes a rogue grid item and
	 * collapses Billing / Order columns. Keep notices full-width above the grid.
	 */
	.eq-woo-checkout form.checkout > .woocommerce-NoticeGroup,
	.eq-checkout-page form.checkout > .woocommerce-NoticeGroup,
	.eq-woo-checkout form.checkout > .woocommerce-notices-wrapper,
	.eq-checkout-page form.checkout > .woocommerce-notices-wrapper {
		grid-column: 1 / -1;
		grid-row: auto;
		width: 100%;
		max-width: 100%;
		margin: 0 0 var(--eq-space-md);
	}
}

@media (max-width: 991px) {
	.eq-woo-cart .shop_table_responsive thead,
	.eq-cart-page .shop_table_responsive thead {
		display: none;
	}

	.eq-woo-cart .shop_table_responsive tr,
	.eq-cart-page .shop_table_responsive tr {
		display: block;
		margin-bottom: var(--eq-space-lg);
		border: 1px solid var(--eq-color-border-light);
		border-radius: var(--eq-radius-lg);
		padding: var(--eq-space-md);
	}

	.eq-woo-cart .shop_table_responsive td,
	.eq-cart-page .shop_table_responsive td {
		display: flex;
		justify-content: space-between;
		gap: var(--eq-space-md);
		border: 0 !important;
		padding: var(--eq-space-sm) 0 !important;
	}

	.eq-woo-cart .shop_table_responsive td::before,
	.eq-cart-page .shop_table_responsive td::before {
		content: attr(data-title);
		font-weight: 500;
		color: var(--eq-color-text-muted);
	}

	.eq-woo-cart .cart-collaterals,
	.eq-cart-page .cart-collaterals {
		margin-top: var(--eq-space-xl);
		position: static;
	}
}

#order_review_heading,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
	font-family: var(--eq-font-heading);
	font-size: var(--eq-type-h3);
	margin: 0 0 var(--eq-space-lg);
}

.eq-checkout-summary #order_review_heading {
	margin-bottom: var(--eq-space-md);
}

.woocommerce-checkout-review-order,
.eq-checkout-summary #order_review {
	padding: var(--eq-space-xl);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

/* Checkout coupon — keep WC toggle, make the expanded form compact */
.woocommerce-form-coupon-toggle .woocommerce-info {
	margin: 0 0 var(--eq-space-md);
	padding: var(--eq-space-sm) var(--eq-space-md);
	font-size: var(--eq-type-body-sm);
	border-radius: var(--eq-radius-md);
}

.checkout_coupon.woocommerce-form-coupon {
	margin: 0 0 var(--eq-space-lg) !important;
	padding: var(--eq-space-md) !important;
	border: 1px solid var(--eq-color-border-light) !important;
	border-radius: var(--eq-radius-md);
	background: var(--eq-color-pure-white);
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: var(--eq-space-sm);
}

.checkout_coupon .form-row-first,
.checkout_coupon .form-row-last {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
}

.checkout_coupon #coupon_code {
	min-height: 40px;
	max-width: 220px;
}

.checkout_coupon .button {
	min-height: 40px;
}

/* Checkout AJAX blockUI — transient only; never leave a permanent veil */
.eq-checkout-page .blockUI.blockOverlay,
.eq-woo-checkout .blockUI.blockOverlay,
.woocommerce-checkout .blockUI.blockOverlay {
	background: rgba(247, 245, 241, 0.55) !important;
}

.eq-checkout-page .blockUI.blockMsg,
.eq-woo-checkout .blockUI.blockMsg {
	border: 0 !important;
	background: transparent !important;
}

/* Equippedly Rewards (universal points) — checkout / cart */
.eq-friend-rewards {
	margin: var(--eq-space-lg) 0;
	padding: var(--eq-space-lg);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.eq-friend-rewards__form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--eq-space-sm) var(--eq-space-md);
	margin-top: var(--eq-space-sm);
}

.eq-friend-rewards__form .eq-form__input,
.eq-friend-rewards__form #eq_friend_rewards_points {
	width: 8rem;
	max-width: 100%;
}

.eq-friend-rewards__form [data-eq-friend-rewards-estimate] {
	flex: 1 1 100%;
	margin: 0;
}

@media (max-width: 767px) {
	.eq-friend-rewards__form {
		flex-direction: column;
		align-items: stretch;
	}

	.eq-friend-rewards__form .eq-form__input,
	.eq-friend-rewards__form #eq_friend_rewards_points,
	.eq-friend-rewards__form .eq-btn {
		width: 100%;
	}
}

/* Mobile: checkout AJAX notices must not escape the form width */
.eq-woo-checkout form.checkout > .woocommerce-NoticeGroup,
.eq-checkout-page form.checkout > .woocommerce-NoticeGroup {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.woocommerce-checkout-payment {
	margin-top: var(--eq-space-xl);
	padding: var(--eq-space-lg);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-chalk-white);
}

.woocommerce-checkout-payment ul.payment_methods {
	list-style: none;
	margin: 0 0 var(--eq-space-lg);
	padding: 0;
}

.woocommerce-checkout-payment ul.payment_methods li {
	margin-bottom: var(--eq-space-md);
}

/* Account — navigation layout only when the account menu exists (logged in). */
.eq-woo-account .woocommerce:has(.woocommerce-MyAccount-navigation),
.eq-account-page .woocommerce:has(.woocommerce-MyAccount-navigation) {
	display: grid;
	grid-template-columns: 220px 1fr;
	gap: var(--eq-space-2xl);
	align-items: start;
}

@media (max-width: 767px) {
	.eq-woo-account .woocommerce:has(.woocommerce-MyAccount-navigation),
	.eq-account-page .woocommerce:has(.woocommerce-MyAccount-navigation) {
		grid-template-columns: 1fr;
	}
}

.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	overflow: hidden;
	background: var(--eq-color-pure-white);
}

.woocommerce-MyAccount-navigation li a {
	display: block;
	padding: var(--eq-space-md) var(--eq-space-lg);
	border-bottom: 1px solid var(--eq-color-border-light);
	color: var(--eq-color-ink-black);
	text-decoration: none;
	font-size: var(--eq-type-body-sm);
}

.woocommerce-MyAccount-navigation li:last-child a {
	border-bottom: 0;
}

.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover {
	background: var(--eq-color-chalk-white);
}

.woocommerce-MyAccount-content {
	padding: var(--eq-space-xl);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.woocommerce-form-login,
.woocommerce-form-register {
	max-width: 28rem;
	padding: var(--eq-space-xl);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.u-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--eq-space-2xl);
}

@media (max-width: 767px) {
	.u-columns {
		grid-template-columns: 1fr;
	}
}

/* Coming soon */
.eq-coming-soon .eq-btn-group {
	margin-top: var(--eq-space-xl);
}

/* Design / Finder landing foundations */
.eq-land-hero {
	padding-top: calc(var(--eq-header-h) + var(--eq-space-3xl));
}

@media (max-width: 991px) {
	.eq-land-hero {
		padding-top: calc(var(--eq-header-h-mobile) + var(--eq-space-xl));
		padding-bottom: calc(var(--eq-space-3xl) + 72px);
	}
}

.eq-land-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--eq-space-xl);
}

@media (max-width: 767px) {
	.eq-land-steps {
		grid-template-columns: 1fr;
	}
}

.eq-land-step__num {
	display: block;
	font-family: var(--eq-font-body);
	font-size: var(--eq-type-caption);
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--eq-color-volt);
	margin-bottom: var(--eq-space-sm);
}

.eq-land-note {
	padding: var(--eq-space-lg);
	border: 1px dashed color-mix(in srgb, var(--eq-color-volt) 40%, var(--eq-color-border-dark));
	border-radius: var(--eq-radius-lg);
	background: color-mix(in srgb, var(--eq-color-graphite) 80%, transparent);
}

.eq-finder-factors {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--eq-space-lg);
}

@media (max-width: 767px) {
	.eq-finder-factors {
		grid-template-columns: 1fr;
	}
}

.eq-finder-factor {
	padding: var(--eq-space-lg);
	border: 1px solid var(--eq-color-border-light);
	border-radius: var(--eq-radius-lg);
	background: var(--eq-color-pure-white);
}

.eq-finder-factor__q {
	margin: 0 0 var(--eq-space-sm);
	font-family: var(--eq-font-heading);
	font-size: var(--eq-type-h4);
	font-weight: 600;
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
	.eq-chip--action,
	.eq-pdp__cart .single_add_to_cart_button,
	.eq-woo-page a.button,
	.eq-woo-page button.button,
	.eq-woo-cart a.button,
	.eq-woo-cart button.button,
	.eq-woo-checkout a.button,
	.eq-woo-checkout button.button,
	.eq-woo-account a.button,
	.eq-woo-account button.button {
		transition: none;
	}
}

/* Phase 5B-2 — market-unavailable PDP (Architecture v3 §31) */
.eq-pdp-unavailable {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: var(--eq-space-2xl);
	align-items: center;
	padding: var(--eq-space-xl) 0 var(--eq-space-2xl);
}

.eq-pdp-unavailable__media {
	background: var(--eq-color-surface, #f5f5f5);
	border-radius: var(--eq-radius-lg, 8px);
	overflow: hidden;
	aspect-ratio: 4 / 5;
}

.eq-pdp-unavailable__img,
.eq-pdp-unavailable__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	opacity: 0.72;
	filter: grayscale(0.15);
}

.eq-pdp-unavailable__copy .eq-h1 {
	margin: var(--eq-space-sm) 0 var(--eq-space-md);
}

.eq-pdp-unavailable__actions {
	margin-top: var(--eq-space-lg);
}

.eq-pdp-unavailable__alts {
	padding-bottom: var(--eq-space-2xl);
}

@media (max-width: 991px) {
	.eq-pdp-unavailable {
		grid-template-columns: 1fr;
		gap: var(--eq-space-xl);
	}

	.eq-pdp-unavailable__media {
		max-width: 360px;
	}
}

@media (max-width: 479px) {
	.eq-pdp-unavailable__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.eq-pdp-unavailable__actions .eq-btn {
		width: 100%;
		justify-content: center;
	}
}

/* Bricks builder: keep commerce shortcode content visible */
body:not(.bricks-is-frontend) .eq-shop,
body:not(.bricks-is-frontend) .eq-pdp,
body:not(.bricks-is-frontend) .eq-search-page,
body:not(.bricks-is-frontend) .eq-coming-soon {
	padding-top: var(--eq-space-xl);
}

/* ==========================================================================
   Phase 5B-3 — Market switch confirmation
   ========================================================================== */

html.eq-market-switch-open {
	overflow: hidden;
}

/*
 * Critical: author `display:flex` must NOT override the HTML `hidden`
 * attribute. Use :not([hidden]) so a closed modal cannot sit as an invisible
 * full-screen click-catcher above the header market selector (z-index 220).
 */
.eq-market-switch[hidden] {
	display: none !important;
	pointer-events: none !important;
}

.eq-market-switch:not([hidden]) {
	position: fixed;
	inset: 0;
	z-index: calc(var(--eq-z-drawer, 200) + 20);
	display: flex;
	align-items: flex-end;
	justify-content: center;
	pointer-events: auto;
}

.eq-market-switch__backdrop {
	position: absolute;
	inset: 0;
	background: color-mix(in srgb, var(--eq-color-ink-black, #0b0b0b) 55%, transparent);
}

.eq-market-switch__dialog {
	position: relative;
	z-index: 1;
	width: min(560px, 100%);
	max-height: min(88vh, 720px);
	overflow: auto;
	margin: 0;
	padding: var(--eq-space-xl, 1.5rem) var(--eq-space-lg, 1.25rem) var(--eq-space-lg, 1.25rem);
	background: var(--eq-color-chalk-white, #f4f4f0);
	color: var(--eq-color-ink-black, #0b0b0b);
	border-radius: var(--eq-radius-2xl, 20px) var(--eq-radius-2xl, 20px) 0 0;
	box-shadow: 0 -12px 40px rgba(0, 0, 0, 0.18);
}

.eq-market-switch__close {
	position: absolute;
	top: var(--eq-space-sm, 0.75rem);
	right: var(--eq-space-sm, 0.75rem);
}

.eq-market-switch__dialog .eq-eyebrow {
	margin: 0 0 var(--eq-space-xs, 0.5rem);
}

.eq-market-switch__dialog .eq-h3 {
	margin: 0 0 var(--eq-space-md, 1rem);
	padding-right: 2.5rem;
}

.eq-market-switch__body p {
	margin: 0 0 var(--eq-space-sm, 0.75rem);
}

.eq-market-switch__heading {
	margin-top: var(--eq-space-md, 1rem) !important;
	font-weight: 600;
}

.eq-market-switch__list {
	list-style: none;
	margin: 0 0 var(--eq-space-md, 1rem);
	padding: 0;
	display: grid;
	gap: 0.65rem;
}

.eq-market-switch__list li {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.35rem 1rem;
	padding: 0.65rem 0;
	border-bottom: 1px solid color-mix(in srgb, var(--eq-color-ink-black, #0b0b0b) 12%, transparent);
}

.eq-market-switch__item-name {
	flex: 1 1 12rem;
	min-width: 0;
	overflow-wrap: anywhere;
}

.eq-market-switch__qty {
	opacity: 0.65;
	font-size: var(--eq-type-caption, 0.8125rem);
}

.eq-market-switch__prices {
	flex: 0 1 auto;
	font-size: var(--eq-type-caption, 0.8125rem);
	white-space: nowrap;
}

.eq-market-switch__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: var(--eq-space-md, 1rem);
}

.eq-market-switch__actions .eq-btn {
	flex: 1 1 12rem;
	justify-content: center;
}

.eq-market-switch__working {
	opacity: 0.7;
	font-size: var(--eq-type-caption, 0.8125rem);
}

.eq-market__toggle:disabled,
.eq-market__toggle[aria-disabled="true"] {
	opacity: 0.55;
	cursor: not-allowed;
}

@media (min-width: 768px) {
	.eq-market-switch {
		align-items: center;
		padding: var(--eq-space-lg, 1.25rem);
	}

	.eq-market-switch__dialog {
		border-radius: var(--eq-radius-xl, 16px);
		box-shadow: 0 18px 48px rgba(0, 0, 0, 0.22);
	}
}

@media (max-width: 479px) {
	.eq-market-switch__prices {
		white-space: normal;
		width: 100%;
	}

	.eq-market-switch__actions .eq-btn {
		flex-basis: 100%;
	}
}

