/* PositiveOne — black & white lettering */

:root {
	--po-black: #111111;
	--po-white: #ffffff;
	--po-muted: #6b6b6b;
	--po-line: #e6e6e6;
	--po-display: "Bebas Neue", Impact, "Arial Narrow Bold", sans-serif;
	--po-serif: "Bebas Neue", Impact, "Arial Narrow Bold", sans-serif;
	--po-sans: Inter, system-ui, -apple-system, Segoe UI, sans-serif;
}

body {
	color: var(--po-black);
	background: var(--po-white);
	font-family: var(--po-sans);
}

h1, h2, h3, h4, h5,
.ct-module-title,
.site-title,
.woocommerce-products-header__title {
	font-family: var(--po-display);
	font-weight: 400;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.po-langbar {
	display: none !important;
}

.po-langbar__link {
	color: var(--po-muted);
	text-decoration: none;
}

.po-langbar__link.is-active,
.po-langbar__link:hover {
	color: var(--po-black);
}

.po-hero {
	min-height: 68vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 8vh 6vw;
	border-bottom: 1px solid var(--po-line);
}

.po-hero__mark {
	font-family: var(--po-serif);
	font-size: clamp(2.8rem, 8vw, 6.4rem);
	letter-spacing: 0.12em;
	margin: 0;
	font-weight: 500;
}

.po-hero__plus {
	display: inline-block;
	margin: 0 0.12em;
	font-weight: 400;
}

.po-hero__tag {
	margin: 1.25rem 0 2.2rem;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	font-size: 0.72rem;
	color: var(--po-muted);
}

.po-btn {
	display: inline-block;
	padding: 0.9rem 1.8rem;
	border: 1px solid var(--po-black);
	color: var(--po-white);
	background: var(--po-black);
	text-decoration: none;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-size: 0.72rem;
}

.po-btn:hover {
	background: var(--po-white);
	color: var(--po-black);
}

.po-btn--ghost {
	background: transparent;
	color: var(--po-black);
}

.po-btn--ghost:hover {
	background: var(--po-black);
	color: var(--po-white);
}

.po-btn--wire {
	background: transparent;
	color: var(--po-white);
	border-color: var(--po-white);
}

.po-btn--wire:hover {
	background: var(--po-white);
	color: var(--po-black);
}

.po-btn--wire.po-btn--dark {
	color: var(--po-black);
	border-color: var(--po-black);
}

.po-btn--wire.po-btn--dark:hover {
	background: var(--po-black);
	color: var(--po-white);
}

.po-btn--solid {
	background: var(--po-black);
	color: var(--po-white);
	border-color: var(--po-black);
}

.po-btn--solid:hover {
	background: var(--po-white);
	color: var(--po-black);
}

.woocommerce span.onsale {
	background: var(--po-black);
	color: var(--po-white);
}

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	background: var(--po-black) !important;
	color: var(--po-white) !important;
	border-radius: 0 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-size: 0.75rem !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover {
	background: var(--po-white) !important;
	color: var(--po-black) !important;
	border: 1px solid var(--po-black) !important;
}

:root {
	--theme-palette-color-1: #111111;
	--theme-palette-color-2: #333333;
	--theme-palette-color-3: #6b6b6b;
	--theme-palette-color-4: #111111;
	--theme-palette-color-5: #e6e6e6;
	--theme-palette-color-6: #f4f4f4;
	--theme-palette-color-7: #fafafa;
	--theme-palette-color-8: #ffffff;
	--theme-link-initial-color: #111111;
	--theme-link-hover-color: #333333;
}

a,
.ct-menu-link,
.menu-item a {
	color: inherit;
}

a:hover,
.ct-menu-link:hover {
	color: var(--po-black);
}

/* Order comes from Blocksy Header Builder — do not force CSS order. */
.ct-header [data-row="middle"] [data-column="end"] [data-items="primary"],
.ct-header [data-row="middle"] [data-column="end"],
.ct-header [data-row="middle"] [data-column="end"] [data-items="primary"] {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.65rem;
}

.ct-header [data-column="end"] [data-items="primary"] > [data-id="search"],
.ct-header [data-column="end"] [data-items="primary"] > [data-id="cart"],
.ct-header [data-column="end"] [data-items="primary"] > [data-id="languages"],
.ct-header [data-column="end"] [data-items="primary"] > [data-id="account"],
.ct-header [data-column="end"] [data-items="primary"] > .po-lang,
.ct-header [data-column="end"] [data-items="primary"] > .po-account,
.ct-header [data-column="end"] [data-items="primary"] > .ct-header-cart,
.ct-header [data-column="end"] [data-items="primary"] > .ct-header-search {
	margin: 0 !important;
	flex-shrink: 0;
}

.ct-header .lang-item,
.ct-header [data-id="languages"] img,
.ct-header-languages img,
.po-lang img {
	display: none !important;
}

.ct-header [data-column="end"] [data-items="primary"] {
	min-height: 1.25rem;
}

.ct-header [data-id="cart"] .ct-cart-item,
.ct-header [data-id="search"] .ct-header-search-modal-item-button,
.ct-header [data-id="search"] .ct-toggle,
.ct-header [data-id="search"] button,
.po-account__btn,
.po-lang__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	line-height: 1;
	min-height: var(--theme-icon-size, 15px);
	background: transparent;
	border: 0;
	box-shadow: none;
	color: inherit;
	cursor: pointer;
}

.ct-header [data-id="cart"] .ct-icon-container,
.ct-header [data-id="search"] .ct-icon-container {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--theme-icon-size, 15px);
	height: var(--theme-icon-size, 15px);
	line-height: 0;
}

.ct-header [data-id="cart"] .ct-cart-item,
.ct-header [data-id="cart"] .ct-icon,
.ct-header [data-id="cart"] svg,
.ct-header [data-id="search"],
.ct-header [data-id="search"] .ct-icon,
.ct-header [data-id="search"] svg,
.po-account__btn,
.po-account__btn .ct-icon-container svg,
.po-lang__btn,
.po-lang__btn .ct-icon-container svg,
.po-lang__code {
	color: var(--theme-icon-color, var(--po-black));
}

.ct-header [data-id="cart"] .ct-cart-item:hover,
.ct-header [data-id="cart"] .ct-cart-item:hover .ct-icon,
.ct-header [data-id="cart"] .ct-cart-item:hover svg,
.ct-header [data-id="search"]:hover,
.ct-header [data-id="search"]:hover .ct-icon,
.ct-header [data-id="search"]:hover svg,
.po-account__btn:hover,
.po-account__btn:hover .ct-icon-container svg,
.po-lang__btn:hover,
.po-lang__btn:hover .ct-icon-container svg,
.po-lang__btn:hover .po-lang__code {
	color: var(--theme-icon-hover-color, var(--theme-icon-color, var(--po-black)));
}

.po-account__btn .ct-label,
.po-lang__btn .ct-label {
	color: var(--theme-link-initial-color, var(--theme-icon-color, var(--po-black)));
}

.po-account__btn:hover .ct-label,
.po-lang__btn:hover .ct-label {
	color: var(--theme-link-hover-color, var(--theme-link-initial-color, var(--theme-icon-hover-color, var(--po-black))));
}

.ct-header [data-id="cart"] svg,
.ct-header [data-id="search"] svg,
.ct-header [data-id="search"] .ct-icon {
	width: var(--theme-icon-size, 15px) !important;
	height: var(--theme-icon-size, 15px) !important;
	fill: var(--theme-icon-color, currentColor);
}

.ct-header [data-id="cart"] .ct-dynamic-count-cart {
	top: -0.35rem;
	right: -0.45rem;
	min-width: 1rem;
	height: 1rem;
	padding: 0 0.2rem;
	font-size: 0.58rem;
	line-height: 1rem;
	color: var(--po-black);
	border: 1px solid var(--po-black);
	background: var(--po-white);
}

.po-account__btn .ct-icon-container,
.po-lang__btn .ct-icon-container {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--theme-icon-size, 15px);
	height: var(--theme-icon-size, 15px);
	flex-shrink: 0;
	line-height: 0;
}

.po-account__btn .ct-icon-container svg,
.po-lang__btn .ct-icon-container svg,
.po-account__btn .ct-icon,
.po-lang__btn .ct-icon {
	width: var(--theme-icon-size, 15px) !important;
	height: var(--theme-icon-size, 15px) !important;
	fill: var(--theme-icon-color, currentColor);
}

.po-account__btn:hover .ct-icon-container svg,
.po-lang__btn:hover .ct-icon-container svg,
.po-account__btn:hover .ct-icon,
.po-lang__btn:hover .ct-icon {
	fill: var(--theme-icon-hover-color, var(--theme-icon-color, currentColor));
}

.po-lang__btn {
	gap: 0.35rem;
}

.po-lang__code {
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	line-height: 1;
}

.ct-header [data-row="middle"] [data-column="end"],
.ct-header .header-menu-container + .header-items,
.ct-header [data-items="primary"] {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.65rem;
}

.ct-header .menu-item a,
.ct-header .ct-menu-link {
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.po-front.po-void #header {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 50;
}

.po-front.po-void .ct-header,
.po-front.po-void .ct-header [data-row*="middle"] {
	background: transparent !important;
	border-bottom: none !important;
	box-shadow: none !important;
}

.po-front.po-void .ct-header [data-row*="middle"] .ct-menu-link,
.po-front.po-void .ct-header [data-id="cart"],
.po-front.po-void .ct-header [data-id="search"],
.po-front.po-void .ct-header [data-id="languages"],
.po-front.po-void .ct-header [data-id="account"],
.po-front.po-void .po-account__btn,
.po-front.po-void .po-lang__btn {
	color: var(--po-white);
}

.po-front.po-void .ct-header [data-id="cart"] .ct-cart-item,
.po-front.po-void .ct-header [data-id="cart"] .ct-icon-container,
.po-front.po-void .ct-header [data-id="cart"] .ct-icon,
.po-front.po-void .ct-header [data-id="search"] .ct-icon,
.po-front.po-void .ct-header [data-id="search"] svg,
.po-front.po-void .po-account__btn,
.po-front.po-void .po-account__btn .ct-icon-container svg,
.po-front.po-void .po-account__btn .ct-label,
.po-front.po-void .po-lang__btn,
.po-front.po-void .po-lang__btn .ct-icon-container svg,
.po-front.po-void .po-lang__code,
.po-front.po-void .po-lang__btn .ct-label {
	color: #fff !important;
	--theme-icon-color: #fff !important;
	--theme-icon-hover-color: #fff !important;
	--theme-link-initial-color: #fff !important;
	--theme-link-hover-color: #fff !important;
}

/* Cart bag is fill-only — force white fill (never stroke-only). */
.po-front.po-void .ct-header [data-id="cart"] .ct-icon-container svg,
.po-front.po-void .ct-header [data-id="cart"] .ct-icon-container svg * {
	fill: #fff !important;
	stroke: none !important;
	color: #fff !important;
}

.po-front.po-void .ct-header [data-id="search"] svg,
.po-front.po-void .po-account__btn .ct-icon-container svg,
.po-front.po-void .po-lang__btn .ct-icon-container svg {
	fill: currentColor !important;
}

.po-front.po-void .ct-header [data-id="search"] svg [fill="none"],
.po-front.po-void .po-account__btn .ct-icon-container svg [fill="none"],
.po-front.po-void .po-lang__btn .ct-icon-container svg [fill="none"],
.po-front.po-void .ct-header [data-id="search"] svg path:not([fill]),
.po-front.po-void .po-lang__btn .ct-icon-container svg path[stroke] {
	fill: none !important;
	stroke: currentColor !important;
}

/* Outlined white cart on void home: dark digit on white chip so count is readable. */
.po-front.po-void .ct-header [data-id="cart"] .ct-cart-count,
.po-front.po-void .ct-header [data-id="cart"] .ct-dynamic-count-cart {
	color: #111 !important;
	background: #fff !important;
	border: 1px solid #fff !important;
	min-width: 1.05rem;
	height: 1.05rem;
	line-height: 1.05rem;
	font-weight: 700;
	z-index: 2;
}

.po-front.po-void .ct-header .site-logo-container img,
.po-front.po-void .ct-header [data-id="logo"] img {
	max-height: 56px;
	width: auto;
}

.po-front.po-void .ct-header [data-id="logo"] .site-logo-container {
	--logo-max-height: 56px;
}

.ct-header [data-id="logo"] .site-logo-container {
	--logo-max-height: 56px;
}

/* Mobile header: hamburger | logo — icons live in offcanvas */
@media (max-width: 999.98px) {
	.ct-header [data-device="mobile"] [data-row*="middle"] {
		align-items: center;
	}

	.ct-header [data-device="mobile"] [data-column="middle"] {
		justify-content: center;
		text-align: center;
	}

	.ct-header [data-device="mobile"] [data-id="logo"] .site-logo-container,
	.po-front.po-void .ct-header [data-device="mobile"] [data-id="logo"] .site-logo-container {
		--logo-max-height: 28px;
	}

	.ct-header [data-device="mobile"] [data-id="logo"] img,
	.po-front.po-void .ct-header [data-device="mobile"] [data-id="logo"] img {
		max-height: 28px !important;
		width: auto !important;
		height: auto !important;
	}

	.ct-header [data-device="mobile"] [data-id="trigger"] {
		--theme-icon-size: 18px;
	}
}

/* Offcanvas: dark panel, white type, even spacing */
#offcanvas {
	--po-offcanvas-row: 0.7rem;
}

#offcanvas .ct-panel-content-inner {
	display: flex;
	flex-direction: column;
	gap: 0;
	color: #fff;
	--margin: 0;
	--theme-text-color: #fff;
	--theme-link-initial-color: #fff;
	--theme-link-hover-color: #fff;
	--theme-icon-color: #fff;
	--theme-icon-hover-color: #fff;
}

#offcanvas .ct-panel-content-inner > * {
	margin: 0 !important;
}

#offcanvas [data-items],
#offcanvas [data-items="primary"] {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0.15rem !important;
	width: 100%;
	margin: 0 !important;
}

#offcanvas [data-id="mobile-menu"],
#offcanvas [data-id="search"],
#offcanvas [data-id="languages"],
#offcanvas [data-id="account"],
#offcanvas .po-account,
#offcanvas .po-lang {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	color: #fff !important;
	--theme-text-color: #fff;
	--theme-link-initial-color: #fff;
	--theme-link-hover-color: #fff;
	--theme-icon-color: #fff;
	--theme-icon-hover-color: #fff;
}

#offcanvas [data-id="mobile-menu"] {
	--menu-item-padding: var(--po-offcanvas-row) 0;
	--items-vertical-spacing: 0;
}

#offcanvas [data-id="mobile-menu"] a,
#offcanvas [data-id="mobile-menu"] .ct-menu-link,
#offcanvas [data-id="mobile-menu"] .menu-item > a {
	color: #fff !important;
	padding-block: var(--po-offcanvas-row) !important;
	margin: 0 !important;
	line-height: 1.2;
}

#offcanvas [data-id="mobile-menu"] .menu-item,
#offcanvas [data-id="mobile-menu"] ul,
#offcanvas [data-id="mobile-menu"] li {
	margin: 0 !important;
	padding-inline: 0;
}

#offcanvas [data-id="search"] > button,
#offcanvas [data-id="search"] > .ct-header-search,
#offcanvas button.ct-header-search[data-id="search"],
#offcanvas .ct-header-search[data-id="search"] {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0.75rem;
	width: 100%;
	padding: var(--po-offcanvas-row) 0 !important;
	min-height: 0;
	color: #fff !important;
	--theme-icon-color: #fff;
	--theme-link-initial-color: #fff;
	text-decoration: none;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	background: transparent;
	border: 0;
	box-shadow: none;
	cursor: pointer;
	line-height: 1.2;
}

#offcanvas .po-account__heading,
#offcanvas .po-lang__heading,
#offcanvas .po-account__btn,
#offcanvas .po-lang__btn {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: var(--po-offcanvas-row) 0 0.2rem !important;
	margin: 0 !important;
	color: #fff !important;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	background: transparent;
	border: 0;
	line-height: 1.2;
}

#offcanvas .po-account__menu,
#offcanvas .po-lang__menu {
	list-style: none;
	margin: 0 !important;
	padding: 0 0 0.15rem !important;
	width: 100%;
}

#offcanvas .po-account__menu {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0;
}

#offcanvas .po-lang__menu {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.25rem 0.9rem;
	padding-bottom: var(--po-offcanvas-row) !important;
}

#offcanvas .po-account__menu > li,
#offcanvas .po-lang__menu > li {
	display: block !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#offcanvas .po-account__menu > li {
	width: 100% !important;
}

#offcanvas .po-lang__menu > li {
	width: auto !important;
}

#offcanvas .po-account__menu a,
#offcanvas .po-account__drop a {
	display: block !important;
	width: 100%;
	padding: 0.45rem 0 0.45rem 0.1rem !important;
	margin: 0 !important;
	color: #fff !important;
	background: transparent !important;
	text-decoration: none;
	font-size: 0.82rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 1 !important;
	line-height: 1.2;
}

#offcanvas .po-lang__menu a,
#offcanvas .po-lang__menu .po-lang__link,
#offcanvas .po-lang__link,
#offcanvas .po-lang__drop .po-lang__link {
	display: inline-block !important;
	width: auto;
	padding: 0.25rem 0 !important;
	margin: 0 !important;
	color: #fff !important;
	background: transparent !important;
	text-decoration: none;
	font-size: 0.82rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 1 !important;
	line-height: 1.2;
}

#offcanvas .po-account__menu a:hover,
#offcanvas .po-account__drop a:hover,
#offcanvas .po-lang__menu a:hover,
#offcanvas .po-lang__link:hover {
	color: #fff !important;
	background: transparent !important;
	opacity: 0.55 !important;
}

#offcanvas .po-lang__menu a.is-active,
#offcanvas .po-lang__link.is-active {
	color: #fff !important;
	background: transparent !important;
	opacity: 1 !important;
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

#offcanvas [data-id="search"] .ct-label,
#offcanvas .po-account__heading .ct-label,
#offcanvas .po-lang__heading .ct-label,
#offcanvas .po-lang__heading .po-lang__code,
#offcanvas .po-account__btn .ct-label,
#offcanvas .po-lang__btn .ct-label,
#offcanvas .po-lang__btn .po-lang__code {
	color: #fff !important;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

#offcanvas [data-id="search"] .ct-icon,
#offcanvas .po-account__heading .ct-icon-container,
#offcanvas .po-lang__heading .ct-icon-container,
#offcanvas .po-account__btn .ct-icon-container,
#offcanvas .po-lang__btn .ct-icon-container,
#offcanvas .po-account svg,
#offcanvas .po-lang svg {
	--theme-icon-size: 18px;
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: #fff !important;
	fill: currentColor;
	stroke: currentColor;
}

#offcanvas .po-account__drop,
#offcanvas .po-lang__drop {
	position: static !important;
	display: grid !important;
	min-width: 0;
	margin: 0 !important;
	border: 0;
	background: transparent !important;
	box-shadow: none !important;
}

#offcanvas .po-account__drop[hidden],
#offcanvas .po-lang__drop[hidden] {
	display: grid !important;
}

/*
 * Trigger contrast:
 * - Default / white header: black (readable on light bar; Blocksy Design colors apply when not void).
 * - Void homepage (transparent over image): force white.
 */
body:not(.po-void) .ct-header [data-id="trigger"],
body:not(.po-void) .ct-header [data-id="trigger"] .ct-icon,
body:not(.po-void) .ct-header [data-id="trigger"] svg {
	color: #111;
	--theme-icon-color: #111;
	--theme-icon-hover-color: #111;
	fill: currentColor;
}

.po-front.po-void .ct-header [data-id="trigger"],
.po-front.po-void .ct-header [data-id="trigger"] .ct-icon,
.po-front.po-void .ct-header [data-id="trigger"] svg {
	color: #fff !important;
	--theme-icon-color: #fff !important;
	--theme-icon-hover-color: #fff !important;
	fill: #fff !important;
}

.po-front.po-void #header {
	padding-top: 0;
}

.po-lang {
	position: relative;
}

.po-account {
	position: relative;
}

.po-account__btn,
.po-lang__btn {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	border: 0;
	background: transparent;
	padding: 0;
	cursor: pointer;
	color: var(--theme-icon-color, #111);
	line-height: 1;
	font-size: 0.72rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.po-lang__btn .ct-icon-container {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--theme-icon-size, 15px);
	height: var(--theme-icon-size, 15px);
}

.po-lang__btn .ct-icon-container svg {
	display: block;
	width: var(--theme-icon-size, 15px) !important;
	height: var(--theme-icon-size, 15px) !important;
}

.po-lang__code {
	min-width: 1.4rem;
}

.po-account__drop,
.po-lang__drop {
	position: absolute;
	right: 0;
	top: calc(100% + 10px);
	min-width: 120px;
	background: #fff;
	border: 1px solid #111;
	z-index: 80;
	display: grid;
}

.po-account__drop[hidden],
.po-lang__drop[hidden] {
	display: none;
}

.po-account__drop a,
.po-lang__link {
	padding: 0.75rem 1rem;
	color: #111;
	text-decoration: none;
	font-size: 0.8rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.po-account__drop a:hover,
.po-lang__drop .po-lang__link:hover,
.po-lang__drop .po-lang__link.is-active {
	background: #111;
	color: #fff;
}

.po-woo-wide .site-main .ct-container,
.po-woo-wide .site-main .ct-container-fluid,
.po-woo-wide .site-main > article .entry-content {
	max-width: none !important;
	width: 100% !important;
	padding-inline: 6vw;
}

.po-woo-wide .site-main {
	--theme-block-max-width: 100%;
}

.po-woo-wide .ct-container[data-sidebar] {
	grid-template-columns: 1fr !important;
}

.po-woo-wide aside.ct-sidebar {
	display: none !important;
}

.po-shop-landing .products.columns-2,
.po-shop-landing ul.products.columns-2 {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr) !important;
	gap: 1.25rem;
}

.po-shop-landing ul.products li.product-category {
	min-height: min(520px, 62vh);
	margin: 0 !important;
	width: 100% !important;
	float: none !important;
}

.po-shop-landing ul.products li.product-category img {
	width: 100%;
	height: min(480px, 58vh);
	object-fit: cover;
}

.po-shop-landing ul.products li.product-category .woocommerce-loop-category__title,
.po-shop-landing ul.products li.product-category .count {
	position: absolute;
	left: 1.5rem;
	bottom: 1.5rem;
	z-index: 2;
	margin: 0;
	color: #fff;
	font-family: var(--po-serif);
	font-size: clamp(1.4rem, 3vw, 2rem);
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.po-shop-landing ul.products li.product-category .count {
	display: none !important;
}

.po-shop-landing ul.products li.product-category a {
	display: block;
	position: relative;
	height: 100%;
	min-height: inherit;
}

.po-shop-landing ul.products li.product-category a::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.05) 30%, rgba(0,0,0,0.62) 100%);
	pointer-events: none;
}

.po-footer {
	border-top: 1px solid var(--po-line);
	background: var(--po-white);
	padding: 4rem 6vw 2rem;
	margin-top: 0;
}

.po-footer__inner {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: 3rem;
	max-width: 1200px;
	margin: 0 auto;
}

@media (max-width: 900px) {
	.po-footer__inner {
		grid-template-columns: 1fr;
	}
}

.po-footer__logo img {
	max-height: 44px;
	width: auto;
}

.po-footer__mark {
	font-family: var(--po-serif);
	font-size: 1.6rem;
	letter-spacing: 0.12em;
	margin: 0;
}

.po-footer__tag {
	color: var(--po-muted);
	font-size: 0.72rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin: 0.75rem 0 0;
}

.po-footer__cols {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}

@media (max-width: 700px) {
	.po-footer__cols {
		grid-template-columns: 1fr;
	}
}

.po-footer__col h3 {
	font-family: var(--po-serif);
	font-size: 0.85rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	margin: 0 0 1rem;
	font-weight: 500;
}

.po-footer__col ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.po-footer__col li {
	margin: 0.35rem 0;
}

.po-footer__col a {
	color: var(--po-muted);
	text-decoration: none;
	font-size: 0.85rem;
}

.po-footer__col a:hover {
	color: var(--po-black);
}

.po-footer__copy {
	text-align: center;
	color: var(--po-muted);
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	margin: 0;
}

.po-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1.25rem;
	max-width: 1200px;
	margin: 2.5rem auto 0;
	padding-top: 1.5rem;
	border-top: 1px solid var(--po-line);
}

.po-payments {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.po-payments__icon {
	display: block;
	width: auto;
	height: 1.35rem;
	object-fit: contain;
	opacity: 1;
}

.po-scroll-top {
	position: fixed;
	right: 1.25rem;
	bottom: 1.25rem;
	z-index: 90;
	width: 2.75rem;
	height: 2.75rem;
	border: 1px solid var(--po-black);
	background: var(--po-black);
	color: var(--po-white);
	cursor: pointer;
	font-size: 1.1rem;
	line-height: 1;
	padding: 0;
}

.po-scroll-top:hover {
	background: var(--po-white);
	color: var(--po-black);
}

.po-cart-empty {
	text-align: center;
	padding: 1.5rem 0.5rem;
}

.po-cart-empty__text {
	margin: 0 0 1rem;
	font-size: 0.85rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--po-muted);
}

.with-empty-cart-icon::before,
.wc-block-cart__empty-cart__title.with-empty-cart-icon::before {
	display: none !important;
}

.ct-cart-content .po-cart-empty .po-btn {
	font-size: 0.68rem;
	padding: 0.75rem 1.25rem;
}

/* Mini cart — high-contrast black & white */
.ct-header-cart .ct-cart-content,
.ct-header [data-id="cart"] .ct-cart-content,
#woo-cart-panel .ct-panel-inner {
	--mini-cart-background-color: #fff;
	--mini-cart-divider-color: rgba(17, 17, 17, 0.14);
	--theme-text-color: #111;
	--theme-link-initial-color: #111;
	--theme-link-hover-color: #111;
	background: #fff !important;
	color: #111 !important;
	border: 1px solid #111;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.14);
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart li,
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__total,
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__empty-message,
.ct-header-cart .ct-cart-content .product-title,
.ct-header-cart .ct-cart-content .quantity,
.ct-header-cart .ct-cart-content .product-data,
#woo-cart-panel .woocommerce-mini-cart li,
#woo-cart-panel .woocommerce-mini-cart__total,
#woo-cart-panel .woocommerce-mini-cart__empty-message,
#woo-cart-panel .product-title,
#woo-cart-panel .quantity,
#woo-cart-panel .product-data {
	color: #111 !important;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart li:not(:last-child),
#woo-cart-panel .woocommerce-mini-cart li:not(:last-child) {
	border-bottom-color: rgba(17, 17, 17, 0.12) !important;
}

.ct-header-cart .ct-cart-content .product-title,
#woo-cart-panel .product-title {
	font-weight: 600;
	text-decoration: none;
}

.ct-header-cart .ct-cart-content .product-title:hover,
#woo-cart-panel .product-title:hover {
	opacity: 0.72;
}

.ct-header-cart .ct-cart-content .quantity,
#woo-cart-panel .quantity {
	color: #444 !important;
	font-size: 0.82rem;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart .remove,
#woo-cart-panel .woocommerce-mini-cart .remove {
	--theme-icon-color: #111;
	--theme-link-initial-color: #111;
	color: #111 !important;
	opacity: 0.7;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart .remove:hover,
#woo-cart-panel .woocommerce-mini-cart .remove:hover {
	opacity: 1;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart__total,
.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons,
#woo-cart-panel .woocommerce-mini-cart__total,
#woo-cart-panel .woocommerce-mini-cart__buttons {
	border-top-color: rgba(17, 17, 17, 0.14) !important;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart__total .amount,
#woo-cart-panel .woocommerce-mini-cart__total .amount {
	color: #111 !important;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button,
#woo-cart-panel .woocommerce-mini-cart__buttons .button {
	--theme-button-text-initial-color: #111;
	--theme-button-text-hover-color: #fff;
	--theme-button-background-initial-color: #fff;
	--theme-button-background-hover-color: #111;
	--theme-button-border: 1px solid #111;
	--theme-button-border-hover-color: #111;
	border: 1px solid #111 !important;
	background: #fff !important;
	color: #111 !important;
	box-shadow: none !important;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button:hover,
#woo-cart-panel .woocommerce-mini-cart__buttons .button:hover {
	background: #111 !important;
	color: #fff !important;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button.checkout,
#woo-cart-panel .woocommerce-mini-cart__buttons .button.checkout {
	--theme-button-text-initial-color: #fff;
	--theme-button-text-hover-color: #111;
	--theme-button-background-initial-color: #111;
	--theme-button-background-hover-color: #fff;
	background: #111 !important;
	color: #fff !important;
}

.ct-header-cart .ct-cart-content .woocommerce-mini-cart__buttons .button.checkout:hover,
#woo-cart-panel .woocommerce-mini-cart__buttons .button.checkout:hover {
	background: #fff !important;
	color: #111 !important;
}

.ct-header-cart .ct-cart-content .po-cart-empty__text {
	color: #444;
}

.po-shop-landing .site-main > .ct-container,
.po-shop-landing .site-main > .ct-container-fluid,
.po-shop-landing.po-woo-wide .site-main .ct-container,
.po-shop-landing.po-woo-wide .site-main .ct-container-fluid,
.po-shop-landing.po-woo-wide .site-main > article .entry-content {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
}

.po-shop-landing .site-main,
.po-shop-landing .entry-content,
.po-shop-landing .site-main > article {
	margin: 0 !important;
	padding: 0 !important;
}

.po-shop-landing .hero-section,
.po-shop-landing .entry-header,
.po-shop-landing .page-title,
.po-shop-landing [class*="hero-type"] {
	display: none !important;
}

.po-shop-landing .site-main,
.po-shop-landing .entry-content {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.po-shop-landing .po-shop-cats,
.po-shop-landing .po-void-split.po-void-split--3 {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	width: 100%;
	max-width: none;
	margin: 0;
	min-height: min(88svh, calc(100svh - 7.5rem));
	height: min(88svh, calc(100svh - 7.5rem));
}

.po-shop-landing .po-shop-cats .po-void-split__tile {
	min-height: 100%;
	height: 100%;
	max-height: none;
}

.po-shop-cats .po-void-split__shade {
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.12) 0%, rgba(0, 0, 0, 0.28) 45%, rgba(0, 0, 0, 0.78) 100%);
}

.po-shop-cats .po-void-split__content {
	justify-content: flex-end;
	padding: 2rem 1.25rem clamp(2rem, 4vh, 3.25rem);
}

.po-shop-cats .po-void-split__title {
	flex: 1 1 auto;
	min-height: 0;
	align-items: center;
	padding-bottom: 1rem;
}

.po-shop-cats .po-void-split__tile .po-btn {
	flex-shrink: 0;
	margin-top: auto;
}

@media (max-width: 900px) {
	.po-shop-landing .po-void-split.po-void-split--3 {
		grid-template-columns: 1fr !important;
		height: auto;
		min-height: 0;
	}

	.po-shop-landing .po-shop-cats .po-void-split__tile {
		min-height: min(72svh, 640px);
		height: min(72svh, 640px);
	}
}

.home .hero-section,
.home .entry-header,
.home .page-title,
.home [class*="hero-type"] {
	display: none !important;
}

.home .entry-content > .po-home,
.home .entry-content > .po-slider {
	margin-top: 0;
}

.home .site-main,
.home .entry-content {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Homepage full-bleed — escape Blocksy / WP constrained layout */
.po-front .site-main,
.po-front .site-main > .ct-container-full,
.po-front .site-main > article,
.po-front .entry-content,
.po-front .entry-content.is-layout-constrained {
	max-width: none !important;
	width: 100% !important;
	padding-inline: 0 !important;
	margin-inline: 0 !important;
}

.po-front .entry-content.is-layout-constrained > .po-home,
.po-front .entry-content.is-layout-constrained > .po-home--void {
	max-width: none !important;
	width: 100% !important;
	margin-inline: 0 !important;
}

.po-front .site-main {
	--theme-block-max-width: 100%;
	--theme-block-wide-max-width: 100%;
	--theme-container-edge-spacing: 0;
}

.po-front .site-main,
.po-front .entry-content,
.po-front .entry-content > .po-home,
.po-home--void,
.po-void-look {
	overflow: visible !important;
}

.po-front .site-main > .ct-container-full {
	padding-inline: 0 !important;
}

.woocommerce ul.products li.product-category a {
	color: var(--po-black);
}

.woocommerce ul.products li.product-category img {
	width: 100%;
	height: auto;
}

.woocommerce-page.post-type-archive-product ul.products.columns-2 li.product-category,
.woocommerce.post-type-archive-product ul.products.columns-2 li.product-category {
	min-height: 420px;
}

.woocommerce-page.post-type-archive-product ul.products.columns-2 li.product-category .woocommerce-loop-category__title,
.woocommerce.post-type-archive-product ul.products.columns-2 li.product-category .woocommerce-loop-category__title {
	font-family: var(--po-serif);
	font-size: 1.4rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.woocommerce-page.post-type-archive-product ul.products.columns-2 li.product-category a,
.woocommerce.post-type-archive-product ul.products.columns-2 li.product-category a {
	display: block;
	position: relative;
	overflow: hidden;
}

.woocommerce-page.post-type-archive-product ul.products.columns-2 li.product-category a::after,
.woocommerce.post-type-archive-product ul.products.columns-2 li.product-category a::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 40%, rgba(0, 0, 0, 0.55));
	pointer-events: none;
}

.woocommerce-page.post-type-archive-product ul.products.columns-2 li.product-category .woocommerce-loop-category__title,
.woocommerce.post-type-archive-product ul.products.columns-2 li.product-category .woocommerce-loop-category__title {
	position: absolute;
	left: 1.25rem;
	bottom: 1.25rem;
	z-index: 1;
	color: #fff;
	margin: 0;
}

.woocommerce-info,
.woocommerce-message {
	border-top-color: var(--po-black) !important;
}

.woocommerce-info::before,
.woocommerce-message::before {
	color: var(--po-black) !important;
}

.po-woo-wide ul.products.columns-3 {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 1.5rem !important;
}

@media (max-width: 900px) {
	.po-woo-wide ul.products.columns-3 {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 560px) {
	.po-woo-wide ul.products.columns-3 {
		grid-template-columns: 1fr !important;
	}
}

/* QR landing — no chrome, light */
html:has(body.po-landing-solo) {
	background: #ffffff !important;
}

body.po-landing-solo {
	margin: 0 !important;
	min-height: 100vh;
	background: #ffffff !important;
	background-color: #ffffff !important;
	background-image: none !important;
	color: #111111 !important;
}

body.po-landing-solo .po-landing {
	min-height: 100vh;
	max-width: none;
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 2rem 1.25rem;
	box-sizing: border-box;
	color: #111111;
	background: transparent;
}

body.po-landing-solo .po-landing__phrase {
	font-family: var(--po-display);
	font-size: clamp(2rem, 6vw, 4.2rem);
	line-height: 1.15;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin: 0 0 1.5rem;
	max-width: min(36ch, 92vw);
	color: #111111;
}

body.po-landing-solo .po-landing__brand {
	font-family: var(--po-display);
	letter-spacing: 0.32em;
	font-size: 0.72rem;
	margin: 0 0 2rem;
	color: #6b6b6b;
	text-transform: uppercase;
}

body.po-landing-solo .po-landing__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
}

body.po-landing-solo .po-btn,
body.po-landing-solo .po-btn--wire,
body.po-landing-solo .po-btn--ghost {
	background: transparent;
	color: #111111;
	border-color: #111111;
}

body.po-landing-solo .po-btn:hover,
body.po-landing-solo .po-btn--wire:hover,
body.po-landing-solo .po-btn--ghost:hover {
	background: #111111;
	color: #ffffff;
}

/* Search modal — white canvas, black type/borders/controls */
#search-modal.ct-panel,
#search-modal {
	background: #fff !important;
	color: #111 !important;
	--theme-text-color: #111;
	--theme-link-initial-color: #111;
	--theme-link-hover-color: #111;
	--theme-icon-color: #111;
	--theme-icon-hover-color: #111;
	--theme-button-text-initial-color: #111;
	--theme-button-text-hover-color: #fff;
	--theme-button-background-initial-color: #fff;
	--theme-button-background-hover-color: #111;
	--search-dropdown-background: #fff;
}

#search-modal .ct-panel-content,
#search-modal .ct-search-form,
#search-modal .ct-search-form-inner {
	color: #111;
}

#search-modal .ct-search-form-inner {
	border: 1px solid #111 !important;
	background: #fff !important;
	border-radius: 0 !important;
}

#search-modal .ct-search-form input[type="search"],
#search-modal .ct-search-form input.modal-field,
#search-modal .ct-search-form .modal-field {
	color: #111 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

#search-modal .ct-search-form input::placeholder {
	color: rgba(17, 17, 17, 0.45);
}

#search-modal .ct-search-form .wp-element-button,
#search-modal .ct-search-form button[type="submit"],
#search-modal .ct-search-form .ct-search-submit {
	background: #fff !important;
	color: #111 !important;
	border: 1px solid #111 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

#search-modal .ct-search-form .wp-element-button:hover,
#search-modal .ct-search-form button[type="submit"]:hover {
	background: #111 !important;
	color: #fff !important;
}

#search-modal .ct-search-form .wp-element-button .ct-icon,
#search-modal .ct-search-form button[type="submit"] svg,
#search-modal .ct-toggle-close .ct-icon,
#search-modal .ct-toggle-close svg {
	fill: currentColor !important;
	color: inherit !important;
}

#search-modal .ct-toggle-close {
	color: #111 !important;
	border: 1px solid #111 !important;
	background: #fff !important;
	border-radius: 0 !important;
}

#search-modal .ct-toggle-close:hover {
	background: #111 !important;
	color: #fff !important;
}

#search-modal .ct-search-results,
#search-modal .ct-search-results a {
	color: #111 !important;
	background: transparent !important;
}

#search-modal .ct-search-results a {
	border-bottom: 1px solid rgba(17, 17, 17, 0.12) !important;
	padding-block: 0.85rem !important;
}

#search-modal .ct-search-results a:hover {
	color: #111 !important;
	opacity: 0.7;
}

#search-modal .ct-search-results .price,
#search-modal .ct-search-results .stock-status {
	color: #111 !important;
}

