/*
Theme Name: Argo Shop
Description: ArgoManuals WooCommerce child theme for Landini and McCormick manuals.
Author: ArgoManuals
Template: twentytwentyfour
Version: 1.0.13
Text Domain: argo-shop
*/

/* ArgoManuals static two-brand home hero. */
.argo-home-hero {
	--argo-red: #b5122b;
	--argo-blue: #00679e;
	position: relative;
	display: grid;
	grid-template-rows: 1fr auto;
	min-height: clamp(680px, calc(100svh - 84px), 940px);
	width: 100%;
	overflow: hidden;
	isolation: isolate;
	background-color: #dce7ee;
	background-image:
		linear-gradient(180deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,0) 62%, rgba(5,15,24,.2) 100%),
		url("images/argo-home-hero-v1.webp");
	background-position: center, center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	font-family: Inter, "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
}

.argo-home-hero__copy {
	z-index: 1;
	align-self: start;
	justify-self: center;
	width: min(92%, 880px);
	padding: clamp(48px, 7vh, 92px) 20px 280px;
	text-align: center;
	color: #0b1823;
	text-shadow: 0 1px 18px rgba(255,255,255,.8);
}

.argo-home-hero__eyebrow {
	margin: 0 0 2px;
	font-size: clamp(1.5rem, 3vw, 2.65rem);
	font-weight: 850;
	letter-spacing: -.035em;
	text-transform: uppercase;
}

.argo-home-hero__eyebrow span { color: var(--argo-red); }
.argo-home-hero__eyebrow b { color: var(--argo-blue); font-weight: inherit; }

.argo-home-hero h1 {
	margin: 0;
	font-size: clamp(3.1rem, 7.2vw, 6.7rem);
	font-weight: 900;
	line-height: .98;
	letter-spacing: -.055em;
	text-transform: uppercase;
}

.argo-home-hero__rule {
	display: block;
	width: 76px;
	height: 4px;
	margin: 22px auto 16px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--argo-red) 0 50%, var(--argo-blue) 50%);
}

.argo-home-hero__copy > p:not(.argo-home-hero__eyebrow) {
	max-width: 660px;
	margin: 0 auto 13px;
	font-size: clamp(1rem, 1.5vw, 1.2rem);
	line-height: 1.5;
}

.argo-home-hero__copy > strong {
	display: block;
	font-size: clamp(.9rem, 1.4vw, 1.08rem);
	font-weight: 850;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.argo-home-hero__brands {
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	width: min(calc(100% - 40px), 920px);
	margin: 0 auto clamp(24px, 4vh, 48px);
	border: 1px solid rgba(255,255,255,.28);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 18px 45px rgba(4,15,25,.28);
}

.argo-brand-card {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 20px;
	min-height: 120px;
	padding: 24px clamp(22px, 3vw, 40px);
	color: #fff !important;
	text-decoration: none !important;
	transition: filter .2s ease, transform .2s ease;
}

.argo-brand-card--mccormick { background: linear-gradient(135deg, #a90e25, #d01633); }
.argo-brand-card--landini { background: linear-gradient(135deg, #075788, #0075af); }
.argo-brand-card:hover { filter: brightness(1.08); }
.argo-brand-card:focus-visible { outline: 4px solid #fff; outline-offset: -6px; }
.argo-brand-card__copy { display: grid; gap: 5px; }

.argo-brand-card__copy strong {
	font-size: clamp(1.35rem, 2.3vw, 2rem);
	font-weight: 850;
	line-height: 1.05;
	letter-spacing: -.025em;
}

.argo-brand-card__copy small { font-size: clamp(.82rem, 1.2vw, .98rem); line-height: 1.35; opacity: .92; }
.argo-brand-card__arrow { font-size: clamp(2rem, 3vw, 2.8rem); font-weight: 300; line-height: 1; }

/* Brand -> Document Type navigation. */
.argo-document-types {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(18px, 3vw, 32px);
	width: min(100%, 1040px);
	margin: clamp(28px, 5vw, 64px) auto;
}

.argo-document-type-card {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 20px;
	min-height: 142px;
	padding: clamp(22px, 3vw, 38px);
	border: 1px solid #dce2e7;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 34px rgba(18,38,55,.08);
	color: #122333 !important;
	text-decoration: none !important;
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.argo-document-type-card:hover { transform: translateY(-3px); border-color: var(--sdf-brand-color); box-shadow: 0 16px 38px rgba(18,38,55,.14); }
.argo-document-type-card__icon {
	display: grid;
	place-items: center;
	width: 2.75rem;
	height: 2.75rem;
}
.argo-document-type-card__icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.argo-document-type-card > span:nth-child(2) { display: grid; gap: 7px; }
.argo-document-type-card strong { font-size: clamp(1.25rem, 2vw, 1.75rem); line-height: 1.15; }
.argo-document-type-card small { color: #63717d; }
.argo-document-type-card > b { font-size: 2rem; font-weight: 400; color: var(--sdf-brand-color); }

.argo-document-list { margin-block: clamp(28px, 5vw, 64px); }
.argo-document-list .sdf-document-table__document td:last-child a { display: flex; justify-content: space-between; gap: 16px; }

body.brand-mccormick { --sdf-brand-color: #b5122b; }
body.brand-landini { --sdf-brand-color: #00679e; }

@media (max-width: 1100px) {
	.argo-home-hero { min-height: min(900px, calc(100svh - 72px)); }
	.argo-home-hero__copy { padding-top: clamp(36px, 5vh, 60px); }
}

@media (max-width: 800px) {
	.argo-home-hero {
		min-height: max(760px, calc(100svh - 64px));
		background-image: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0) 70%), url("images/argo-home-hero-v1.webp");
		background-position: center, center 68%;
		background-size: cover, auto 48%;
	}
	.argo-home-hero__copy { width: 100%; padding: 38px 18px 300px; }
	.argo-home-hero h1 { font-size: clamp(3rem, 12vw, 5rem); }
	.argo-home-hero__brands { width: min(calc(100% - 28px), 620px); margin-bottom: 18px; }
	.argo-brand-card { min-height: 108px; padding: 20px; gap: 12px; }
	.argo-brand-card__copy strong { font-size: clamp(1.15rem, 3.3vw, 1.5rem); }
	.argo-document-types { grid-template-columns: 1fr; padding-inline: 18px; }
}

@media (max-width: 560px) {
	.argo-home-hero {
		min-height: 850px;
		background-position: center, center 58%;
		background-size: cover, auto 38%;
	}
	.argo-home-hero__copy { padding: 32px 14px 300px; }
	.argo-home-hero__eyebrow { font-size: clamp(1.2rem, 6.2vw, 1.65rem); }
	.argo-home-hero h1 { font-size: clamp(2.65rem, 14vw, 4rem); letter-spacing: -.06em; }
	.argo-home-hero__rule { margin-block: 16px 12px; }
	.argo-home-hero__brands { grid-template-columns: 1fr; border-radius: 12px; }
	.argo-brand-card { min-height: 94px; padding: 18px 20px; }
	.argo-brand-card__copy strong { font-size: 1.35rem; }
	.argo-brand-card__arrow { font-size: 2rem; }
	.argo-document-type-card { min-height: 118px; gap: 14px; padding: 20px; }
	.argo-document-list .sdf-document-table,
	.argo-document-list .sdf-document-table tbody,
	.argo-document-list .sdf-document-table tr,
	.argo-document-list .sdf-document-table td { display: block; width: 100%; }
	.argo-document-list .sdf-document-table thead { display: none; }
	.argo-document-list .sdf-document-table__document { padding: 16px; border-bottom: 1px solid #dce2e7; }
	.argo-document-list .sdf-document-table__document td { border: 0; padding: 6px 0; }
}

@media (max-height: 720px) and (min-width: 801px) {
	.argo-home-hero { min-height: 650px; }
	.argo-home-hero__copy { padding-top: 28px; }
	.argo-home-hero__brands { margin-bottom: 18px; }
}

@media (prefers-reduced-motion: reduce) {
	.argo-brand-card, .argo-document-type-card { transition: none; }
}

/*
 * SDF Manuals brand catalogue (style.css).
 * The class on body is generated automatically from the root product category.
 */

:root {
	--sdf-brand-color: #333333;
	--sdf-brand-color-rgb: 51, 51, 51;
	--sdf-brand-contrast: #ffffff;
}

/*
 * URL-derived body classes style catalogue/product pages. The data attribute is
 * set before paint and preserves the last brand on cacheable neutral pages.
 */
body.brand-deutz-fahr,
html[data-sdf-brand="deutz-fahr"] body {
	--sdf-brand-color: #37a137;
	--sdf-brand-color-rgb: 55, 161, 55;
	--sdf-brand-contrast: #ffffff;
}

/* SAME. Root category slug: same */
body.brand-same,
html[data-sdf-brand="same"] body {
	--sdf-brand-color: #e40614;
	--sdf-brand-color-rgb: 228, 6, 20;
	--sdf-brand-contrast: #ffffff;
}

/* Huerlimann. Adjust selector if the category uses another slug. */
body.brand-hurlimann,
body.brand-huerlimann,
html[data-sdf-brand="hurlimann"] body,
html[data-sdf-brand="huerlimann"] body {
	--sdf-brand-color: #b72748;
	--sdf-brand-color-rgb: 183, 39, 72;
	--sdf-brand-contrast: #ffffff;
}

/* Lamborghini Trattori. Root category slug: lamborghini */
body.brand-lamborghini,
html[data-sdf-brand="lamborghini"] body {
	--sdf-brand-color: #364772;
	--sdf-brand-color-rgb: 54, 71, 114;
	--sdf-brand-contrast: #ffffff;
}

/* GPRO / Vitibot. */
body.brand-gpro,
body.brand-vitibot,
html[data-sdf-brand="gpro"] body,
html[data-sdf-brand="vitibot"] body {
	--sdf-brand-color: #0957c3;
	--sdf-brand-color-rgb: 9, 87, 195;
	--sdf-brand-contrast: #ffffff;
}

/* SDF Group. Root category slug: sdf-group */
body.brand-sdf-group,
body.brand-sdfg,
html[data-sdf-brand="sdf-group"] body,
html[data-sdf-brand="sdfg"] body {
	--sdf-brand-color: #ff8c17;
	--sdf-brand-color-rgb: 255, 140, 23;
	--sdf-brand-contrast: #171717;
}

/* Gregoire. Root category slug: gregoire */
body.brand-gregoire,
body.brand-greg,
html[data-sdf-brand="gregoire"] body,
html[data-sdf-brand="greg"] body {
	--sdf-brand-color: #f2a900;
	--sdf-brand-color-rgb: 242, 169, 0;
	--sdf-brand-contrast: #171717;
}

.sdf-family-list {
	display: grid;
	gap: 20px;
	width: 100%;
	margin-block: 32px;
}

.sdf-family-block {
	position: relative;
	margin: 0;
	border: 1px solid #d8d8d8;
	border-top: 4px solid var(--sdf-brand-color);
	background-color: #ffffff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.sdf-catalog-loader {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 90px;
	color: #666666;
	font-size: 14px;
}

.sdf-catalog-loader.is-loading::before {
	content: "";
	width: 22px;
	height: 22px;
	margin-right: 10px;
	border: 3px solid rgba(var(--sdf-brand-color-rgb), 0.2);
	border-top-color: var(--sdf-brand-color);
	border-radius: 50%;
	animation: sdf-catalog-spin 0.75s linear infinite;
}

@keyframes sdf-catalog-spin {
	to {
		transform: rotate(360deg);
	}
}

.sdf-family-block:hover {
	border-color: var(--sdf-brand-color);
	box-shadow: 0 4px 16px rgba(var(--sdf-brand-color-rgb), 0.12);
}

/* White title background interrupts the coloured top border. */
.sdf-family-block__title {
	display: table;
	position: relative;
	z-index: 1;
	max-width: calc(100% - 120px);
	margin: -17px 0 0 90px;
	padding: 0 14px;
	background-color: #ffffff;
	color: var(--sdf-brand-color);
	font-size: clamp(19px, 1.5vw, 23px);
	font-weight: 400;
	line-height: 28px;
}

.sdf-family-block__row {
	display: grid;
	grid-template-columns: 90px minmax(0, 1fr);
	gap: 16px;
	min-height: 90px;
	padding: 10px 14px 14px 6px;
}

.sdf-family-block__image {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	overflow: visible;
	width: 90px;
	height: 80px;
}

.sdf-family-block__image img {
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 100% !important;
	margin: 0;
	object-fit: contain !important;
	object-position: center center;
}

.sdf-family-block__models ul {
	display: grid;
	grid-template-columns: repeat(5, minmax(140px, 1fr));
	align-content: start;
	gap: 7px 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sdf-family-block__models li {
	min-width: 0;
	margin: 0;
	padding: 0;
	line-height: 1.35;
}

.sdf-family-block__models a {
	color: #171717;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
}

.sdf-family-block__models a:hover,
.sdf-family-block__models a:focus-visible {
	color: var(--sdf-brand-color);
	text-decoration: underline;
}

.sdf-family-block__models a:focus-visible {
	outline: 2px solid var(--sdf-brand-color);
	outline-offset: 3px;
}

.sdf-family-block__empty,
.sdf-catalog-empty {
	margin: 0;
	color: #666666;
}

@media (max-width: 1200px) {
	.sdf-family-block__models ul {
		grid-template-columns: repeat(3, minmax(140px, 1fr));
	}
}

@media (max-width: 800px) {
	.sdf-family-block__models ul {
		grid-template-columns: repeat(2, minmax(120px, 1fr));
	}
}

@media (max-width: 560px) {
	.sdf-family-list {
		gap: 28px;
	}

	.sdf-family-block__title {
		max-width: calc(100% - 32px);
		margin-left: 16px;
		font-size: 19px;
	}

	.sdf-family-block__row {
		grid-template-columns: 70px minmax(0, 1fr);
		gap: 12px;
	}

	.sdf-family-block__image img {
		max-width: 100% !important;
		max-height: 100% !important;
	}

	.sdf-family-block__image {
		width: 70px;
		height: 70px;
	}

	.sdf-family-block__models ul {
		grid-template-columns: 1fr;
	}
}

/* Model page: image, in-page group navigation and borderless documents table. */
.sdf-model-catalog {
	width: 100%;
	margin-block: 30px 50px;
}

.sdf-model-summary {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 30px;
	align-items: center;
	width: calc(100% - 32px);
	max-width: 900px;
	margin: 0 auto 34px;
}

.sdf-model-summary__image img {
	display: block;
	width: 180px;
	height: 150px;
	margin: 0;
	object-fit: contain;
}

.sdf-model-summary__groups ul {
	display: grid;
	gap: 12px;
	justify-items: start;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sdf-model-summary__groups a {
	color: var(--sdf-brand-color);
	font-size: 18px;
	font-weight: 600;
	text-decoration: none;
}

.sdf-model-summary__groups a:hover,
.sdf-model-summary__groups a:focus-visible {
	text-decoration: underline;
}

.sdf-document-table,
.sdf-document-table tbody,
.sdf-document-table tr,
.sdf-document-table th,
.sdf-document-table td {
	border: 0 !important;
}

.sdf-document-table {
	width: calc(100% - 32px);
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
	border-collapse: collapse;
	background: transparent;
}

.sdf-document-table__group {
	scroll-margin-top: 30px;
}

.sdf-document-table__group th {
	padding: 22px 12px 10px;
	background: transparent;
	color: var(--sdf-brand-color);
	font-size: 22px;
	font-weight: 500;
	text-align: left;
}

.sdf-document-table__group:first-child th {
	padding-top: 0;
}

.sdf-document-table__document td {
	padding: 7px 12px;
	background: transparent;
	vertical-align: top;
}

.sdf-document-table__language {
	width: 190px;
	color: #555555;
	white-space: nowrap;
}

.sdf-document-table__title a {
	color: #171717;
	font-weight: 600;
	text-decoration: none;
}

.sdf-document-table__title a:hover,
.sdf-document-table__title a:focus-visible {
	color: var(--sdf-brand-color);
	text-decoration: underline;
}

@media (max-width: 700px) {
	.sdf-model-summary {
		grid-template-columns: 100px minmax(0, 1fr);
		gap: 18px;
	}

	.sdf-model-summary__image img {
		width: 100px;
		height: 100px;
	}

	.sdf-model-summary__groups ul {
		display: grid;
		gap: 8px;
	}

	.sdf-document-table__language {
		width: 110px;
		white-space: normal;
	}
}

/* Single product: centred content and a compact document gallery. */
body.single-product .wp-block-post-title,
body.single-product .product_title {
	width: min(100% - 32px, 1200px);
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.sdf-product-breadcrumbs {
	width: min(100% - 32px, 1200px);
	margin: 18px auto 22px;
	color: #666666;
	font-size: 14px;
	line-height: 1.5;
	text-align: center;
}

.sdf-product-breadcrumbs a {
	color: var(--sdf-brand-color);
	text-decoration: none;
	text-decoration-color: var(--sdf-brand-color);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.sdf-product-breadcrumbs a:hover,
.sdf-product-breadcrumbs a:focus-visible {
	text-decoration-line: underline;
	text-decoration-color: var(--sdf-brand-color);
}

.sdf-breadcrumbs__separator {
	display: inline-block;
	margin: 0 9px;
	color: #999999;
}

/* ========================================================================== */
/* SDF UI SYSTEM — shared visual language for brand, model and product pages. */
/* ========================================================================== */

:root {
	--sdf-page-width: 1180px;
	--sdf-wide-width: 1320px;
	--sdf-bg: #f5f7f6;
	--sdf-surface: #ffffff;
	--sdf-surface-soft: #f0f4f1;
	--sdf-text: #18201b;
	--sdf-text-muted: #68736c;
	--sdf-border: #dce3de;
	--sdf-radius-sm: 8px;
	--sdf-radius-md: 12px;
	--sdf-radius-lg: 16px;
	--sdf-shadow-sm: 0 2px 10px rgba(19, 35, 25, 0.06);
	--sdf-shadow-md: 0 14px 38px rgba(19, 35, 25, 0.09);
	color-scheme: light;
}

html[data-sdf-theme="dark"] {
	--sdf-bg: #252b27;
	--sdf-surface: #343c37;
	--sdf-surface-soft: #414b44;
	--sdf-text: #f0f3f1;
	--sdf-text-muted: #c0c9c3;
	--sdf-border: #59675e;
	--sdf-shadow-sm: 0 3px 12px rgba(7, 12, 9, 0.2);
	--sdf-shadow-md: 0 16px 38px rgba(7, 12, 9, 0.28);
	color-scheme: dark;
}

body.woocommerce,
body.woocommerce-page,
body.home,
body.sdf-find-model-page {
	--wp--preset--font-family--body: system-ui, -apple-system, "Segoe UI", sans-serif;
	--wp--preset--font-family--heading: system-ui, -apple-system, "Segoe UI", sans-serif;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	-webkit-font-smoothing: antialiased;
}

/* Compact storefront masthead. */
body.woocommerce .wp-site-blocks > header,
body.woocommerce-page .wp-site-blocks > header,
body.home .wp-site-blocks > header,
body.sdf-find-model-page .wp-site-blocks > header {
	display: none;
}

/* Standalone chassis-number model finder. */
body.sdf-find-model-page main.wp-block-group {
	width: 100%;
	margin: 0;
	padding: clamp(28px, 5vw, 58px) 16px 64px;
	background: var(--sdf-bg);
	box-sizing: border-box;
}

body.sdf-find-model-page main.wp-block-group > .wp-block-group:first-child {
	display: none;
}

body.sdf-find-model-page .entry-content.wp-block-post-content {
	width: min(100%, 1000px);
	max-width: 1000px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.sdf-find-model-page .entry-content > p:empty {
	display: none;
}

body.sdf-find-model-page .sdf-vin-lookup {
	width: 100%;
	max-width: none;
	min-height: 320px;
	margin: 0;
	padding: clamp(30px, 5vw, 54px);
	border: 1px solid var(--sdf-border);
	border-top: 4px solid var(--sdf-brand-color);
	border-radius: 0;
	background: linear-gradient(135deg, rgba(var(--sdf-brand-color-rgb), 0.09), transparent 46%), var(--sdf-surface);
	box-shadow: var(--sdf-shadow-md);
	box-sizing: border-box;
}

body.sdf-find-model-page .sdf-vin-lookup__title {
	max-width: 680px;
	margin: 0 0 30px;
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: clamp(30px, 4vw, 48px);
	font-weight: 820;
	letter-spacing: -0.04em;
	line-height: 1.05;
}

body.sdf-find-model-page .sdf-vin-lookup__title::after {
	display: block;
	width: 54px;
	height: 4px;
	margin-top: 20px;
	background: var(--sdf-brand-color);
	content: "";
}

body.sdf-find-model-page .sdf-vin-lookup__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	max-width: 760px;
	margin: 0;
}

body.sdf-find-model-page .sdf-vin-lookup__input {
	width: 100%;
	min-width: 0;
	height: 52px;
	padding: 0 17px;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface);
	color: var(--sdf-text);
	font: 650 15px/1 system-ui, sans-serif;
	letter-spacing: 0.035em;
	box-sizing: border-box;
	outline: 0;
}

body.sdf-find-model-page .sdf-vin-lookup__input:focus {
	border-color: var(--sdf-brand-color);
	box-shadow: 0 0 0 3px rgba(var(--sdf-brand-color-rgb), 0.16);
}

body.sdf-find-model-page .sdf-vin-lookup__submit {
	min-width: 150px;
	height: 52px;
	padding: 0 22px;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font: 750 15px/1 system-ui, sans-serif;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
	cursor: pointer;
}

body.sdf-find-model-page .sdf-vin-lookup__submit:hover,
body.sdf-find-model-page .sdf-vin-lookup__submit:focus-visible {
	filter: brightness(0.94);
	transform: translateY(-1px);
}

body.sdf-find-model-page .sdf-vin-lookup__status {
	min-height: 24px;
	margin: 14px 0 0;
	color: var(--sdf-text-muted);
	font-size: 14px;
}

body.sdf-find-model-page .sdf-vin-lookup__results {
	display: grid;
	gap: 10px;
	margin-top: 4px;
}

body.sdf-find-model-page .sdf-vin-result {
	padding: 18px 20px;
	border: 1px solid var(--sdf-border);
	border-left: 4px solid var(--sdf-brand-color);
	border-radius: 0;
	background: var(--sdf-surface);
	color: var(--sdf-text);
	box-shadow: var(--sdf-shadow-sm);
}

body.sdf-find-model-page .sdf-vin-result__path,
body.sdf-find-model-page .sdf-vin-result__meta {
	color: var(--sdf-text-muted);
}

body.sdf-find-model-page .sdf-vin-result__model {
	margin: 7px 0 10px;
	font-family: system-ui, sans-serif;
	font-size: 18px;
	font-weight: 750;
}

body.sdf-find-model-page .sdf-vin-result__model a {
	color: var(--sdf-text);
	text-decoration: none;
}

body.sdf-find-model-page .sdf-vin-result__model a:hover,
body.sdf-find-model-page .sdf-vin-result__model a:focus-visible {
	color: var(--sdf-brand-color);
}

body.sdf-find-model-page .sdf-vin-result code {
	color: var(--sdf-brand-color);
}

@media (max-width: 620px) {
	body.sdf-find-model-page main.wp-block-group {
		padding: 16px 12px 42px;
	}

	body.sdf-find-model-page .sdf-vin-lookup {
		min-height: 0;
		padding: 24px 18px;
	}

	body.sdf-find-model-page .sdf-vin-lookup__form {
		grid-template-columns: 1fr;
	}

	body.sdf-find-model-page .sdf-vin-lookup__submit {
		width: 100%;
	}
}

.sdf-site-header {
	position: relative;
	z-index: 100;
	border-bottom: 3px solid var(--sdf-brand-color);
	background: #111714;
	color: #ffffff;
}

.sdf-site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: min(calc(100% - 32px), 1000px);
	min-height: 64px;
	margin-inline: auto;
}

.sdf-site-header__top {
	display: flex;
	align-items: center;
	gap: 12px;
}

.sdf-site-header__brand {
	color: #ffffff !important;
	font-size: 24px;
	font-weight: 850;
	letter-spacing: -0.04em;
	text-decoration: none !important;
}

.sdf-site-header__brand span {
	color: var(--sdf-brand-color);
}

.sdf-site-header__nav {
	display: flex;
	align-items: stretch;
	align-self: stretch;
}

.sdf-site-header__nav a {
	display: flex;
	align-items: center;
	padding: 0 18px;
	border-bottom: 3px solid transparent;
	color: #e8ece9 !important;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none !important;
	transition: color 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.sdf-site-header__nav a:hover,
.sdf-site-header__nav a:focus-visible {
	border-bottom-color: var(--sdf-brand-color);
	background: rgba(255, 255, 255, 0.06);
	color: #ffffff !important;
}

/* Home page: expanding root-brand hero accordion. */
body.home .sdf-home-page {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 16px 48px;
	background: var(--sdf-bg);
	box-sizing: border-box;
	--wp--style--block-gap: 0;
}

body.home .sdf-home-page > * {
	max-width: none !important;
	margin: 0 !important;
}

.sdf-home-brands {
	position: relative;
	left: 50%;
	width: min(calc(100vw - 32px), 1180px);
	margin: 0;
	padding-top: clamp(32px, 5vw, 64px);
	transform: translateX(-50%);
}

.sdf-home-brands__intro {
	max-width: 720px;
	margin: 0 auto clamp(26px, 4vw, 42px);
	text-align: center;
}

.sdf-home-brands__eyebrow {
	margin: 0 0 8px;
	color: var(--sdf-brand-color);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.sdf-home-brands__intro h1 {
	margin: 0;
	color: var(--sdf-text);
	font-family: "Bahnschrift Condensed", "Arial Narrow", "Roboto Condensed", Impact, sans-serif;
	font-size: clamp(40px, 7.2vw, 86px);
	font-stretch: condensed;
	font-weight: 700;
	letter-spacing: 0.035em;
	line-height: 0.95;
	white-space: nowrap;
}

.sdf-home-brands__intro h1::after {
	display: block;
	width: clamp(52px, 5vw, 68px);
	height: 4px;
	margin: clamp(15px, 2vw, 22px) auto 0;
	background: var(--sdf-brand-color);
	content: "";
}

.sdf-home-brands__intro > p:last-child {
	max-width: 430px;
	margin: 16px auto 0;
	color: var(--sdf-text-muted);
	font-size: 16px;
	line-height: 1.55;
}

.sdf-brand-showcase {
	display: flex;
	gap: 8px;
	width: 100%;
	height: clamp(480px, 64vh, 640px);
	margin: 0 auto;
	overflow: hidden;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-md);
}

.sdf-brand-showcase__panel {
	position: relative;
	display: block;
	overflow: hidden;
	min-width: 0;
	flex: 1 1 72px;
	border-top: 4px solid var(--sdf-panel-color);
	background-color: #18201b;
	background-image: var(--sdf-panel-image);
	background-position: 56% center;
	background-size: cover;
	color: #ffffff !important;
	text-decoration: none !important;
	transition: flex-grow 0.55s cubic-bezier(0.2, 0.72, 0.2, 1), background-position 0.55s cubic-bezier(0.2, 0.72, 0.2, 1), filter 0.25s ease;
	box-sizing: border-box;
}

.sdf-brand-showcase__panel:hover,
.sdf-brand-showcase__panel:focus-visible,
.sdf-brand-showcase__panel:focus-within,
.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default {
	flex-grow: 6;
	background-position: 63% center;
}

.sdf-brand-showcase__panel:focus-visible {
	outline: 3px solid var(--sdf-panel-color);
	outline-offset: -3px;
}

.sdf-brand-showcase__shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(9, 15, 11, 0.28) 0%, rgba(9, 15, 11, 0.08) 42%, rgba(9, 15, 11, 0) 78%);
	transition: background 0.35s ease;
}

.sdf-brand-showcase__panel:hover .sdf-brand-showcase__shade,
.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__shade,
.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__shade {
	background: linear-gradient(0deg, rgba(9, 15, 11, 0.14) 0%, rgba(9, 15, 11, 0.04) 52%, rgba(9, 15, 11, 0) 82%);
}

.sdf-brand-showcase__content {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	gap: 14px;
	padding: 26px 18px;
	box-sizing: border-box;
}

/* WordPress may inject line breaks around shortcode markup. */
.sdf-brand-showcase__content br,
.sdf-brand-showcase__action br {
	display: none !important;
}

.sdf-brand-showcase__content strong {
	display: block;
	max-height: calc(100% - 40px);
	overflow: hidden;
	color: #ffffff;
	font-size: 24px;
	font-weight: 820;
	letter-spacing: 0.025em;
	line-height: 1.05;
	text-shadow: 0 2px 16px rgba(0, 0, 0, 0.45);
	text-transform: uppercase;
	white-space: nowrap;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
}

.sdf-brand-showcase__action {
	display: flex;
	align-items: center;
	gap: 9px;
	max-height: 0;
	overflow: hidden;
	color: #ffffff;
	font-size: 13px;
	font-weight: 750;
	line-height: 20px;
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 0.25s ease 0.12s, transform 0.25s ease 0.12s, max-height 0s linear 0.12s;
}

.sdf-brand-showcase__action b {
	position: relative;
	display: inline-block;
	flex: 0 0 27px;
	width: 27px;
	height: 16px;
	overflow: hidden;
	color: var(--sdf-panel-color);
	font-size: 0;
	line-height: 0;
	align-self: center;
	transform: none;
}

.sdf-brand-showcase__action b::before {
	position: absolute;
	top: 7px;
	left: 0;
	width: 24px;
	height: 3px;
	background: currentColor;
	content: "";
}

.sdf-brand-showcase__action b::after {
	position: absolute;
	top: 3px;
	right: 2px;
	width: 8px;
	height: 8px;
	border-top: 3px solid currentColor;
	border-right: 3px solid currentColor;
	content: "";
	transform: rotate(45deg);
}

.sdf-brand-showcase__panel:hover .sdf-brand-showcase__content,
.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__content,
.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__content {
	align-items: flex-start;
	padding: clamp(24px, 4vw, 46px);
}

.sdf-brand-showcase__panel:hover .sdf-brand-showcase__content strong,
.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__content strong,
.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__content strong {
	max-width: min(100%, 520px);
	max-height: none;
	font-size: clamp(28px, 4vw, 48px);
	letter-spacing: -0.035em;
	white-space: normal;
	writing-mode: horizontal-tb;
	transform: none;
}

.sdf-brand-showcase__panel:hover .sdf-brand-showcase__action,
.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__action,
.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__action {
	max-height: 40px;
	opacity: 1;
	transform: translateY(0);
}

@media (max-width: 900px), (hover: none) {
	body.home .sdf-home-page {
		padding-inline: 12px;
		padding-bottom: 28px;
	}

	.sdf-home-brands {
		width: calc(100vw - 24px);
		padding-top: 28px;
	}

	.sdf-home-brands__intro {
		margin-bottom: 24px;
	}

	.sdf-home-brands__intro h1 {
		font-size: clamp(34px, 10vw, 48px);
		white-space: nowrap;
	}

	.sdf-brand-showcase {
		display: grid;
		height: auto;
		gap: 8px;
		background: transparent;
		box-shadow: none;
	}

	.sdf-brand-showcase__panel,
	.sdf-brand-showcase__panel:hover,
	.sdf-brand-showcase__panel:focus-visible,
	.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default {
		min-height: 190px;
		flex: none;
		background-position: 60% center;
	}

	.sdf-brand-showcase__content,
	.sdf-brand-showcase__panel:hover .sdf-brand-showcase__content,
	.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__content,
	.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__content {
		align-items: flex-start;
		padding: 22px;
	}

	.sdf-brand-showcase__content strong,
	.sdf-brand-showcase__panel:hover .sdf-brand-showcase__content strong,
	.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__content strong,
	.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__content strong {
		max-width: 100%;
		max-height: none;
		font-size: clamp(24px, 7vw, 34px);
		letter-spacing: -0.03em;
		white-space: normal;
		writing-mode: horizontal-tb;
		transform: none;
	}

	.sdf-brand-showcase__action,
	.sdf-brand-showcase__panel:hover .sdf-brand-showcase__action,
	.sdf-brand-showcase__panel:focus-visible .sdf-brand-showcase__action,
	.sdf-brand-showcase:not(:hover):not(:focus-within) .sdf-brand-showcase__panel.is-default .sdf-brand-showcase__action {
		max-height: 40px;
		opacity: 1;
		transform: none;
	}
}

body.woocommerce .wp-block-post-title,
body.woocommerce-page .wp-block-post-title,
body.woocommerce h1,
body.woocommerce h2,
body.woocommerce h3,
body.woocommerce h4,
body.woocommerce h5,
body.woocommerce h6 {
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	letter-spacing: -0.025em;
}

body.woocommerce .wp-block-post-title,
body.woocommerce-page .wp-block-post-title {
	width: min(calc(100% - 32px), var(--sdf-page-width));
	margin: 34px auto 28px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 52px);
	font-weight: 720;
	line-height: 1.08;
	text-wrap: balance;
}

/* Brand page family cards. */
.sdf-brand-catalog > .wc-block-components-notices:not(:has(.wc-block-components-notice-banner)),
body.sdf-model-archive main > [data-block-name="woocommerce/store-notices"]:not(:has(.woocommerce-message, .woocommerce-error, .woocommerce-info)),
body.tax-product_cat main > [data-block-name="woocommerce/store-notices"]:not(:has(.woocommerce-message, .woocommerce-error, .woocommerce-info)) {
	display: none;
}

.sdf-brand-catalog {
	width: min(calc(100% - 32px), 1000px);
	max-width: 1000px !important;
	margin: 0 auto 64px !important;
	box-sizing: border-box;
}

.sdf-brand-hero {
	display: flex;
	position: relative;
	align-items: center;
	min-height: 380px;
	overflow: hidden;
	background-color: #cdd4cf;
	background-image: linear-gradient(90deg, rgba(240, 244, 241, 0.97) 0%, rgba(240, 244, 241, 0.68) 45%, rgba(15, 24, 18, 0.08) 76%), var(--sdf-hero-image, none);
	background-position: center;
	background-size: cover;
	box-shadow: var(--sdf-shadow-md);
}

html[data-sdf-theme="dark"] .sdf-brand-hero {
	background-color: #29312c;
	background-image: linear-gradient(90deg, rgba(38, 46, 41, 0.97) 0%, rgba(38, 46, 41, 0.7) 45%, rgba(15, 24, 18, 0.08) 76%), var(--sdf-hero-image, none);
}

.sdf-brand-hero__content {
	width: min(52%, 470px);
	margin-left: clamp(28px, 5vw, 54px);
	padding-block: 42px;
}

.sdf-brand-hero__breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin-bottom: 30px;
	color: var(--sdf-brand-color);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sdf-brand-hero__breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.sdf-brand-hero__breadcrumbs a:hover,
.sdf-brand-hero__breadcrumbs a:focus-visible {
	text-decoration: underline;
	text-decoration-color: var(--sdf-brand-color);
	text-underline-offset: 4px;
}

.sdf-brand-hero__breadcrumbs span:first-of-type {
	opacity: 0.72;
}

.sdf-brand-hero__eyebrow {
	margin: 0 0 8px;
	color: var(--sdf-brand-color);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.sdf-brand-hero__title {
	margin: 0;
	color: var(--sdf-text);
	font-size: clamp(38px, 5vw, 64px);
	font-weight: 820;
	letter-spacing: -0.045em;
	line-height: 0.98;
	text-transform: uppercase;
}

.sdf-brand-hero__line {
	display: block;
	width: 54px;
	height: 4px;
	margin: 22px 0 14px;
	background: var(--sdf-brand-color);
}

.sdf-brand-hero__intro {
	max-width: 410px;
	margin: 0;
	color: var(--sdf-text-muted);
	font-size: 15px;
	line-height: 1.55;
}

.sdf-family-list {
	gap: 12px;
	margin: 0;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-top: 0;
	background: var(--sdf-surface-soft);
	box-sizing: border-box;
}

.sdf-family-block {
	overflow: hidden;
	border: 1px solid var(--sdf-border);
	border-left: 4px solid var(--sdf-brand-color);
	border-radius: 0;
	background: var(--sdf-surface);
	box-shadow: none;
}

.sdf-family-block:hover {
	border-color: rgba(var(--sdf-brand-color-rgb), 0.52);
	border-left-color: var(--sdf-brand-color);
	box-shadow: var(--sdf-shadow-sm);
	transform: none;
}

.sdf-family-block__title {
	display: block;
	max-width: none;
	margin: 0;
	padding: 18px 22px 4px 138px;
	background: transparent;
	color: var(--sdf-text);
	font-size: clamp(20px, 2vw, 26px);
	font-weight: 700;
	line-height: 1.25;
}

.sdf-family-block__row {
	grid-template-columns: 108px minmax(0, 1fr);
	gap: 22px;
	padding: 12px 22px 22px;
}

.sdf-family-block__image {
	align-items: center;
	width: 108px;
	height: 96px;
	padding: 8px;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-surface-soft);
	box-sizing: border-box;
}

.sdf-family-block__models ul {
	grid-template-columns: repeat(4, minmax(150px, 1fr));
	gap: 6px 18px;
}

.sdf-family-block__models a {
	display: block;
	position: relative;
	padding: 8px 10px;
	border-radius: 7px;
	color: var(--sdf-text);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	transition: background 0.18s ease, color 0.18s ease;
}

.sdf-family-block__models a:hover,
.sdf-family-block__models a:focus-visible {
	background: rgba(var(--sdf-brand-color-rgb), 0.09);
	color: var(--sdf-brand-color);
	text-decoration: none;
}

/* Model hero. */
.sdf-model-catalog {
	width: min(calc(100% - 32px), 1000px);
	max-width: 1000px !important;
	margin: 0 auto 64px !important;
	box-sizing: border-box;
}

.sdf-model-hero {
	display: flex;
	position: relative;
	align-items: center;
	min-height: 380px;
	margin-bottom: 0;
	overflow: hidden;
	border-radius: 0;
	background-color: #cdd4cf;
	background-image: linear-gradient(90deg, rgba(240, 244, 241, 0.96) 0%, rgba(240, 244, 241, 0.62) 44%, rgba(15, 24, 18, 0.1) 72%), var(--sdf-hero-image, none);
	background-position: center;
	background-size: cover;
	box-shadow: var(--sdf-shadow-md);
}

.sdf-model-summary {
	display: block;
	width: min(48%, 440px);
	max-width: none;
	margin: 0 0 0 34px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	box-sizing: border-box;
}

html[data-sdf-theme="dark"] .sdf-model-hero {
	background-color: #29312c;
	background-image: linear-gradient(90deg, rgba(38, 46, 41, 0.96) 0%, rgba(38, 46, 41, 0.64) 44%, rgba(15, 24, 18, 0.08) 72%), var(--sdf-hero-image, none);
}

html[data-sdf-theme="dark"] .sdf-model-summary {
	background: transparent;
}

.sdf-model-summary__image {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 190px;
	padding: 18px;
	border-radius: var(--sdf-radius-md);
	background: var(--sdf-surface-soft);
}

.sdf-model-summary__image img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 180px;
	object-fit: contain;
}

.sdf-model-summary__title,
.sdf-model-summary__intro {
	margin: 0;
}

.sdf-model-summary__breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	color: var(--sdf-brand-color);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sdf-model-summary__breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.sdf-model-summary__breadcrumbs a:hover,
.sdf-model-summary__breadcrumbs a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sdf-model-summary__breadcrumbs span {
	color: var(--sdf-brand-color);
	opacity: 0.72;
}

.sdf-model-summary__title {
	margin-top: 8px;
	color: var(--sdf-text);
	font-size: clamp(31px, 4.4vw, 52px);
	line-height: 0.98;
	font-weight: 850;
	letter-spacing: -0.045em;
	text-transform: uppercase;
}

.sdf-model-summary__divider {
	display: block;
	width: 48px;
	height: 2px;
	margin: 20px 0 14px;
	background: var(--sdf-brand-color);
}

.sdf-model-summary__serial {
	display: grid;
	gap: 5px;
}

.sdf-model-summary__serial-label {
	color: var(--sdf-text-muted);
	font-size: 11px;
	font-weight: 650;
	letter-spacing: 0.04em;
}

.sdf-model-summary__serial-value {
	color: var(--sdf-text);
	font-size: clamp(18px, 2.5vw, 27px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	overflow-wrap: anywhere;
}

.sdf-model-summary__serial-value > span {
	color: var(--sdf-brand-color);
}

/* Fallback for archive-title markup produced outside the block renderer. */
.sdf-model-archive .woocommerce-products-header,
.sdf-model-archive .woocommerce-products-header__title,
.sdf-model-archive .wp-block-query-title,
.sdf-model-archive .wp-block-post-title,
.sdf-model-archive main > .wp-block-post-title,
.sdf-model-archive .wp-site-blocks > .wp-block-post-title {
	display: none;
}

/* Twenty Twenty-Four wraps the archive title and its spacers in the first main group. */
.sdf-model-archive main#wp--skip-link--target > .wp-block-group:first-child {
	display: none;
}

.sdf-model-summary__intro {
	margin-top: 7px;
	color: var(--sdf-text-muted);
	font-size: 15px;
}

.sdf-model-summary__groups ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.sdf-model-summary__groups a {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 9px 10px 9px 14px;
	border: 1px solid rgba(var(--sdf-brand-color-rgb), 0.32);
	border-radius: 0;
	background: rgba(var(--sdf-brand-color-rgb), 0.07);
	color: var(--sdf-text);
	font-size: 13px;
	font-weight: 700;
}

.sdf-model-summary__groups a strong {
	display: grid;
	place-items: center;
	min-width: 25px;
	height: 25px;
	padding-inline: 4px;
	border-radius: 0;
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-size: 11px;
}

.sdf-model-summary__groups a:hover,
.sdf-model-summary__groups a:focus-visible {
	border-color: var(--sdf-brand-color);
	background: rgba(var(--sdf-brand-color-rgb), 0.13);
	text-decoration: none;
}

/* Document groups and rows. */
.sdf-document-table-shell {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding: 8px 22px 24px;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
}

.sdf-document-table-shell::before {
	content: none;
	position: absolute;
	z-index: -1;
	inset: -58px -90px;
	background-color: var(--sdf-brand-color);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='260' viewBox='0 0 360 260'%3E%3Cg fill='none' stroke='%23000' stroke-width='1'%3E%3Cpath d='M0 40h360M0 130h360M0 220h360M45 0v260M180 0v260M315 0v260' opacity='.18' stroke-dasharray='2 9'/%3E%3Ccircle cx='62' cy='67' r='31'/%3E%3Ccircle cx='62' cy='67' r='12'/%3E%3Cpath d='M18 67h88M62 23v88' stroke-dasharray='12 4 2 4'/%3E%3Cpath d='M133 31h112v72H133zM145 43h42l15 15h31v33h-88zM187 43v48M133 118h112M133 112v12M245 112v12M141 118l8-4v8zM237 118l-8-4v8z'/%3E%3Cpath d='M272 149h70v70h-70zM284 161h46v46h-46zM307 139v90M262 184h90' stroke-dasharray='18 4 2 4'/%3E%3Ccircle cx='307' cy='184' r='30'/%3E%3Ccircle cx='307' cy='184' r='8'/%3E%3Cpath d='M28 175h121l22 22-22 22H28zM43 188h93M43 205h106M19 164v66M13 175h12M13 219h12'/%3E%3Cpath d='M18 242h148M18 236v12M166 236v12M27 242l8-4v8zM157 242l-8-4v8z'/%3E%3C/g%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='260' viewBox='0 0 360 260'%3E%3Cg fill='none' stroke='%23000' stroke-width='1'%3E%3Cpath d='M0 40h360M0 130h360M0 220h360M45 0v260M180 0v260M315 0v260' opacity='.18' stroke-dasharray='2 9'/%3E%3Ccircle cx='62' cy='67' r='31'/%3E%3Ccircle cx='62' cy='67' r='12'/%3E%3Cpath d='M18 67h88M62 23v88' stroke-dasharray='12 4 2 4'/%3E%3Cpath d='M133 31h112v72H133zM145 43h42l15 15h31v33h-88zM187 43v48M133 118h112M133 112v12M245 112v12M141 118l8-4v8zM237 118l-8-4v8z'/%3E%3Cpath d='M272 149h70v70h-70zM284 161h46v46h-46zM307 139v90M262 184h90' stroke-dasharray='18 4 2 4'/%3E%3Ccircle cx='307' cy='184' r='30'/%3E%3Ccircle cx='307' cy='184' r='8'/%3E%3Cpath d='M28 175h121l22 22-22 22H28zM43 188h93M43 205h106M19 164v66M13 175h12M13 219h12'/%3E%3Cpath d='M18 242h148M18 236v12M166 236v12M27 242l8-4v8zM157 242l-8-4v8z'/%3E%3C/g%3E%3C/svg%3E");
	-webkit-mask-repeat: repeat;
	mask-repeat: repeat;
	opacity: 0.085;
	pointer-events: none;
}

html[data-sdf-theme="dark"] .sdf-document-table-shell::before {
	opacity: 0.13;
}

.sdf-document-table {
	position: relative;
	width: 100%;
	max-width: none;
	margin: 0;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 0 8px;
}

.sdf-document-table__language-column {
	width: 190px;
}

.sdf-document-table__group th {
	padding: 30px 4px 4px;
	color: var(--sdf-text);
	font-size: 24px;
	font-weight: 760;
}

.sdf-document-table__group th span,
.sdf-document-table__group th small {
	display: block;
}

.sdf-document-table__group th small {
	margin-top: 4px;
	color: var(--sdf-text-muted);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
}

.sdf-document-table__document td {
	height: 46px;
	padding: 0 16px;
	background: var(--sdf-surface);
	box-shadow: var(--sdf-shadow-sm);
	vertical-align: middle;
	box-sizing: border-box;
}

.sdf-document-table__document td:first-child {
	border-radius: 0;
}

.sdf-document-table__document td:last-child {
	border-radius: 0;
}

.sdf-document-table__document:hover td {
	background: rgba(var(--sdf-brand-color-rgb), 0.07);
}

.sdf-document-table__language {
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	width: 190px;
	height: 46px;
	color: var(--sdf-text-muted);
	white-space: nowrap;
}

.sdf-language-flag {
	display: block;
	width: 25px;
	height: 18px;
	border-radius: 3px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
	object-fit: cover;
}

.sdf-language-name {
	font-size: 13px;
}

.sdf-document-table__title a {
	display: flex;
	align-items: center;
	position: relative;
	min-height: 46px;
	padding-right: 34px;
	color: var(--sdf-text);
	font-size: 14px;
	font-weight: 650;
	line-height: 1.45;
}

/* Persistent light/dark theme control. */
.sdf-theme-toggle {
	display: inline-flex;
	position: fixed;
	z-index: 9998;
	right: 18px;
	bottom: 18px;
	align-items: center;
	gap: 7px;
	min-height: 42px;
	padding: 8px 13px;
	border: 1px solid var(--sdf-border);
	border-radius: 999px;
	background: var(--sdf-surface);
	box-shadow: none;
	color: var(--sdf-text);
	font: 700 12px/1 system-ui, -apple-system, "Segoe UI", sans-serif;
	contain: layout paint;
	overflow: hidden;
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.sdf-site-header .sdf-theme-toggle {
	position: static;
	z-index: auto;
	right: auto;
	bottom: auto;
	flex: 0 0 auto;
}

.sdf-theme-toggle:hover,
.sdf-theme-toggle:focus-visible {
	border-color: var(--sdf-brand-color);
	transform: translateY(-2px);
}

.sdf-theme-toggle__sun,
.sdf-theme-toggle__moon {
	font-size: 18px;
	line-height: 1;
}

.sdf-theme-toggle__moon,
html[data-sdf-theme="dark"] .sdf-theme-toggle__sun {
	display: none;
}

html[data-sdf-theme="dark"] .sdf-theme-toggle__moon {
	display: inline;
}

html[data-sdf-theme="dark"] body,
html[data-sdf-theme="dark"] .wp-site-blocks {
	background: var(--sdf-bg);
	color: var(--sdf-text);
}

html[data-sdf-theme="dark"] .sdf-family-block,
html[data-sdf-theme="dark"] .sdf-family-block__title,
html[data-sdf-theme="dark"] body.single-product .entry-content .single-product > .product,
html[data-sdf-theme="dark"] .woocommerce-product-gallery,
html[data-sdf-theme="dark"] .sdf-product-languages {
	background-color: var(--sdf-surface);
	color: var(--sdf-text);
}

html[data-sdf-theme="dark"] .sdf-model-summary,
html[data-sdf-theme="dark"] .sdf-document-table__document td {
	border-color: var(--sdf-border);
	background-color: var(--sdf-surface);
}

html[data-sdf-theme="dark"] .sdf-document-table__document td:first-child {
	background-color: #3b4540;
}

html[data-sdf-theme="dark"] .sdf-document-table__document:hover td {
	background-color: #455248;
}

html[data-sdf-theme="dark"] .sdf-model-summary__groups a {
	background: #3d4941;
}

html[data-sdf-theme="dark"] a:not(.button):not(.wp-element-button) {
	text-decoration-color: rgba(var(--sdf-brand-color-rgb), 0.7);
}

@media (max-width: 600px) {
	.sdf-theme-toggle {
		right: 12px;
		bottom: 12px;
		width: 42px;
		height: 42px;
		padding: 8px;
		justify-content: center;
	}

	.sdf-theme-toggle__label {
		display: none;
	}
}

.sdf-document-table__title a::after {
	content: "→";
	position: absolute;
	top: 50%;
	right: 2px;
	color: var(--sdf-brand-color);
	font-size: 18px;
	transform: translateY(-50%);
}

/* Product page cards and controls. */
body.single-product .sdf-product-hero {
	display: flex;
	position: relative;
	align-items: center;
	overflow: hidden;
	width: min(calc(100vw - 32px), 1000px) !important;
	max-width: none !important;
	min-height: 380px;
	margin: 0 0 0 50% !important;
	background-color: #cdd4cf;
	background-image: linear-gradient(90deg, rgba(240, 244, 241, 0.96) 0%, rgba(240, 244, 241, 0.62) 44%, rgba(15, 24, 18, 0.1) 72%), var(--sdf-hero-image, none);
	background-position: center;
	background-size: cover;
	box-shadow: var(--sdf-shadow-md);
	transform: translateX(-50%);
}

body.single-product main#wp--skip-link--target > .wp-block-group:first-child .wp-block-spacer {
	display: none;
}

body.single-product main#wp--skip-link--target > .wp-block-group:first-child > .wp-block-group.is-layout-flex {
	gap: 0 !important;
}

body.single-product .sdf-product-hero + .wp-block-template-part:empty {
	display: none;
}

body.single-product main#wp--skip-link--target > .wp-block-group:first-child,
body.single-product .entry-content.wp-block-post-content {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

body.single-product .wp-site-blocks,
body.single-product main#wp--skip-link--target,
body.single-product main#wp--skip-link--target > .wp-block-group:first-child,
body.single-product .entry-content.wp-block-post-content {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

body.single-product main#wp--skip-link--target {
	display: block;
	margin-top: 0 !important;
	padding: 0 !important;
	--wp--style--block-gap: 0;
}

body.single-product main#wp--skip-link--target > .wp-block-woocommerce-breadcrumbs,
body.single-product main#wp--skip-link--target > .wp-block-woocommerce-store-notices {
	display: none;
}

body.single-product .sdf-product-hero + * {
	margin-top: 0;
	margin-block-start: 0;
}

body.single-product main#wp--skip-link--target > .wp-block-group:first-child + .entry-content,
body.single-product .entry-content > .woocommerce,
body.single-product .entry-content > .woocommerce > .single-product {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}

body.single-product main#wp--skip-link--target > .wp-block-group.is-layout-constrained:first-child {
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product main#wp--skip-link--target > .entry-content.alignfull.wp-block-post-content {
	margin: 0 !important;
	padding: 0 !important;
}

.sdf-product-hero__content {
	width: min(48%, 440px);
	margin-left: 34px;
}

.sdf-product-hero .sdf-product-breadcrumbs {
	width: auto;
	margin: 0 0 22px;
	color: var(--sdf-brand-color);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.45;
	text-align: left;
	text-transform: uppercase;
}

.sdf-product-hero .sdf-product-breadcrumbs a,
.sdf-product-hero .sdf-breadcrumbs__separator {
	color: var(--sdf-brand-color);
}

.sdf-product-hero .sdf-breadcrumbs__separator {
	opacity: 0.72;
}

.sdf-product-hero__type {
	margin: 0 0 8px;
	color: var(--sdf-brand-color);
	font-size: 13px;
	font-weight: 850;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sdf-product-hero__title {
	margin: 0;
	color: var(--sdf-text);
	font-size: clamp(31px, 4.4vw, 52px);
	font-weight: 850;
	letter-spacing: -0.045em;
	line-height: 0.98;
	text-transform: uppercase;
}

.sdf-product-hero__divider {
	display: block;
	width: 48px;
	height: 2px;
	margin: 20px 0 14px;
	background: var(--sdf-brand-color);
}

.sdf-product-hero__serial {
	display: grid;
	gap: 5px;
}

.sdf-product-hero__serial-label {
	color: var(--sdf-text-muted);
	font-size: 11px;
	font-weight: 650;
	letter-spacing: 0.04em;
}

.sdf-product-hero__serial-value {
	color: var(--sdf-text);
	font-size: clamp(18px, 2.5vw, 27px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	overflow-wrap: anywhere;
}

.sdf-product-hero__serial-value > span {
	color: var(--sdf-brand-color);
}

html[data-sdf-theme="dark"] body.single-product .sdf-product-hero {
	background-color: #29312c;
	background-image: linear-gradient(90deg, rgba(38, 46, 41, 0.96) 0%, rgba(38, 46, 41, 0.64) 44%, rgba(15, 24, 18, 0.08) 72%), var(--sdf-hero-image, none);
}

body.single-product .entry-content .single-product > .product {
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	box-sizing: border-box;
}

/* Block-theme product shell: hero first, then gallery and purchase details. */
body.single-product .woocommerce-breadcrumb:not(.sdf-product-breadcrumbs) {
	display: none;
}

body.single-product main#wp--skip-link--target > .wp-block-columns {
	align-items: flex-start !important;
	gap: 32px !important;
	width: min(calc(100% - 32px), 1000px);
	max-width: 1000px !important;
	margin: 0 auto !important;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-top: 0;
	background: var(--sdf-surface-soft);
	box-sizing: border-box;
}

body.single-product main#wp--skip-link--target > .wp-block-columns > .wp-block-column:first-child {
	flex: 0 0 min(44%, 410px) !important;
	min-width: 0;
}

body.single-product main#wp--skip-link--target > .wp-block-columns > .wp-block-column:last-child {
	flex: 1 1 auto !important;
	min-width: 0;
	padding: 8px 6px 8px 0;
}

body.single-product main#wp--skip-link--target .woocommerce-product-gallery {
	float: none !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 12px;
	border: 1px solid var(--sdf-border);
	background: #ffffff;
	box-sizing: border-box;
}

body.single-product main#wp--skip-link--target .woocommerce-product-gallery .flex-viewport {
	width: 100% !important;
	overflow: hidden !important;
}

body.single-product main#wp--skip-link--target .woocommerce-product-gallery__wrapper {
	margin: 0 !important;
}

/* Keep all content below the product hero on the same 1000 px grid. */
body.single-product main#wp--skip-link--target > .wp-block-woocommerce-product-details,
body.single-product main#wp--skip-link--target > .wp-block-woocommerce-product-collection {
	width: min(calc(100% - 32px), 1000px);
	max-width: 1000px !important;
	margin-right: auto !important;
	margin-left: auto !important;
	box-sizing: border-box;
}

body.single-product main#wp--skip-link--target > .wp-block-woocommerce-product-details {
	margin-top: 0 !important;
}

body.single-product main#wp--skip-link--target > .wp-block-woocommerce-product-collection {
	margin-top: 32px !important;
	margin-bottom: 48px !important;
}

body.single-product main#wp--skip-link--target > .wp-block-woocommerce-product-collection[data-collection="woocommerce/product-collection/related"] {
	padding-bottom: 24px !important;
}

/* WooCommerce Blocks replacement for the classic .related.products markup. */
body.single-product [data-collection="woocommerce/product-collection/related"] {
	position: relative;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-top: 3px solid var(--sdf-brand-color);
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
}

body.single-product [data-collection="woocommerce/product-collection/related"] > .wp-block-heading {
	position: relative;
	margin: 0 0 24px !important;
	padding-bottom: 13px;
	color: var(--sdf-text);
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 780;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

body.single-product [data-collection="woocommerce/product-collection/related"] > .wp-block-heading::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 52px;
	height: 2px;
	background: var(--sdf-brand-color);
	content: "";
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-product-template {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 14px !important;
	overflow-x: auto;
	overflow-y: hidden;
	margin: 0 !important;
	padding: 0 !important;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-product-template::-webkit-scrollbar {
	display: none;
}

body.single-product [data-collection="woocommerce/product-collection/related"] li.wc-block-product {
	display: flex;
	flex-direction: column;
	flex: 0 0 calc((100% - 42px) / 4) !important;
	width: calc((100% - 42px) / 4) !important;
	min-width: 0;
	margin: 0 !important;
	padding: 14px;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface);
	box-shadow: none;
	box-sizing: border-box;
	scroll-snap-align: start;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

body.single-product [data-collection="woocommerce/product-collection/related"] li.wc-block-product:hover {
	border-color: var(--sdf-brand-color);
	box-shadow: 0 8px 24px rgba(var(--sdf-brand-color-rgb), 0.12);
	transform: translateY(-2px);
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wp-block-woocommerce-product-image img {
	display: block;
	width: 100% !important;
	height: 245px !important;
	margin: 0 0 14px;
	padding: 8px;
	background: #eef1ef;
	object-fit: contain !important;
	box-sizing: border-box;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wp-block-post-title {
	width: auto;
	margin: 0 0 13px !important;
	padding: 0;
	color: var(--sdf-text);
	font-size: 14px !important;
	font-weight: 720;
	line-height: 1.4;
	text-align: left !important;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wp-block-post-title a {
	color: inherit;
	text-decoration: none;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wp-block-woocommerce-product-price {
	margin: auto 0 13px;
	padding-top: 8px;
	color: var(--sdf-brand-color);
	font-size: 20px !important;
	font-weight: 780;
	text-align: center !important;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-components-product-price {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	text-align: center !important;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wp-block-woocommerce-product-button {
	width: 100%;
	margin: 0;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-components-product-button__button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	padding: 10px 14px;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-size: 13px !important;
	font-weight: 750;
	line-height: 1.2;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
	box-sizing: border-box;
}

body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-components-product-button__button:hover,
body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-components-product-button__button:focus-visible {
	filter: brightness(0.92);
}

.sdf-related-carousel__button {
	display: grid;
	position: absolute;
	top: 56%;
	z-index: 4;
	place-items: center;
	width: 44px;
	height: 58px;
	padding: 0;
	border: 1px solid rgba(var(--sdf-brand-color-rgb), 0.35);
	border-radius: var(--sdf-radius-sm);
	background: rgba(255, 255, 255, 0.96);
	color: var(--sdf-brand-color);
	font-size: 24px;
	line-height: 1;
	box-shadow: 0 8px 24px rgba(19, 35, 25, 0.2);
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-50%);
	transition: opacity 0.18s ease, filter 0.18s ease;
}

.sdf-related-carousel__button--previous {
	left: 7px;
}

.sdf-related-carousel__button--next {
	right: 7px;
}

body.single-product [data-collection="woocommerce/product-collection/related"].sdf-related-carousel--scrollable:hover .sdf-related-carousel__button:not(:disabled),
body.single-product [data-collection="woocommerce/product-collection/related"].sdf-related-carousel--scrollable:focus-within .sdf-related-carousel__button:not(:disabled) {
	opacity: 1;
	pointer-events: auto;
}

.sdf-related-carousel__button:hover,
.sdf-related-carousel__button:focus-visible {
	filter: brightness(0.94);
}

.sdf-related-carousel__button:disabled {
	opacity: 0 !important;
	pointer-events: none;
}

@media (max-width: 900px) {
	body.single-product [data-collection="woocommerce/product-collection/related"] li.wc-block-product {
		flex-basis: calc((100% - 14px) / 2) !important;
		width: calc((100% - 14px) / 2) !important;
	}
}

@media (max-width: 520px) {
	body.single-product [data-collection="woocommerce/product-collection/related"] {
		padding: 12px;
	}

	body.single-product main#wp--skip-link--target > .wp-block-woocommerce-product-collection[data-collection="woocommerce/product-collection/related"] {
		padding-bottom: 12px !important;
	}

	body.single-product [data-collection="woocommerce/product-collection/related"] .wc-block-product-template {
		gap: 10px !important;
	}

	body.single-product [data-collection="woocommerce/product-collection/related"] li.wc-block-product {
		flex-basis: 88% !important;
		width: 88% !important;
	}

	body.single-product [data-collection="woocommerce/product-collection/related"] .wp-block-woocommerce-product-image img {
		height: min(64vh, 360px) !important;
	}

	.sdf-related-carousel__button {
		display: none;
	}
}

@media (max-width: 800px) {
	body.single-product main#wp--skip-link--target > .wp-block-columns {
		flex-direction: column;
		gap: 20px !important;
		padding: 16px;
	}

	body.single-product main#wp--skip-link--target > .wp-block-columns > .wp-block-column:first-child,
	body.single-product main#wp--skip-link--target > .wp-block-columns > .wp-block-column:last-child {
		flex: 1 1 auto !important;
		width: 100%;
		padding: 0;
	}

	body.single-product main#wp--skip-link--target .woocommerce-product-gallery {
		max-width: 520px !important;
		margin-inline: auto !important;
	}
}

body.single-product .entry-content > .woocommerce {
	padding: 0 24px 24px;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
	box-sizing: border-box;
}

body.single-product div.product .summary.entry-summary {
	padding: 10px 6px 10px 20px;
}

body.single-product div.product .summary.entry-summary .product_title {
	display: none;
}

body.single-product div.product .price,
body.single-product .wp-block-woocommerce-product-price[data-is-descendent-of-single-product-template="true"] {
	color: var(--sdf-brand-color);
	font-family: system-ui, sans-serif;
	font-size: clamp(28px, 3vw, 40px);
	font-weight: 780;
	letter-spacing: -0.025em;
	line-height: 1.1;
}

body.single-product .wp-block-woocommerce-product-price[data-is-descendent-of-single-product-template="true"],
body.single-product main .product_meta {
	display: none !important;
}

body.single-product .argo-product-purchase {
	margin: 24px 0 0;
}

body.single-product .argo-product-purchase__row {
	display: grid;
	grid-template-columns: max-content minmax(0, 1fr);
	align-items: stretch;
	gap: 14px;
}

body.single-product .argo-product-purchase__price {
	display: flex;
	align-items: center;
	min-height: 48px;
	color: var(--sdf-brand-color);
	font-family: system-ui, sans-serif;
	font-size: clamp(26px, 3vw, 36px);
	font-weight: 780;
	letter-spacing: -0.025em;
	line-height: 1;
}

body.single-product .argo-product-purchase__price .price {
	display: inline !important;
}

body.single-product .argo-product-purchase__row .wp-block-woocommerce-add-to-cart-form,
body.single-product .argo-product-purchase__row form.cart {
	width: 100%;
	margin: 0 !important;
}

body.single-product .argo-product-purchase__row .single_add_to_cart_button {
	width: 100%;
	box-sizing: border-box;
}

body.single-product .argo-product-file-size {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 12px 0 0;
	color: var(--sdf-text-muted);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.02em;
}

body.single-product .argo-product-file-size__format {
	color: var(--sdf-brand-color);
	font-weight: 800;
}

body.single-product div.product .single_add_to_cart_button,
body.single-product div.product button.button {
	min-height: 48px;
	padding: 12px 22px;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-family: system-ui, sans-serif;
	font-size: 16px;
	font-weight: 750;
	line-height: 1.2;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
}

body.single-product .woocommerce-message .button.wc-forward,
body.single-product .woocommerce-error .button.wc-forward {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-family: system-ui, sans-serif;
	font-weight: 750;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
}

body.single-product .woocommerce-message .button.wc-forward:hover,
body.single-product .woocommerce-message .button.wc-forward:focus-visible,
body.single-product .woocommerce-error .button.wc-forward:hover,
body.single-product .woocommerce-error .button.wc-forward:focus-visible {
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	filter: brightness(0.92);
}

body.single-product .woocommerce-message,
body.single-product .woocommerce-error {
	border-top-color: var(--sdf-brand-color);
}

body.single-product .woocommerce-message::before,
body.single-product .woocommerce-error::before {
	color: var(--sdf-brand-color);
}

/* Compact product-page success toast; errors remain persistent in the page. */
body.single-product .wc-block-components-notice-banner.sdf-notice-toast {
	--sdf-toast-accent: var(--sdf-brand-color);
	--sdf-toast-accent-rgb: var(--sdf-brand-color-rgb);
	position: fixed;
	top: 82px;
	right: 20px;
	z-index: 10000;
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr) 32px;
	gap: 12px;
	align-items: center;
	width: min(calc(100vw - 40px), 520px);
	max-width: 520px;
	min-height: 70px;
	margin: 0 !important;
	padding: 14px 14px 14px 16px !important;
	border: 1px solid rgba(var(--sdf-toast-accent-rgb), 0.35) !important;
	border-left: 4px solid var(--sdf-toast-accent) !important;
	border-radius: 12px !important;
	background: var(--sdf-surface) !important;
	color: var(--sdf-text) !important;
	box-shadow: 0 18px 48px rgba(12, 25, 16, 0.24) !important;
	box-sizing: border-box;
	animation: sdf-toast-enter 0.28s ease-out both;
}

body.single-product .wc-block-components-notice-banner.is-error.sdf-notice-toast {
	--sdf-toast-accent: #c62828;
	--sdf-toast-accent-rgb: 198, 40, 40;
}

body.admin-bar.single-product .wc-block-components-notice-banner.sdf-notice-toast {
	top: 114px;
}

body.single-product .sdf-notice-toast > svg {
	width: 24px;
	height: 24px;
	padding: 4px;
	border-radius: 50%;
	background: rgba(var(--sdf-toast-accent-rgb), 0.13);
	fill: var(--sdf-toast-accent);
	box-sizing: border-box;
}

body.single-product .sdf-notice-toast .wc-block-components-notice-banner__content {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 14px;
	align-items: center;
	min-width: 0;
	font-size: 14px;
	line-height: 1.45;
}

body.single-product .sdf-notice-toast .button.wc-forward {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	margin: 0;
	padding: 8px 14px;
	border: 0;
	border-radius: 7px;
	background: var(--sdf-toast-accent);
	color: var(--sdf-brand-contrast);
	font-size: 12px;
	font-weight: 750;
	line-height: 1.2;
	text-decoration: none;
}

.sdf-notice-toast__close {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--sdf-text-muted);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.sdf-notice-toast__close:hover,
.sdf-notice-toast__close:focus-visible {
	background: var(--sdf-surface-soft);
	color: var(--sdf-text);
}

body.single-product .sdf-notice-toast.is-dismissing {
	pointer-events: none;
	animation: sdf-toast-exit 0.26s ease-in both;
}

@keyframes sdf-toast-enter {
	from { opacity: 0; transform: translateX(36px); }
	to { opacity: 1; transform: translateX(0); }
}

@keyframes sdf-toast-exit {
	from { opacity: 1; transform: translateX(0); }
	to { opacity: 0; transform: translateX(44px); }
}

@media (max-width: 600px) {
	body.single-product .wc-block-components-notice-banner.sdf-notice-toast,
	body.admin-bar.single-product .wc-block-components-notice-banner.sdf-notice-toast {
		top: 12px;
		right: 12px;
		width: calc(100vw - 24px);
		grid-template-columns: 22px minmax(0, 1fr) 30px;
	}
}

/* Cart Blocks: compact product-page shell using the remembered brand palette. */
body.woocommerce-cart .sdf-cart-page {
	position: relative;
	left: 50%;
	width: min(calc(100% - 32px), 1000px);
	margin: 0 !important;
	margin-inline: 0 !important;
	padding: 30px 0 44px;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	transform: translateX(-50%);
	--wp--style--block-gap: 0;
}

body.woocommerce-cart .sdf-cart-page__title {
	width: 100%;
	margin: 0 0 22px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 780;
	text-align: left !important;
}

body.woocommerce-cart .sdf-cart-page__content {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-cart main#wp--skip-link--target {
	margin: 0 !important;
	padding: 0 0 44px !important;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	--wp--style--block-gap: 0;
}

body.woocommerce-cart main#wp--skip-link--target > .wp-block-group:first-child {
	width: min(calc(100% - 32px), 1000px);
	margin: 0 auto !important;
	padding: 0 !important;
}

body.woocommerce-cart main#wp--skip-link--target > .wp-block-group:first-child .wp-block-spacer {
	display: none;
}

body.woocommerce-cart .wp-block-post-title {
	width: min(calc(100% - 32px), 1000px);
	margin: 30px auto 22px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 780;
	text-align: left !important;
}

body.woocommerce-cart .entry-content.wp-block-post-content {
	width: min(calc(100% - 32px), 1000px);
	max-width: none;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart.alignwide {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-top: 4px solid var(--sdf-brand-color);
	border-radius: 0;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
	box-sizing: border-box;
}

body.woocommerce-cart .wc-block-components-sidebar-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.8fr) minmax(280px, 0.95fr);
	gap: 24px;
	margin: 0;
}

body.woocommerce-cart .wc-block-cart__main,
body.woocommerce-cart .wc-block-cart__sidebar {
	width: auto !important;
	max-width: none !important;
	flex-basis: auto !important;
	margin: 0;
	padding: 20px;
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface);
	box-sizing: border-box;
}

body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-cart .wc-block-cart-items th,
body.woocommerce-cart .wc-block-cart-items td {
	border-color: var(--sdf-border);
	background: transparent;
	color: var(--sdf-text);
}

body.woocommerce-cart .wc-block-cart-items__header {
	color: var(--sdf-text-muted);
	font-family: system-ui, sans-serif;
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.woocommerce-cart .wc-block-components-product-name {
	color: var(--sdf-text);
	font-family: system-ui, sans-serif;
	font-size: 15px;
	font-weight: 750;
	line-height: 1.35;
	text-decoration: none;
}

body.woocommerce-cart .wc-block-components-product-name:hover,
body.woocommerce-cart .wc-block-components-product-name:focus-visible,
body.woocommerce-cart .wc-block-cart-item__remove-link {
	color: var(--sdf-brand-color);
}

body.woocommerce-cart .wc-block-cart-item__remove-link svg {
	fill: currentColor;
}

body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-metadata__description,
body.woocommerce-cart .wc-block-components-product-metadata__description p {
	color: var(--sdf-text-muted);
	font-size: 12px;
	line-height: 1.45;
}

body.woocommerce-cart .wc-block-cart-item__prices .wc-block-formatted-money-amount,
body.woocommerce-cart .wc-block-cart-item__total .wc-block-formatted-money-amount,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
	color: var(--sdf-brand-color);
	font-family: system-ui, sans-serif;
	font-weight: 780;
}

body.woocommerce-cart .wc-block-cart__main .wc-block-cart-item__product .wc-block-cart-item__prices {
	display: none !important;
}

body.woocommerce-cart .wc-block-cart__totals-title,
body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-panel__button {
	color: var(--sdf-text);
	font-family: system-ui, sans-serif;
}

body.woocommerce-cart .wc-block-cart__totals-title {
	font-size: 22px;
	font-weight: 780;
}

body.woocommerce-cart .wc-block-components-totals-wrapper {
	border-color: var(--sdf-border);
}

body.woocommerce-cart .wc-block-components-panel__button-icon,
body.woocommerce-cart .wc-block-components-button svg {
	fill: var(--sdf-brand-color);
}

body.woocommerce-cart .wc-block-cart__submit-button {
	min-height: 48px;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-family: system-ui, sans-serif;
	font-size: 16px;
	font-weight: 750;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
}

body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:focus-visible {
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	filter: brightness(0.92);
}

html[data-sdf-theme="dark"] body.woocommerce-cart .wc-block-cart__main,
html[data-sdf-theme="dark"] body.woocommerce-cart .wc-block-cart__sidebar {
	background: var(--sdf-surface);
	color: var(--sdf-text);
}

@media (max-width: 780px) {
	body.woocommerce-cart .sdf-cart-page {
		width: calc(100% - 24px);
		padding: 22px 0 24px;
	}

	body.woocommerce-cart .sdf-cart-page__title {
		margin-bottom: 16px !important;
		font-size: 30px;
	}

	body.woocommerce-cart main#wp--skip-link--target {
		padding-bottom: 24px !important;
	}

	body.woocommerce-cart .wp-block-post-title,
	body.woocommerce-cart .entry-content.wp-block-post-content,
	body.woocommerce-cart main#wp--skip-link--target > .wp-block-group:first-child {
		width: calc(100% - 24px);
	}

	body.woocommerce-cart .wp-block-post-title {
		margin-top: 22px !important;
		margin-bottom: 16px !important;
		font-size: 30px;
	}

	body.woocommerce-cart .wp-block-woocommerce-cart.alignwide {
		padding: 12px;
	}

	body.woocommerce-cart .wc-block-components-sidebar-layout {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}

	body.woocommerce-cart .wc-block-cart__main,
	body.woocommerce-cart .wc-block-cart__sidebar {
		padding: 14px;
	}
}

/* Checkout Blocks: the same compact, brand-aware shell as the cart. */
body.woocommerce-checkout .sdf-checkout-page {
	position: relative;
	left: 50%;
	width: min(calc(100% - 32px), 1000px);
	margin: 0 !important;
	margin-inline: 0 !important;
	padding: 30px 0 44px;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	transform: translateX(-50%);
	--wp--style--block-gap: 0;
}

body.woocommerce-checkout .sdf-checkout-page__title {
	width: 100%;
	margin: 0 0 22px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 780;
	text-align: left !important;
}

body.woocommerce-checkout .sdf-checkout-page__content {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
}

/* Fallback for the database/default page template until page-checkout.html is uploaded. */
body.woocommerce-checkout main#wp--skip-link--target {
	margin: 0 !important;
	padding: 0 0 44px !important;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	--wp--style--block-gap: 0;
}

body.woocommerce-checkout main#wp--skip-link--target > .wp-block-group:first-child {
	width: min(calc(100% - 32px), 1000px);
	margin: 0 auto !important;
	padding: 0 !important;
}

body.woocommerce-checkout main#wp--skip-link--target > .wp-block-group:first-child .wp-block-spacer {
	display: none;
}

body.woocommerce-checkout .wp-block-post-title {
	width: min(calc(100% - 32px), 1000px);
	margin: 30px auto 22px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 780;
	text-align: left !important;
}

body.woocommerce-checkout .entry-content.wp-block-post-content {
	width: min(calc(100% - 32px), 1000px);
	max-width: none;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout.alignwide {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-top: 4px solid var(--sdf-brand-color);
	border-radius: 0;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
	box-sizing: border-box;
}

body.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.65fr) minmax(300px, 0.95fr);
	gap: 24px;
	margin: 0;
}

body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .wc-block-checkout__sidebar {
	width: auto !important;
	max-width: none !important;
	flex-basis: auto !important;
	margin: 0 !important;
	padding: 20px !important;
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface);
	color: var(--sdf-text);
	box-sizing: border-box;
}

body.woocommerce-checkout .wc-block-checkout__sidebar.is-sticky {
	align-self: start;
	top: 20px;
}

body.woocommerce-checkout .wc-block-components-checkout-step {
	margin: 0;
	padding: 20px 0;
	border-bottom: 1px solid var(--sdf-border);
}

body.woocommerce-checkout .wc-block-components-checkout-step:first-child {
	padding-top: 0;
}

body.woocommerce-checkout .wc-block-components-checkout-step__heading,
body.woocommerce-checkout .wc-block-components-checkout-step__heading-container {
	margin: 0 0 14px;
}

body.woocommerce-checkout .wc-block-components-checkout-step__title,
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-text {
	color: var(--sdf-text);
	font-family: system-ui, sans-serif;
	font-size: 20px;
	font-weight: 780;
	line-height: 1.25;
}

body.woocommerce-checkout .wc-block-components-checkout-step__description,
body.woocommerce-checkout .wc-block-components-checkout-step__heading-content,
body.woocommerce-checkout .wc-block-components-checkbox__label {
	color: var(--sdf-text-muted);
}

body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select,
body.woocommerce-checkout .wc-block-checkout__add-note textarea {
	border-color: var(--sdf-border) !important;
	border-radius: var(--sdf-radius-sm) !important;
	background: var(--sdf-surface-soft) !important;
	color: var(--sdf-text) !important;
	font-family: system-ui, sans-serif;
}

body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-blocks-components-select__label {
	color: var(--sdf-text-muted) !important;
}

body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-blocks-components-select .wc-blocks-components-select__select:focus,
body.woocommerce-checkout .wc-block-checkout__add-note textarea:focus {
	border-color: var(--sdf-brand-color) !important;
	box-shadow: 0 0 0 2px rgba(var(--sdf-brand-color-rgb), 0.18) !important;
	outline: 0;
}

body.woocommerce-checkout input[type="checkbox"],
body.woocommerce-checkout input[type="radio"] {
	accent-color: var(--sdf-brand-color);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block,
body.woocommerce-checkout .wc-block-checkout__additional-information {
	margin-top: 0;
	padding: 20px 0;
	border-top: 1px solid var(--sdf-border);
	border-bottom: 1px solid var(--sdf-border);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-checkbox,
body.woocommerce-checkout .sdf-digital-consent {
	margin: 0;
	padding: 16px;
	border-left: 4px solid var(--sdf-brand-color);
	background: rgba(var(--sdf-brand-color-rgb), 0.07);
}

body.woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-checkbox__label,
body.woocommerce-checkout .sdf-digital-consent label {
	color: var(--sdf-text) !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-validation-error,
body.woocommerce-checkout .sdf-digital-consent .required {
	color: #c62828;
}

body.woocommerce-checkout .wc-ppcp-googlepay__button.sdf-consent-locked {
	opacity: 0.42;
	filter: grayscale(0.65);
	pointer-events: none;
	cursor: not-allowed;
}

/* Keep every payment method dormant until both legal confirmations are saved. */
html.sdf-payment-consent-pending body.woocommerce-checkout #payment-method {
	opacity: 0.48;
	filter: grayscale(0.35);
	pointer-events: none;
	user-select: none;
}

/* Order received: compact confirmation screen matching checkout and account. */
body.woocommerce-order-received main#wp--skip-link--target {
	width: min(calc(100% - 32px), 1000px);
	max-width: none !important;
	margin: 0 auto !important;
	padding: 30px 0 44px !important;
	background: transparent;
	color: var(--sdf-text);
}

body.woocommerce-order-received main#wp--skip-link--target > * {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	box-sizing: border-box;
}

body.woocommerce-order-received .wc-block-order-confirmation-status {
	padding: 30px;
	border: 1px solid var(--sdf-border);
	border-top: 4px solid var(--sdf-brand-color);
	background: var(--sdf-surface);
	box-shadow: var(--sdf-shadow-sm);
}

body.woocommerce-order-received .wc-block-order-confirmation-status > h1 {
	margin: 0 0 8px;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 800;
	line-height: 1.08;
}

body.woocommerce-order-received .wc-block-order-confirmation-status > p {
	margin: 0;
	color: var(--sdf-text-muted);
	font-size: 16px;
}

body.woocommerce-order-received .sdf-order-delivery-notice {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 16px;
	margin-top: 24px;
	padding: 20px;
	border-top: 1px solid var(--sdf-border);
	border-bottom: 1px solid var(--sdf-border);
	background: rgba(var(--sdf-brand-color-rgb), 0.06);
}

body.woocommerce-order-received .sdf-order-delivery-notice__icon {
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
	border: 2px solid var(--sdf-brand-color);
	border-radius: 50%;
	color: var(--sdf-brand-color);
	font-size: 22px;
	font-weight: 800;
}

body.woocommerce-order-received .sdf-order-delivery-notice h2 {
	margin: 0 0 8px;
	color: var(--sdf-text);
	font-size: 20px;
	font-weight: 780;
}

body.woocommerce-order-received .sdf-order-delivery-notice p {
	margin: 3px 0;
	color: var(--sdf-text-muted);
	font-size: 14px;
	line-height: 1.5;
}

body.woocommerce-order-received .sdf-order-delivery-notice strong,
body.woocommerce-order-received .sdf-order-delivery-notice a {
	color: var(--sdf-brand-color);
	font-weight: 750;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary,
body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-downloads-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper {
	padding: 24px 30px;
	border: 1px solid var(--sdf-border);
	border-top: 0;
	background: var(--sdf-surface-soft);
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item {
	min-width: 0;
	padding: 4px 16px;
	border-right: 1px solid var(--sdf-border);
	color: var(--sdf-text);
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item:first-child {
	padding-left: 0;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item:last-child {
	padding-right: 0;
	border-right: 0;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key {
	display: block;
	margin-bottom: 5px;
	color: var(--sdf-text-muted);
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value {
	display: block;
	overflow-wrap: anywhere;
	color: var(--sdf-text);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper > h2,
body.woocommerce-order-received .wc-block-order-confirmation-downloads-wrapper > h2,
body.woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper > h2 {
	margin: 0 0 16px;
	color: var(--sdf-text);
	font-size: 22px !important;
	font-weight: 780;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table,
body.woocommerce-order-received .wc-block-order-confirmation-downloads__table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	background: var(--sdf-surface);
	color: var(--sdf-text);
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table td,
body.woocommerce-order-received .wc-block-order-confirmation-downloads__table th,
body.woocommerce-order-received .wc-block-order-confirmation-downloads__table td {
	padding: 14px 16px;
	border: 0;
	border-bottom: 1px solid var(--sdf-border);
	color: var(--sdf-text);
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table a,
body.woocommerce-order-received .wc-block-order-confirmation-downloads__table a,
body.woocommerce-order-received .wc-block-components-additional-fields-list a {
	color: var(--sdf-brand-color);
}

body.woocommerce-order-received .wc-block-components-additional-fields-list {
	margin: 0;
	padding: 18px;
	border-left: 4px solid var(--sdf-brand-color);
	background: rgba(var(--sdf-brand-color-rgb), 0.06);
}

body.woocommerce-order-received .wc-block-components-additional-fields-list dt {
	color: var(--sdf-text);
	font-size: 13px;
	font-weight: 650;
	line-height: 1.5;
}

body.woocommerce-order-received .wc-block-components-additional-fields-list dd {
	margin: 4px 0 14px;
	color: var(--sdf-brand-color);
	font-weight: 750;
}

body.woocommerce-order-received .wc-block-components-additional-fields-list dd:last-child {
	margin-bottom: 0;
}

@media (max-width: 780px) {
	body.woocommerce-order-received main#wp--skip-link--target {
		width: calc(100% - 24px);
		padding: 20px 0 28px !important;
	}

	body.woocommerce-order-received .wc-block-order-confirmation-status,
	body.woocommerce-order-received .wc-block-order-confirmation-summary,
	body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
	body.woocommerce-order-received .wc-block-order-confirmation-downloads-wrapper,
	body.woocommerce-order-received .wc-block-order-confirmation-additional-fields-wrapper {
		padding: 20px 16px;
	}

	body.woocommerce-order-received .sdf-order-delivery-notice {
		grid-template-columns: 36px minmax(0, 1fr);
		gap: 12px;
		padding: 16px 0;
		background: transparent;
	}

	body.woocommerce-order-received .sdf-order-delivery-notice__icon {
		width: 32px;
		height: 32px;
		font-size: 17px;
	}

	body.woocommerce-order-received .wc-block-order-confirmation-summary-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px 0;
	}

	body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item,
	body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item:first-child,
	body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item:last-child {
		padding: 0 12px;
		border-right: 0;
		border-left: 1px solid var(--sdf-border);
	}
}

body.woocommerce-checkout .wc-block-components-address-card,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option,
body.woocommerce-checkout .wc-block-components-radio-control__option {
	border-color: var(--sdf-border) !important;
	border-radius: 0;
	background: var(--sdf-surface-soft);
	color: var(--sdf-text);
}

body.woocommerce-checkout .wc-block-components-radio-control__option-checked,
body.woocommerce-checkout .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	border-color: var(--sdf-brand-color) !important;
	background: rgba(var(--sdf-brand-color-rgb), 0.08);
}

body.woocommerce-checkout .wc-block-components-checkout-order-summary__title {
	padding: 0 0 16px;
	border-bottom: 1px solid var(--sdf-border);
	color: var(--sdf-text);
}

body.woocommerce-checkout .wc-block-components-order-summary-item,
body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.woocommerce-checkout .wc-block-checkout__terms {
	border-color: var(--sdf-border) !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image img {
	background: #fff;
	object-fit: contain;
}

body.woocommerce-checkout .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-panel__button,
body.woocommerce-checkout .wc-block-components-payment-method-label {
	color: var(--sdf-text);
	font-family: system-ui, sans-serif;
}

body.woocommerce-checkout .wc-block-components-product-name {
	font-size: 14px;
	font-weight: 750;
	line-height: 1.35;
	text-decoration: none;
}

body.woocommerce-checkout .wc-block-components-product-name:hover,
body.woocommerce-checkout .wc-block-components-product-name:focus-visible,
body.woocommerce-checkout a:not(.wc-block-components-button) {
	color: var(--sdf-brand-color);
}

body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-metadata__description,
body.woocommerce-checkout .wc-block-components-product-metadata__description p {
	color: var(--sdf-text-muted);
	font-size: 12px;
	line-height: 1.45;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-price,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
	color: var(--sdf-brand-color);
	font-family: system-ui, sans-serif;
	font-weight: 780;
}

body.woocommerce-checkout .wc-block-components-panel__button-icon,
body.woocommerce-checkout .wc-block-components-button svg {
	fill: var(--sdf-brand-color);
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
	min-height: 48px;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-family: system-ui, sans-serif;
	font-size: 16px;
	font-weight: 750;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible {
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	filter: brightness(0.92);
}

html[data-sdf-theme="dark"] body.woocommerce-checkout .wc-block-checkout__main,
html[data-sdf-theme="dark"] body.woocommerce-checkout .wc-block-checkout__sidebar,
html[data-sdf-theme="dark"] body.woocommerce-checkout .wc-block-components-address-card,
html[data-sdf-theme="dark"] body.woocommerce-checkout .wc-block-components-radio-control-accordion-option,
html[data-sdf-theme="dark"] body.woocommerce-checkout .wc-block-components-radio-control__option {
	color: var(--sdf-text);
}

@media (max-width: 780px) {
	body.woocommerce-checkout .sdf-checkout-page {
		width: calc(100% - 24px);
		padding: 22px 0 24px;
	}

	body.woocommerce-checkout .sdf-checkout-page__title {
		margin-bottom: 16px !important;
		font-size: 30px;
	}

	body.woocommerce-checkout main#wp--skip-link--target {
		padding-bottom: 24px !important;
	}

	body.woocommerce-checkout .wp-block-post-title,
	body.woocommerce-checkout .entry-content.wp-block-post-content,
	body.woocommerce-checkout main#wp--skip-link--target > .wp-block-group:first-child {
		width: calc(100% - 24px);
	}

	body.woocommerce-checkout .wp-block-post-title {
		margin-top: 22px !important;
		margin-bottom: 16px !important;
		font-size: 30px;
	}

	body.woocommerce-checkout .wp-block-woocommerce-checkout.alignwide {
		padding: 12px;
	}

	body.woocommerce-checkout .wc-block-components-sidebar-layout.wc-block-checkout {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
	}

	body.woocommerce-checkout .wc-block-checkout__main,
	body.woocommerce-checkout .wc-block-checkout__sidebar {
		padding: 14px !important;
	}

	body.woocommerce-checkout .wc-block-checkout__sidebar.is-sticky {
		position: static;
	}
}

/* My Account: compact brand-aware navigation and content shell. */
body.woocommerce-account .sdf-account-page {
	position: relative;
	left: 50%;
	width: min(calc(100% - 32px), 1000px);
	margin: 0 !important;
	margin-inline: 0 !important;
	padding: 30px 0 44px;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	transform: translateX(-50%);
	--wp--style--block-gap: 0;
}

body.woocommerce-account .sdf-account-page__title {
	width: 100%;
	margin: 0 0 22px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 780;
	text-align: left !important;
}

body.woocommerce-account .sdf-account-page__content {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
}

/* Fallback while the dedicated page template has not yet been uploaded. */
body.woocommerce-account main#wp--skip-link--target {
	margin: 0 !important;
	padding: 0 0 44px !important;
	background: var(--sdf-bg);
	color: var(--sdf-text);
	--wp--style--block-gap: 0;
}

body.woocommerce-account main#wp--skip-link--target > .wp-block-group:first-child {
	width: min(calc(100% - 32px), 1000px);
	margin: 0 auto !important;
	padding: 0 !important;
}

body.woocommerce-account main#wp--skip-link--target > .wp-block-group:first-child .wp-block-spacer {
	display: none;
}

body.woocommerce-account .wp-block-post-title {
	width: min(calc(100% - 32px), 1000px);
	margin: 30px auto 22px !important;
	color: var(--sdf-text);
	font-size: clamp(30px, 4vw, 44px);
	font-weight: 780;
	text-align: left !important;
}

body.woocommerce-account .entry-content.wp-block-post-content {
	width: min(calc(100% - 32px), 1000px);
	max-width: none;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.woocommerce-account .sdf-account-page__content > .woocommerce,
body.woocommerce-account .entry-content.wp-block-post-content > .woocommerce {
	display: grid;
	grid-template-columns: 230px minmax(0, 1fr);
	gap: 24px;
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-top: 4px solid var(--sdf-brand-color);
	border-radius: 0;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
	box-sizing: border-box;
}

/* WooCommerce's legacy clearfix becomes two unwanted items inside the grid. */
body.woocommerce-account .sdf-account-page__content > .woocommerce::before,
body.woocommerce-account .sdf-account-page__content > .woocommerce::after,
body.woocommerce-account .entry-content.wp-block-post-content > .woocommerce::before,
body.woocommerce-account .entry-content.wp-block-post-content > .woocommerce::after {
	display: none !important;
	content: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
	box-sizing: border-box;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
	align-self: start;
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface);
}

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

body.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid var(--sdf-border);
}

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

body.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: flex;
	align-items: center;
	min-height: 46px;
	padding: 10px 14px;
	color: var(--sdf-text);
	font-family: system-ui, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.25;
	text-decoration: none;
	box-sizing: border-box;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
	background: rgba(var(--sdf-brand-color-rgb), 0.1);
	color: var(--sdf-brand-color);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	box-shadow: inset 4px 0 0 var(--sdf-brand-color);
}

body.woocommerce-account .woocommerce-MyAccount-content {
	min-height: 300px;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface);
	color: var(--sdf-text);
}

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

body.woocommerce-account .woocommerce-MyAccount-content > :last-child {
	margin-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-Address-title h2 {
	color: var(--sdf-brand-color);
	font-family: system-ui, sans-serif;
	font-weight: 780;
}

body.woocommerce-account .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content address,
body.woocommerce-account .woocommerce-MyAccount-content label {
	color: var(--sdf-text);
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
	color: var(--sdf-brand-color);
	text-decoration-color: rgba(var(--sdf-brand-color-rgb), 0.5);
	text-underline-offset: 3px;
}

/* Compact, readable order view in My Account. */
body.woocommerce-account .woocommerce-MyAccount-content {
	font-size: 14px;
	line-height: 1.5;
}

body.woocommerce-account .woocommerce-MyAccount-content h2 {
	margin: 24px 0 12px;
	font-size: clamp(20px, 2vw, 24px);
	line-height: 1.2;
}

body.woocommerce-account .woocommerce-MyAccount-content h3 {
	margin: 18px 0 8px;
	font-size: 18px;
	line-height: 1.25;
}

body.woocommerce-account .woocommerce-order-details .order_details {
	table-layout: fixed;
}

body.woocommerce-account .woocommerce-order-details .order_details .product-name {
	width: 78%;
	text-align: left;
	overflow-wrap: anywhere;
}

body.woocommerce-account .woocommerce-order-details .order_details .product-total {
	width: 22%;
	text-align: right;
	white-space: nowrap;
}

body.woocommerce-account .woocommerce-order-details .order_details tfoot td {
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: break-word;
	white-space: normal;
}

body.woocommerce-account .woocommerce-order-details .order_details tfoot {
	display: table-caption;
	width: 100%;
	caption-side: bottom;
}

body.woocommerce-account .woocommerce-order-details .order_details tfoot tr {
	display: grid;
	grid-template-columns: minmax(130px, 30%) minmax(0, 1fr);
	width: 100%;
}

body.woocommerce-account .woocommerce-order-details .order_details tfoot th,
body.woocommerce-account .woocommerce-order-details .order_details tfoot td {
	display: block;
	width: auto;
	box-sizing: border-box;
}

body.woocommerce-account .woocommerce-order-details .order_details tfoot td {
	text-align: right;
}

body.woocommerce-account .sdf-order-payment-method {
	display: block;
	max-width: 100%;
	overflow-wrap: anywhere;
}

body.woocommerce-account .woocommerce-order-details .product-quantity {
	display: inline-block;
	margin-left: 6px;
	white-space: nowrap;
}

body.woocommerce-account .aws-digital-downloads,
body.woocommerce-account .sdf-invoice-downloads {
	margin-top: 24px;
}

body.woocommerce-account .aws-digital-downloads > h2,
body.woocommerce-account .sdf-invoice-downloads > h2 {
	font-size: 22px;
}

body.woocommerce-account .aws-digital-download {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 5px 18px;
	align-items: center;
	margin: 0 0 10px;
	padding: 14px 16px;
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface-soft);
}

body.woocommerce-account .aws-digital-download__product,
body.woocommerce-account .aws-digital-download__file,
body.woocommerce-account .aws-digital-download > p {
	grid-column: 1;
}

body.woocommerce-account .aws-digital-download__product {
	font-size: 15px;
	line-height: 1.35;
}

body.woocommerce-account .aws-digital-download__file {
	color: var(--sdf-text-muted, #646970);
	font-size: 12px;
	overflow-wrap: anywhere;
}

body.woocommerce-account .aws-digital-download > p {
	margin: 0;
	font-size: 13px;
}

body.woocommerce-account .aws-digital-download__actions {
	grid-column: 2;
	grid-row: 1 / span 4;
	display: flex;
	width: 170px;
	max-width: 100%;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	gap: 8px;
}

body.woocommerce-account .aws-downloads-extension-form {
	display: inline-flex;
	margin: 0;
}

body.woocommerce-account .aws-digital-download__actions .button,
body.woocommerce-account .sdf-invoice-downloads .button {
	margin: 0;
}

body.woocommerce-account .aws-digital-download__actions .button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 42px;
	padding-inline: 12px;
	line-height: 1.25;
	text-align: center;
	white-space: normal;
	box-sizing: border-box;
}

@media (max-width: 720px) {
	body.woocommerce-account .woocommerce-MyAccount-content {
		padding: 16px;
	}

	body.woocommerce-account .woocommerce-order-details .order_details .product-name {
		width: 70%;
	}

	body.woocommerce-account .woocommerce-order-details .order_details .product-total {
		width: 30%;
	}

	body.woocommerce-account .aws-digital-download {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-account .aws-digital-download__actions {
		grid-column: 1;
		grid-row: auto;
		width: 100%;
		justify-content: flex-start;
	}
}

body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account .woocommerce-table,
body.woocommerce-account table.shop_table {
	width: 100%;
	margin: 0 0 20px;
	border: 1px solid var(--sdf-border);
	border-collapse: collapse;
	border-radius: 0;
	background: transparent;
	color: var(--sdf-text);
}

body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-orders-table td,
body.woocommerce-account .woocommerce-table th,
body.woocommerce-account .woocommerce-table td,
body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td {
	padding: 12px;
	border: 0;
	border-bottom: 1px solid var(--sdf-border);
	background: transparent;
	color: var(--sdf-text);
	text-align: left;
}

body.woocommerce-account .woocommerce-orders-table th,
body.woocommerce-account .woocommerce-table th,
body.woocommerce-account table.shop_table th {
	color: var(--sdf-text-muted);
	font-size: 11px;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.woocommerce-account .woocommerce-orders-table tr:last-child td,
body.woocommerce-account .woocommerce-table tr:last-child td,
body.woocommerce-account table.shop_table tr:last-child td {
	border-bottom: 0;
}

body.woocommerce-account .woocommerce-order-downloads__title {
	margin: 0 0 16px;
}

body.woocommerce-account .sdf-account-downloads {
	display: grid;
	gap: 12px;
}

body.woocommerce-account .sdf-account-download-groups {
	display: grid;
	gap: 18px;
}

body.woocommerce-account .sdf-account-download-group {
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface);
}

body.woocommerce-account .sdf-account-download-group__header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 11px 14px;
	border-bottom: 1px solid var(--sdf-border);
	background: var(--sdf-surface-soft);
	font-size: 13px;
}

body.woocommerce-account .sdf-account-download-group__header a {
	font-size: 15px;
	font-weight: 780;
	text-decoration: none;
}

body.woocommerce-account .sdf-account-download-group__header span {
	color: var(--sdf-text-muted);
	white-space: nowrap;
}

body.woocommerce-account .sdf-account-download-group .sdf-account-downloads {
	padding: 12px;
}

body.woocommerce-account .sdf-account-download {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	padding: 16px;
	border: 1px solid var(--sdf-border);
	border-left: 4px solid var(--sdf-brand-color);
	background: var(--sdf-surface-soft);
	color: var(--sdf-text);
	box-sizing: border-box;
}

body.woocommerce-account .sdf-account-download__product {
	color: var(--sdf-text);
	font-family: system-ui, sans-serif;
	font-size: 15px;
	font-weight: 750;
	line-height: 1.4;
}

body.woocommerce-account .sdf-account-download__product a {
	color: inherit;
	text-decoration: none;
}

body.woocommerce-account .sdf-account-download__product a:hover,
body.woocommerce-account .sdf-account-download__product a:focus-visible {
	color: var(--sdf-brand-color);
}

body.woocommerce-account .sdf-account-download__remaining,
body.woocommerce-account .sdf-account-download__expires {
	display: flex;
	align-items: baseline;
	gap: 5px;
	color: var(--sdf-text-muted);
	font-size: 13px;
	line-height: 1.35;
}

body.woocommerce-account .sdf-account-download__remaining strong,
body.woocommerce-account .sdf-account-download__expires strong {
	color: var(--sdf-brand-color);
	font-weight: 780;
}

body.woocommerce-account .sdf-account-download__button {
	margin-top: 3px;
	border-color: var(--sdf-brand-color) !important;
	background: var(--sdf-brand-color) !important;
	color: var(--sdf-brand-contrast) !important;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.18);
}

body.woocommerce-account .sdf-account-download__button:hover,
body.woocommerce-account .sdf-account-download__button:focus-visible {
	border-color: var(--sdf-brand-color) !important;
	background: var(--sdf-brand-color) !important;
	color: var(--sdf-brand-contrast) !important;
	filter: brightness(0.92);
}

body.woocommerce-account .woocommerce-Address {
	padding: 18px;
	border: 1px solid var(--sdf-border);
	background: var(--sdf-surface-soft);
	box-sizing: border-box;
}

body.woocommerce-account .woocommerce-Address-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

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

body.woocommerce-account form .form-row {
	margin-bottom: 14px;
}

body.woocommerce-account form label {
	display: block;
	margin-bottom: 6px;
	font-family: system-ui, sans-serif;
	font-size: 13px;
	font-weight: 700;
}

body.woocommerce-account form input.input-text,
body.woocommerce-account form select,
body.woocommerce-account form textarea,
body.woocommerce-account .select2-container--default .select2-selection--single {
	min-height: 46px;
	border: 1px solid var(--sdf-border) !important;
	border-radius: var(--sdf-radius-sm) !important;
	background: var(--sdf-surface-soft) !important;
	color: var(--sdf-text) !important;
	font-family: system-ui, sans-serif;
	box-sizing: border-box;
}

body.woocommerce-account form input.input-text,
body.woocommerce-account form textarea {
	width: 100%;
	padding: 10px 12px;
}

body.woocommerce-account form input.input-text:focus,
body.woocommerce-account form select:focus,
body.woocommerce-account form textarea:focus {
	border-color: var(--sdf-brand-color) !important;
	box-shadow: 0 0 0 2px rgba(var(--sdf-brand-color-rgb), 0.18);
	outline: 0;
}

body.woocommerce-account .button,
body.woocommerce-account button.button,
body.woocommerce-account input.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 42px;
	min-height: 42px;
	padding: 9px 18px;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-family: system-ui, sans-serif;
	font-size: 14px;
	font-weight: 750;
	line-height: 1 !important;
	vertical-align: middle;
	white-space: nowrap;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.18);
	box-sizing: border-box;
}

body.woocommerce-account .button:hover,
body.woocommerce-account .button:focus-visible,
body.woocommerce-account button.button:hover,
body.woocommerce-account button.button:focus-visible {
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	filter: brightness(0.92);
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
	margin: 0 0 20px;
	border-top-color: var(--sdf-brand-color);
	background: var(--sdf-surface-soft);
	color: var(--sdf-text);
}

body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before {
	color: var(--sdf-brand-color);
}

/* Logged-out My Account form spans the full shell. */
body.woocommerce-account .sdf-account-page__content > .woocommerce:has(.woocommerce-form-login),
body.woocommerce-account .entry-content.wp-block-post-content > .woocommerce:has(.woocommerce-form-login) {
	display: block;
}

body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register {
	max-width: 560px;
	margin: 0 auto !important;
	padding: 24px !important;
	border: 1px solid var(--sdf-border) !important;
	border-radius: 0 !important;
	background: var(--sdf-surface);
}

@media (max-width: 780px) {
	body.woocommerce-account .sdf-account-page {
		width: calc(100% - 24px);
		padding: 22px 0 24px;
	}

	body.woocommerce-account .sdf-account-page__title {
		margin-bottom: 16px !important;
		font-size: 30px;
	}

	body.woocommerce-account main#wp--skip-link--target {
		padding-bottom: 24px !important;
	}

	body.woocommerce-account .wp-block-post-title,
	body.woocommerce-account .entry-content.wp-block-post-content,
	body.woocommerce-account main#wp--skip-link--target > .wp-block-group:first-child {
		width: calc(100% - 24px);
	}

	body.woocommerce-account .wp-block-post-title {
		margin-top: 22px !important;
		margin-bottom: 16px !important;
		font-size: 30px;
	}

	body.woocommerce-account .sdf-account-page__content > .woocommerce,
	body.woocommerce-account .entry-content.wp-block-post-content > .woocommerce {
		grid-template-columns: minmax(0, 1fr);
		gap: 12px;
		padding: 12px;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: flex;
		overflow-x: auto;
		scrollbar-width: thin;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation li {
		flex: 0 0 auto;
		border-right: 1px solid var(--sdf-border);
		border-bottom: 0;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
		box-shadow: inset 0 -4px 0 var(--sdf-brand-color);
	}

	body.woocommerce-account .woocommerce-MyAccount-content {
		min-height: 0;
		padding: 16px;
	}

	body.woocommerce-account .woocommerce-orders-table,
	body.woocommerce-account .woocommerce-table,
	body.woocommerce-account table.shop_table {
		display: block;
		overflow-x: auto;
		white-space: nowrap;
	}
}

body.single-product div.product .product_meta {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--sdf-text-muted);
	font-size: 12px;
}

body.single-product div.product .product_meta .sku_wrapper {
	display: block;
	margin-bottom: 12px;
	color: var(--sdf-text-muted);
	font-size: 12px;
}

body.single-product div.product .product_meta .sku {
	color: var(--sdf-text);
	font-weight: 750;
}

body.single-product .wp-block-woocommerce-product-meta .taxonomy-product_cat {
	display: none !important;
}

body.single-product .wp-block-woocommerce-product-meta .wp-block-woocommerce-product-sku,
body.single-product .wp-block-woocommerce-product-meta .wp-block-woocommerce-product-sku .sku {
	max-width: 100%;
	white-space: nowrap;
	overflow-wrap: normal;
	word-break: normal;
}

body.single-product div.product .product_meta .posted_in {
	display: block;
	margin: 0 0 24px;
	padding: 0 0 18px;
	border-top: 0;
	border-bottom: 1px solid var(--sdf-border);
	background: transparent;
	color: var(--sdf-text-muted);
	font-size: 0;
	line-height: 1.35;
}

body.single-product div.product .product_meta .posted_in::before {
	content: var(--sdf-compatible-models-label, "Compatible Models:");
	display: block;
	margin-bottom: 8px;
	color: var(--sdf-text-muted);
	font-size: 10px;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

body.single-product div.product .product_meta .posted_in a {
	display: block;
	padding: 3px 0;
	border: 0;
	color: var(--sdf-brand-color);
	font-size: 11px;
	font-weight: 650;
	line-height: 1.35;
	text-decoration: none;
	text-decoration-color: var(--sdf-brand-color);
	text-underline-offset: 3px;
}

body.single-product div.product .product_meta .posted_in a::before {
	content: ">";
	display: inline-block;
	margin-right: 6px;
	opacity: 0.7;
}

body.single-product div.product .product_meta .posted_in a:hover,
body.single-product div.product .product_meta .posted_in a:focus-visible {
	color: var(--sdf-brand-color);
	text-decoration-line: underline;
}

/* WooCommerce product tabs: keep long document text away from the panel edges. */
body.single-product div.product .woocommerce-tabs ul.tabs.wc-tabs {
	display: none !important;
}

body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel {
	margin: 0;
	padding: 26px 30px 30px;
	border-top: 1px solid var(--sdf-border);
	border-right: 1px solid var(--sdf-border);
	border-bottom: 1px solid var(--sdf-border);
	border-left: 1px solid var(--sdf-border);
	background: var(--sdf-surface);
	box-sizing: border-box;
}

body.single-product div.product .woocommerce-tabs #tab-description > h2:first-child {
	display: none;
}

body.single-product div.product .woocommerce-tabs #tab-description h2 {
	color: var(--sdf-brand-color);
}

body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel > :first-child {
	margin-top: 0;
}

body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel > :last-child {
	margin-bottom: 0;
}

/* Product language alternatives: compact flag picker integrated with the summary. */
body.single-product .sdf-product-languages {
	margin: 20px 0 0;
	padding: 18px 0;
	border: 0;
	border-top: 1px solid var(--sdf-border);
	border-bottom: 1px solid var(--sdf-border);
	border-radius: 0;
	background: transparent;
}

@media (max-width: 420px) {
	body.single-product .argo-product-purchase__row {
		gap: 10px;
	}

	body.single-product .argo-product-purchase__price {
		font-size: 26px;
	}

	body.single-product .argo-product-purchase__row .single_add_to_cart_button {
		padding-inline: 14px;
		font-size: 14px;
	}
}

body.single-product .sdf-product-languages h2 {
	margin: 0 0 13px;
	color: var(--sdf-text-muted);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.06em;
	line-height: 1.35;
	text-transform: uppercase;
}

body.single-product .sdf-product-language-list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.single-product .sdf-product-language-list li {
	margin: 0;
	padding: 0;
}

body.single-product .sdf-product-language {
	display: grid;
	place-items: center;
	width: 46px;
	height: 38px;
	padding: 0;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface);
	box-shadow: none;
	box-sizing: border-box;
	text-decoration: none;
	transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

body.single-product a.sdf-product-language:hover,
body.single-product a.sdf-product-language:focus-visible {
	border-color: var(--sdf-brand-color);
	background: rgba(var(--sdf-brand-color-rgb), 0.09);
	transform: translateY(-2px);
}

body.single-product .sdf-product-language.is-current {
	border: 2px solid var(--sdf-brand-color);
	background: rgba(var(--sdf-brand-color-rgb), 0.13);
}

body.single-product .sdf-product-language__flag {
	display: block;
	width: 28px;
	height: 20px;
	border-radius: 2px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.14);
	object-fit: cover;
}

/* Related manuals: flat technical cards matching the product detail shell. */
body.single-product .related.products {
	clear: both;
	width: 100%;
	margin: 32px 0 0;
	padding: 24px;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface-soft);
	box-shadow: var(--sdf-shadow-sm);
	box-sizing: border-box;
}

body.single-product .related.products > h2 {
	position: relative;
	margin: 0 0 24px;
	padding-bottom: 13px;
	color: var(--sdf-text);
	font-size: clamp(23px, 3vw, 30px);
	font-weight: 820;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

body.single-product .related.products > h2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 48px;
	height: 2px;
	background: var(--sdf-brand-color);
}

body.single-product .related.products ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
	margin: 0;
	padding: 0;
}

body.single-product .related.products ul.products::before,
body.single-product .related.products ul.products::after {
	display: none;
}

body.single-product .related.products ul.products li.product {
	display: flex;
	float: none !important;
	flex-direction: column;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 12px;
	border: 1px solid var(--sdf-border);
	border-radius: 0;
	background: var(--sdf-surface);
	box-shadow: none;
	box-sizing: border-box;
	transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

body.single-product .related.products ul.products li.product:hover {
	border-color: var(--sdf-brand-color);
	box-shadow: 0 8px 24px rgba(var(--sdf-brand-color-rgb), 0.12);
	transform: translateY(-2px);
}

body.single-product .related.products .woocommerce-LoopProduct-link {
	display: flex;
	flex: 1;
	flex-direction: column;
	color: var(--sdf-text);
	text-decoration: none;
}

body.single-product .related.products ul.products li.product img {
	display: block;
	width: 100%;
	height: 245px;
	margin: 0 0 14px;
	padding: 8px;
	background: #ffffff;
	object-fit: contain;
	box-sizing: border-box;
}

body.single-product .related.products .woocommerce-loop-product__title {
	margin: 0;
	padding: 0;
	color: var(--sdf-text);
	font-size: 14px;
	font-weight: 720;
	line-height: 1.4;
}

body.single-product .related.products ul.products li.product .price {
	display: block;
	margin: auto 0 13px;
	padding-top: 14px;
	color: var(--sdf-brand-color);
	font-family: system-ui, sans-serif;
	font-size: 24px;
	font-weight: 780;
	letter-spacing: -0.025em;
	line-height: 1.1;
}

body.single-product .related.products ul.products li.product .price ins {
	color: inherit;
	font-weight: inherit;
	text-decoration: none;
}

body.single-product .related.products ul.products li.product .price del {
	color: var(--sdf-text-muted);
	font-size: 0.72em;
	opacity: 0.75;
}

body.single-product .related.products .button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 12px 22px;
	border: 0;
	border-radius: var(--sdf-radius-sm);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
	font-family: system-ui, sans-serif;
	font-size: 16px;
	font-weight: 750;
	line-height: 1.2;
	text-align: center;
	box-shadow: 0 7px 20px rgba(var(--sdf-brand-color-rgb), 0.2);
	box-sizing: border-box;
}

body.single-product .related.products .button:hover,
body.single-product .related.products .button:focus-visible {
	filter: brightness(0.92);
}

html[data-sdf-theme="dark"] body.single-product .related.products ul.products li.product img {
	background: #eef1ef;
}

@media (max-width: 900px) {
	body.single-product .related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.single-product .related.products ul.products li.product img {
		height: 280px;
	}
}

@media (max-width: 520px) {
	body.single-product .related.products {
		margin-top: 20px;
		padding: 12px;
	}

	body.single-product .related.products ul.products {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	body.single-product .related.products ul.products li.product img {
		height: min(64vh, 360px);
	}
}

@media (max-width: 900px) {
	.sdf-family-block__models ul {
		grid-template-columns: repeat(2, minmax(140px, 1fr));
	}

	.sdf-model-summary {
		grid-template-columns: 170px minmax(0, 1fr);
		gap: 24px;
		padding: 22px;
	}
}

@media (max-width: 620px) {
	.sdf-family-list {
		padding: 12px;
	}

	body.woocommerce .wp-block-post-title,
	body.woocommerce-page .wp-block-post-title {
		font-size: 30px;
		text-align: left;
	}

	.sdf-family-block__title {
		padding: 16px 16px 4px;
	}

	.sdf-family-block__row,
	.sdf-model-summary {
		grid-template-columns: 1fr;
	}

	.sdf-family-block__image {
		width: 96px;
		height: 82px;
	}

	.sdf-family-block__models ul {
		grid-template-columns: 1fr;
	}

	.sdf-model-summary__image {
		min-height: 150px;
	}

	.sdf-model-summary__groups ul {
		display: grid;
	}

	.sdf-model-summary__groups a {
		justify-content: space-between;
		width: 100%;
		box-sizing: border-box;
	}

	.sdf-document-table,
	.sdf-document-table tbody,
	.sdf-document-table tr,
	.sdf-document-table td {
		display: block;
	}

	.sdf-document-table__document {
		margin-bottom: 10px;
		border-radius: 0;
		background: var(--sdf-surface);
		box-shadow: var(--sdf-shadow-sm);
	}

	.sdf-document-table__document td {
		box-shadow: none;
	}

	.sdf-document-table__language {
		width: auto;
		padding-bottom: 4px !important;
		border-radius: 0 !important;
	}

	.sdf-document-table__title {
		padding-top: 5px !important;
		border-radius: 0 !important;
	}

	body.single-product .entry-content .single-product > .product {
		padding: 16px;
	}

	body.single-product .entry-content > .woocommerce {
		padding: 0 12px 12px;
	}

	body.single-product .sdf-product-languages {
		margin: 18px 0;
		padding: 15px 0;
	}

	body.single-product .sdf-product-language {
		width: 48px;
		height: 42px;
	}

	body.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel {
		padding: 20px 16px 22px;
	}
}

body.single-product .entry-content > .woocommerce,
body.single-product .entry-content .single-product > .product {
	width: min(100% - 32px, 1000px);
	margin-right: auto;
	margin-left: auto;
}

body.single-product div.product .woocommerce-product-gallery {
	max-width: 560px;
}

body.single-product .woocommerce-product-gallery__trigger {
	display: none !important;
}

body.single-product .woocommerce-product-gallery .flex-viewport {
	height: auto !important;
	aspect-ratio: 1600 / 2265;
	background: #ffffff;
}

body.single-product .woocommerce-product-gallery__image {
	height: auto !important;
	aspect-ratio: 1600 / 2265;
	background: #ffffff;
}

body.single-product .woocommerce-product-gallery__image > a {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	height: 100%;
	cursor: zoom-in;
}

body.single-product .woocommerce-product-gallery__image > a > img:not(.zoomImg) {
	display: block;
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	object-position: center top;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs {
	display: flex;
	gap: 10px;
	justify-content: flex-start;
	overflow-x: auto;
	margin-top: 10px;
	padding: 4px 2px 8px;
	scrollbar-width: thin;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs li {
	flex: 0 0 82px;
	width: 82px !important;
	margin: 0;
	padding: 4px;
	border: 1px solid #d7d7d7;
	border-radius: 5px;
	background: #ffffff;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs img {
	width: 100% !important;
	height: 104px !important;
	border: 2px solid transparent;
	border-radius: 3px;
	object-fit: contain;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active {
	border-color: transparent;
}

body.single-product .woocommerce-product-gallery .flex-control-thumbs li:has(> img.flex-active) {
	border-color: var(--sdf-brand-color);
	box-shadow: 0 0 0 2px rgba(var(--sdf-brand-color-rgb), 0.22);
}

body.sdf-gallery-modal-open {
	overflow: hidden;
}

.sdf-gallery-modal[hidden] {
	display: none !important;
}

.sdf-gallery-modal {
	display: grid;
	position: fixed;
	z-index: 100000;
	inset: 0;
	grid-template-columns: 72px minmax(0, 1fr) 72px;
	align-items: center;
	padding: 28px;
	background: rgba(0, 0, 0, 0.92);
}

.sdf-gallery-modal__figure {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	width: 100%;
	max-width: 1400px;
	height: calc(100vh - 110px);
	margin: 0 auto;
	padding-bottom: 34px;
	box-sizing: border-box;
}

.sdf-gallery-modal__image {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	transform-origin: center center;
	touch-action: none;
	user-select: none;
	transition: transform 0.12s ease-out;
}

.sdf-gallery-modal__figure.is-zoomed {
	cursor: grab;
}

.sdf-gallery-modal__figure.is-zoomed:active {
	cursor: grabbing;
}

.sdf-gallery-modal__image.is-zoomed {
	transition: none;
}

.sdf-gallery-modal__caption {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	padding-top: 10px;
	color: #ffffff;
	font-size: 14px;
	text-align: center;
}

.sdf-gallery-modal__close,
.sdf-gallery-modal__previous,
.sdf-gallery-modal__next {
	border: 0;
	background: transparent;
	color: #ffffff;
	cursor: pointer;
}

.sdf-gallery-modal__close {
	position: absolute;
	top: 14px;
	right: 20px;
	z-index: 2;
	font-size: 44px;
	line-height: 1;
}

.sdf-gallery-modal__previous,
.sdf-gallery-modal__next {
	font-size: 48px;
}

.sdf-gallery-modal__toolbar {
	display: flex;
	position: absolute;
	right: 50%;
	bottom: 18px;
	align-items: center;
	gap: 8px;
	padding: 7px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 8px;
	background: rgba(20, 20, 20, 0.86);
	transform: translateX(50%);
}

.sdf-gallery-modal__toolbar button {
	min-width: 38px;
	height: 36px;
	padding: 0 12px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 5px;
	background: #292929;
	color: #ffffff;
	font: inherit;
	cursor: pointer;
}

.sdf-gallery-modal__toolbar button:hover,
.sdf-gallery-modal__toolbar button:focus-visible {
	background: var(--sdf-brand-color);
}

.sdf-gallery-modal__zoom {
	min-width: 52px;
	color: #ffffff;
	font-variant-numeric: tabular-nums;
	text-align: center;
}

@media (max-width: 800px) {
	body.single-product .woocommerce-product-gallery .flex-viewport,
	body.single-product .woocommerce-product-gallery__image {
		height: auto !important;
		aspect-ratio: 1600 / 2265;
	}

	.sdf-gallery-modal {
		grid-template-columns: 44px minmax(0, 1fr) 44px;
		padding: 16px 4px;
	}

	.sdf-gallery-modal__previous,
	.sdf-gallery-modal__next {
		font-size: 34px;
	}
}

/* Tablet and phone refinements. Keep every primary action touch-friendly. */
@media (max-width: 900px) {
	.sdf-model-catalog {
		width: min(calc(100% - 28px), 760px);
		margin-bottom: 44px;
	}

	.sdf-model-summary {
		grid-template-columns: 150px minmax(0, 1fr);
		gap: 20px;
	}

	.sdf-model-summary__image {
		min-height: 140px;
		padding: 12px;
	}

	.sdf-model-summary__title {
		font-size: clamp(24px, 4.6vw, 31px);
	}

	.sdf-document-table__language-column,
	.sdf-document-table__language {
		width: 180px;
	}

	.sdf-family-block__models a,
	.sdf-model-summary__groups a,
	body.single-product div.product .single_add_to_cart_button {
		min-height: 44px;
	}

	body.single-product div.product .summary.entry-summary {
		padding-right: 0;
		padding-left: 10px;
	}
}

@media (max-width: 620px) {
	.sdf-model-catalog,
	.sdf-brand-catalog,
	body.single-product .entry-content > .woocommerce,
	body.single-product .entry-content .single-product > .product {
		width: calc(100% - 24px);
	}

	.sdf-model-summary {
		gap: 18px;
		margin-bottom: 22px;
		padding: 18px;
		border-radius: 0;
	}

	.sdf-model-summary__image {
		width: 100%;
		min-height: 0;
		max-height: 220px;
		box-sizing: border-box;
	}

	.sdf-model-summary__image img {
		max-height: 190px;
	}

	.sdf-model-summary__breadcrumbs {
		font-size: 11px;
		line-height: 1.45;
	}

	.sdf-model-summary__title {
		font-size: clamp(25px, 8vw, 32px);
		overflow-wrap: anywhere;
	}

	.sdf-model-summary__intro {
		font-size: 14px;
	}

	.sdf-document-table__group th {
		padding-top: 22px;
		font-size: 21px;
	}

	.sdf-document-table-shell {
		padding: 4px 10px 12px;
		border-radius: 0;
	}

	.sdf-document-table-shell::before {
		inset: -18px -10px;
	}

	.sdf-document-table colgroup {
		display: none;
	}

	.sdf-document-table__document {
		overflow: hidden;
	}

	.sdf-document-table__document td,
	.sdf-document-table__language,
	.sdf-document-table__title a {
		height: auto;
		min-height: 44px;
	}

	.sdf-document-table__language {
		grid-template-columns: 26px minmax(0, 1fr);
		width: 100%;
		padding: 10px 14px 5px !important;
		white-space: normal;
		box-sizing: border-box;
	}

	.sdf-document-table__title {
		padding: 4px 14px 10px !important;
	}

	.sdf-document-table__title a {
		padding-right: 30px;
		font-size: 14px;
	}

	.sdf-family-block__row {
		gap: 12px;
		padding: 10px 16px 18px;
	}

	.sdf-family-block__image {
		margin-bottom: 4px;
	}

	body.single-product div.product .summary.entry-summary {
		padding: 12px 0 0;
	}

	body.single-product .woocommerce-product-gallery .flex-viewport,
	body.single-product .woocommerce-product-gallery__image {
		height: auto !important;
		aspect-ratio: 1600 / 2265;
	}

	.sdf-gallery-modal {
		grid-template-columns: 38px minmax(0, 1fr) 38px;
	}

	.sdf-gallery-modal__figure {
		height: calc(100dvh - 100px);
		padding-bottom: 48px;
	}

	.sdf-gallery-modal__toolbar {
		bottom: 10px;
		gap: 4px;
	}

	.sdf-gallery-modal__toolbar button {
		min-width: 42px;
		height: 42px;
		padding: 0 8px;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media (max-width: 760px) {
	.sdf-site-header {
		height: 99px;
		min-height: 99px;
		max-height: 99px;
		overflow: hidden;
	}

	.sdf-site-header__inner {
		flex-direction: column;
		gap: 0;
		width: 100%;
		height: 96px;
		min-height: 96px;
		max-height: 96px;
		padding-top: 8px;
		box-sizing: border-box;
	}

	.sdf-site-header__top {
		justify-content: space-between;
		width: calc(100% - 24px);
		min-height: 42px;
	}

	.sdf-site-header__brand {
		font-size: 22px;
	}

	.sdf-site-header__nav {
		align-self: stretch;
		justify-content: center;
		min-height: 46px;
	}

	.sdf-site-header__nav a {
		justify-content: center;
		padding: 0 clamp(10px, 4vw, 18px);
		font-size: 12px;
	}

	.sdf-brand-hero,
	.sdf-model-hero,
	body.single-product .sdf-product-hero {
		align-items: flex-end;
		min-height: 600px;
		padding: 18px;
		background-position: 68% center;
		box-sizing: border-box;
	}

	body .sdf-brand-hero,
	body .sdf-model-hero,
	body.single-product .sdf-product-hero {
		background-image: linear-gradient(0deg, rgba(238, 243, 239, 0.98) 0%, rgba(238, 243, 239, 0.9) 35%, rgba(15, 24, 18, 0.02) 72%), var(--sdf-hero-image, none);
	}

	.sdf-model-summary {
		width: 100%;
		margin: 0;
		padding: 20px;
	}

	.sdf-brand-hero__content {
		width: 100%;
		margin: 0;
		padding: 20px;
		box-sizing: border-box;
	}

	.sdf-product-hero__content {
		width: 100%;
		margin: 0;
		padding: 20px;
		box-sizing: border-box;
	}

	.sdf-product-hero .sdf-product-breadcrumbs {
		display: -webkit-box;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
	}

	html[data-sdf-theme="dark"] body .sdf-brand-hero,
	html[data-sdf-theme="dark"] body .sdf-model-hero,
	html[data-sdf-theme="dark"] body.single-product .sdf-product-hero {
		background-image: linear-gradient(0deg, rgba(38, 46, 41, 0.98) 0%, rgba(38, 46, 41, 0.88) 38%, rgba(15, 24, 18, 0.05) 72%), var(--sdf-hero-image, none);
	}
}

/* Document-type table search and sorting. */
.sdf-document-table-tools {
	display: grid;
	grid-template-columns: minmax(220px, 1fr);
	align-items: end;
	margin: 14px 0 8px;
}

.sdf-document-table-search {
	display: grid;
	color: var(--sdf-text);
}

.sdf-document-table-search input {
	width: 100%;
	height: 44px;
	box-sizing: border-box;
	padding: 0 13px;
	border: 1px solid var(--sdf-border);
	border-radius: 8px;
	background: var(--sdf-surface);
	color: var(--sdf-text);
	font: 500 15px/1 system-ui, -apple-system, "Segoe UI", sans-serif;
}

.sdf-document-table-search input:focus {
	border-color: var(--sdf-brand-color);
	outline: 3px solid rgba(var(--sdf-brand-color-rgb), .16);
	outline-offset: 0;
}

.sdf-document-table-empty {
	margin: 24px 0;
	padding: 18px;
	background: var(--sdf-surface);
	color: var(--sdf-text-muted);
	text-align: center;
}

.sdf-document-table__document[hidden] {
	display: none !important;
}

.argo-document-list .sdf-document-table__title a,
.argo-document-list .sdf-document-table__title a:hover,
.argo-document-list .sdf-document-table__title a:focus-visible {
	text-decoration: none !important;
}

.argo-document-list .sdf-document-table__group th button {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	font-weight: inherit;
	cursor: pointer;
}

.argo-document-list .sdf-document-table__group th button::after {
	display: inline-block;
	width: 1em;
	content: "";
	color: var(--sdf-brand-color);
	font-size: .85em;
	text-align: center;
}

.argo-document-list .sdf-document-table__group th[aria-sort="ascending"] button::after {
	content: "↑";
}

.argo-document-list .sdf-document-table__group th[aria-sort="descending"] button::after {
	content: "↓";
}

@media (max-width: 600px) {
	.sdf-document-table-tools {
		grid-template-columns: 1fr;
		margin: 10px 4px 12px;
	}

	.argo-document-list .sdf-document-table thead {
		display: block;
	}

	.argo-document-list .sdf-document-table thead tr {
		display: grid;
		grid-template-columns: minmax(110px, 38%) minmax(0, 1fr);
	}

	.argo-document-list .sdf-document-table__group th {
		display: block;
		padding: 16px 14px 6px;
		font-size: 16px;
	}
}

/* Native mobile navigation: one menu surface, no JavaScript dependency. */
.argo-mobile-navigation {
	display: none;
}

@media (max-width: 560px) {
	.sdf-site-header {
		height: 56px !important;
		min-height: 56px !important;
		max-height: 56px !important;
		overflow: visible !important;
	}

	.sdf-site-header__inner {
		flex-direction: row !important;
		gap: 8px !important;
		height: 56px !important;
		min-height: 56px !important;
		max-height: 56px !important;
		padding: 0 9px !important;
	}

	.sdf-site-header__top {
		width: auto !important;
		min-height: 0 !important;
	}

	.sdf-site-header__brand {
		font-size: 17px !important;
	}

	html body .sdf-site-header__nav.argo-desktop-navigation {
		display: none !important;
	}

	.argo-mobile-navigation {
		position: relative;
		display: block !important;
		margin-left: auto;
		color: #ffffff;
	}

	.argo-mobile-navigation > summary {
		display: grid;
		place-content: center;
		gap: 4px;
		width: 40px;
		height: 40px;
		box-sizing: border-box;
		padding: 0;
		border: 1px solid rgba(255,255,255,.35);
		border-radius: 9px;
		background: rgba(255,255,255,.1);
		box-shadow: 0 4px 14px rgba(0,0,0,.12);
		cursor: pointer;
		list-style: none;
	}

	.argo-mobile-navigation > summary::-webkit-details-marker {
		display: none;
	}

	.argo-mobile-navigation > summary span {
		display: block;
		width: 18px;
		height: 2px;
		border-radius: 2px;
		background: currentColor;
	}

	.argo-mobile-navigation[open] > summary span:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.argo-mobile-navigation[open] > summary span:nth-child(2) {
		opacity: 0;
	}

	.argo-mobile-navigation[open] > summary span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	.argo-mobile-navigation__panel {
		position: absolute;
		top: 46px;
		right: 0;
		display: grid !important;
		width: min(250px, calc(100vw - 18px));
		height: auto !important;
		min-height: 0 !important;
		padding: 8px;
		box-sizing: border-box;
		border: 1px solid rgba(11,24,35,.12);
		border-radius: 12px;
		background: rgba(255,255,255,.98);
		box-shadow: 0 16px 35px rgba(11,24,35,.22);
	}

	.argo-mobile-navigation__panel a {
		display: flex !important;
		align-items: center;
		justify-content: flex-start !important;
		min-height: 40px;
		padding: 8px 12px !important;
		box-sizing: border-box;
		border: 0;
		border-radius: 7px;
		color: #0b1823 !important;
		font-size: 13px !important;
		font-weight: 700;
		text-decoration: none;
		text-shadow: none !important;
	}

	.argo-mobile-navigation__panel a:hover,
	.argo-mobile-navigation__panel a:focus-visible {
		background: #eef3f5;
	}

	body.home .argo-mobile-navigation {
		color: #0b1823;
	}

	body.home .argo-mobile-navigation > summary {
		border-color: rgba(11,24,35,.25);
		background: rgba(255,255,255,.72);
	}
}

/* Full-bleed catalogue alignment for phones and compact tablets. */
@media (max-width: 820px) {
	body.tax-product_cat .sdf-brand-catalog {
		width: 100vw !important;
		max-width: none !important;
		margin: 0 0 64px calc(50% - 50vw) !important;
		padding: 0 !important;
	}

	body.tax-product_cat .sdf-brand-hero {
		width: 100% !important;
		max-width: none !important;
		border-radius: 0;
		box-shadow: none;
	}

	body.tax-product_cat .argo-document-types {
		width: 100% !important;
		max-width: none !important;
		margin: clamp(26px, 6vw, 42px) 0 !important;
		padding: 0 18px !important;
		box-sizing: border-box;
	}

	body.tax-product_cat .argo-document-type-card {
		width: 100%;
		max-width: none;
		box-sizing: border-box;
	}
}

@media (max-width: 600px) {
	body.tax-product_cat .argo-document-types { padding-inline: 14px !important; }
}

/* SDF cookie consent: client-only and independent of the public page cache. */
.sdf-cookie-consent[hidden] {
	display: none !important;
}

.sdf-cookie-consent {
	position: fixed;
	z-index: 1000000;
	right: 18px;
	bottom: 18px;
	left: 18px;
	box-sizing: border-box;
	max-width: 1180px;
	margin: 0 auto;
	padding: 18px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-top: 3px solid var(--sdf-brand-color);
	border-radius: 14px;
	background: #101713;
	box-shadow: 0 16px 50px rgba(0, 0, 0, 0.3);
	color: #ffffff;
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
}

.sdf-cookie-consent__content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px 34px;
}

.sdf-cookie-consent__copy {
	max-width: 720px;
}

.sdf-cookie-consent__title {
	display: block;
	margin: 0 0 6px;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.3;
}

.sdf-cookie-consent__copy p {
	margin: 0;
	color: #c4cec7;
	font-size: 13px;
	line-height: 1.55;
}

.sdf-cookie-consent__copy a {
	color: #ffffff;
	font-weight: 700;
	text-underline-offset: 3px;
}

.sdf-cookie-consent__copy a:hover,
.sdf-cookie-consent__copy a:focus-visible {
	color: var(--sdf-brand-color);
}

.sdf-cookie-consent__actions {
	display: flex;
	flex: 0 0 auto;
	gap: 10px;
}

.sdf-cookie-consent__button {
	min-height: 42px;
	padding: 10px 17px;
	border: 1px solid transparent;
	border-radius: 9px;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.sdf-cookie-consent__button--primary {
	border-color: var(--sdf-brand-color);
	background: var(--sdf-brand-color);
	color: var(--sdf-brand-contrast);
}

.sdf-cookie-consent__button--secondary {
	border-color: rgba(255, 255, 255, 0.42);
	background: transparent;
	color: #ffffff;
}

.sdf-cookie-consent__button:hover,
.sdf-cookie-consent__button:focus-visible {
	filter: brightness(1.12);
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}

.sdf-site-footer__cookie-settings button {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

.sdf-site-footer__cookie-settings button:hover,
.sdf-site-footer__cookie-settings button:focus-visible {
	color: var(--sdf-brand-color);
}

@media (max-width: 760px) {
	.sdf-cookie-consent {
		right: 10px;
		bottom: 10px;
		left: 10px;
		padding: 16px;
		border-radius: 12px;
	}

	.sdf-cookie-consent__content,
	.sdf-cookie-consent__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.sdf-cookie-consent__actions {
		width: 100%;
	}

	.sdf-cookie-consent__button {
		width: 100%;
	}
}

@media (max-width: 420px) {
	.sdf-site-header__nav a {
		padding-inline: 7px;
		font-size: 11px;
	}

	.sdf-brand-hero,
	.sdf-model-hero,
	body.single-product .sdf-product-hero {
		min-height: 560px;
		padding: 10px;
		border-radius: 0;
	}

	.sdf-model-summary {
		padding: 17px;
		border-radius: 0;
	}

	.sdf-brand-hero__content {
		padding: 17px;
	}

	.sdf-product-hero__content {
		padding: 17px;
	}

	.sdf-model-summary__groups ul {
		gap: 7px;
		margin-top: 16px;
	}
}

/* Editable child-theme footer template part. */
footer.wp-block-template-part {
	margin-block-start: 0;
}

.sdf-site-footer {
	box-sizing: border-box;
	margin: 0;
	padding: clamp(38px, 5vw, 68px) clamp(20px, 5vw, 72px) 24px;
	border-top: 3px solid var(--sdf-brand-color);
	background: #101713;
	color: #ffffff;
}

.sdf-site-footer__main {
	box-sizing: border-box;
	width: min(100%, 1000px);
	max-width: 1000px;
	margin-inline: auto;
	padding-bottom: clamp(30px, 4vw, 46px);
}

.sdf-site-footer__groups {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px clamp(48px, 8vw, 112px);
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
}

.sdf-site-footer__group,
.sdf-site-footer__columns,
.sdf-site-footer__nav {
	min-width: 0;
	max-width: none !important;
	margin: 0 !important;
}

.sdf-site-footer__columns {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px clamp(20px, 3vw, 42px);
}

.sdf-site-footer__nav-title {
	margin: 0 0 18px;
	color: #8f9c94;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.3;
	text-transform: uppercase;
}

.sdf-site-footer__nav .wp-block-navigation__container {
	align-items: flex-start;
	gap: 5px;
}

.sdf-site-footer__nav .wp-block-navigation-item__content {
	padding: 6px 0;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	overflow-wrap: anywhere;
	text-decoration: none;
}

.sdf-site-footer__nav a:hover,
.sdf-site-footer__nav a:focus-visible {
	color: var(--sdf-brand-color);
}

.sdf-site-footer__bottom {
	box-sizing: border-box;
	width: min(100%, 1000px);
	max-width: 1000px;
	margin-inline: auto;
	gap: 10px 28px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	color: #8f9c94;
}

.sdf-site-footer__bottom p {
	margin: 0;
	font-size: 12px;
	line-height: 1.5;
}

@media (max-width: 760px) {
	.sdf-site-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.sdf-site-footer__groups {
		grid-template-columns: minmax(0, 1fr);
		gap: 34px;
	}
}

/* Shared document layout for the public help and policy pages. */
body.sdf-information-page {
	background: var(--sdf-bg);
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
}

body.sdf-information-page .wp-site-blocks > header {
	display: none !important;
}

body.sdf-information-page main#wp--skip-link--target {
	box-sizing: border-box;
	width: min(100%, 1000px);
	max-width: 1000px;
	margin: 0 auto;
	padding: clamp(38px, 6vw, 76px) 16px clamp(52px, 7vw, 92px);
}

body.sdf-information-page main > .wp-block-group:first-child {
	width: min(100%, 820px);
	max-width: 820px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

body.sdf-information-page main > .wp-block-group:first-child .wp-block-spacer {
	display: none;
}

body.sdf-information-page .wp-block-post-title {
	margin: 0;
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: clamp(36px, 5vw, 62px);
	font-weight: 850;
	letter-spacing: -0.045em;
	line-height: 1.04;
	text-align: left !important;
	text-wrap: balance;
}

body.sdf-information-page .wp-block-post-title::after {
	display: block;
	width: 64px;
	height: 4px;
	margin-top: 22px;
	border-radius: 999px;
	background: var(--sdf-brand-color);
	content: "";
}

body.sdf-information-page .wp-block-post-content {
	box-sizing: border-box;
	width: min(100%, 820px);
	max-width: 820px !important;
	margin: clamp(28px, 4vw, 42px) auto 0 !important;
	padding: clamp(26px, 4vw, 48px);
	border: 1px solid var(--sdf-border);
	border-radius: 18px;
	background: var(--sdf-surface);
	box-shadow: var(--sdf-shadow-md);
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.75;
	overflow-wrap: anywhere;
}

body.sdf-information-page .wp-block-post-content > br {
	display: none;
}

body.sdf-information-page .wp-block-post-content > :first-child {
	margin-top: 0;
}

body.sdf-information-page .wp-block-post-content > :last-child {
	margin-bottom: 0;
}

body.sdf-information-page .wp-block-post-content > p:first-child {
	margin-bottom: 26px;
	color: var(--sdf-text-muted);
	font-size: 13px;
	letter-spacing: 0.025em;
}

body.sdf-information-page .wp-block-post-content p {
	margin-block: 0 18px;
}

body.sdf-information-page .wp-block-post-content h2 {
	margin: 36px 0 16px;
	padding-top: 30px;
	border-top: 1px solid var(--sdf-border);
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: clamp(22px, 3vw, 28px);
	font-weight: 800;
	letter-spacing: -0.025em;
	line-height: 1.2;
	text-wrap: balance;
}

body.sdf-information-page .wp-block-post-content h3 {
	margin: 26px 0 12px;
	color: var(--sdf-text);
	font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.3;
}

body.sdf-information-page .wp-block-post-content ul,
body.sdf-information-page .wp-block-post-content ol {
	margin: 0 0 22px;
	padding-left: 1.35em;
}

body.sdf-information-page .wp-block-post-content li {
	margin-bottom: 8px;
	padding-left: 4px;
}

body.sdf-information-page .wp-block-post-content li::marker {
	color: var(--sdf-brand-color);
	font-weight: 800;
}

body.sdf-information-page .wp-block-post-content a {
	color: var(--sdf-brand-color);
	font-weight: 700;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

body.sdf-information-page .wp-block-post-content a:hover,
body.sdf-information-page .wp-block-post-content a:focus-visible {
	text-decoration-thickness: 2px;
}

body.sdf-information-page .wp-block-post-content img,
body.sdf-information-page .wp-block-post-content table {
	max-width: 100%;
}

body.sdf-information-page .wp-block-post-content .wp-block-table {
	overflow-x: auto;
}

@media (max-width: 600px) {
	body.sdf-information-page main#wp--skip-link--target {
		padding: 32px 12px 56px;
	}

	body.sdf-information-page .wp-block-post-title {
		font-size: clamp(32px, 11vw, 44px);
	}

	body.sdf-information-page .wp-block-post-content {
		padding: 24px 20px;
		border-radius: 14px;
	}

body.sdf-information-page .wp-block-post-content h2 {
		margin-top: 30px;
		padding-top: 24px;
	}
}

/* Final Argo layout overrides must follow the inherited SDF sample rules. */
body.home .sdf-home-page {
	width: 100%;
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
}

body.home main.sdf-home-page > .argo-home-hero { margin: 0; }
body.home .wp-site-blocks { padding-inline: 0; }

@media (max-width: 760px) {
	.sdf-site-header { height: auto; min-height: 99px; max-height: none; }
	.sdf-site-header__inner { height: auto; min-height: 96px; max-height: none; }
	.sdf-site-header__nav { width: 100%; overflow-x: auto; scrollbar-width: none; }
	.sdf-site-header__nav::-webkit-scrollbar { display: none; }
	.sdf-site-header__nav a { flex: 1 0 auto; white-space: nowrap; }
}

/* Compact homepage revision based on the live ArgoManuals rendering. */
.argo-home-hero {
	grid-template-rows: auto 1fr;
	height: min(720px, calc(100svh - 67px));
	min-height: 560px;
	background-position: center bottom;
}

/* WordPress may run wpautop after the shortcode and inject BR elements. */
.argo-home-hero br { display: none !important; }

.argo-home-hero__copy {
	align-self: start;
	width: min(92%, 760px);
	height: auto;
	padding: clamp(32px, 5vh, 54px) 20px 0;
}

.argo-home-hero__eyebrow { font-size: clamp(1.35rem, 2.3vw, 2.25rem); }
.argo-home-hero h1 { font-size: clamp(3.8rem, 6.4vw, 6.1rem); line-height: .95; }
.argo-home-hero__rule { margin: 18px auto 0; }

.argo-home-hero__brands {
	align-self: end;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	grid-auto-flow: column;
	grid-auto-rows: 1fr;
	width: min(calc(100% - 32px), 900px);
	height: auto;
	margin: 0 auto 22px;
	border-radius: 12px;
}

.argo-home-hero__brands > .argo-brand-card {
	grid-column: auto !important;
	grid-row: 1 !important;
	width: auto !important;
	min-width: 0;
	min-height: 92px;
	height: 92px;
	padding: 18px clamp(20px, 3vw, 34px);
}

.argo-brand-card__copy strong { font-size: clamp(1.2rem, 2vw, 1.65rem); }
.argo-brand-card__arrow { font-size: 2.15rem; }

@media (max-width: 800px) {
	.argo-home-hero {
		height: min(700px, calc(100svh - 99px));
		min-height: 600px;
		background-position: center bottom;
		background-size: auto 72%;
	}
	.argo-home-hero__copy { padding-top: 30px; }
}

@media (max-width: 560px) {
	.argo-home-hero {
		height: min(720px, calc(100svh - 99px));
		min-height: 620px;
		background-position: center bottom;
		background-size: auto 55%;
	}
	.argo-home-hero__copy { padding: 26px 12px 0; }
	.argo-home-hero__eyebrow { font-size: clamp(1.05rem, 5.5vw, 1.4rem); }
	.argo-home-hero h1 { font-size: clamp(3.2rem, 17vw, 4.4rem); }
	.argo-home-hero__brands {
		grid-template-columns: 1fr !important;
		grid-auto-flow: row;
		grid-template-rows: repeat(2, 78px);
		gap: 1px;
		margin-bottom: 12px;
		background: rgba(255,255,255,.5);
	}
	.argo-home-hero__brands > .argo-brand-card {
		grid-column: 1 !important;
		grid-row: auto !important;
		height: 78px;
		min-height: 78px;
		padding: 14px 20px;
	}
}

/* Minimal home: navigation overlays the photograph and the title is omitted. */
body.home .sdf-site-header {
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	left: 0 !important;
	z-index: 100 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #0b1823 !important;
}

body.home .sdf-site-header__inner { width: min(calc(100% - 40px), 1200px); }
body.home .sdf-site-header__brand { color: #0b1823 !important; text-shadow: 0 1px 4px rgba(255,255,255,.9); }
body.home .sdf-site-header__brand span { color: #00679e; }
body.home .sdf-site-header__nav a {
	border-bottom-color: transparent;
	color: #0b1823 !important;
	text-shadow: 0 1px 4px rgba(255,255,255,.9);
}
body.home .sdf-site-header__nav a:hover,
body.home .sdf-site-header__nav a:focus-visible { background: rgba(255,255,255,.42); color: #000 !important; }

.sdf-theme-toggle { display: none !important; }
.argo-mobile-menu-toggle { display: none; }

body.home .argo-home-hero {
	grid-template-rows: 1fr;
	height: min(720px, 100svh);
	min-height: 560px;
}

.argo-home-hero__brands { grid-row: 1; }
.argo-home-hero__brands > .argo-brand-card { box-sizing: border-box; }
.argo-brand-card__copy strong { font-size: clamp(1.25rem, 2.1vw, 1.75rem); letter-spacing: .055em; }

@media (max-width: 800px) {
	body.home .sdf-site-header {
		height: 64px !important;
		min-height: 64px !important;
		max-height: 64px !important;
		overflow: visible !important;
	}
	body.home .sdf-site-header__inner {
		flex-direction: row !important;
		width: 100%;
		height: 64px !important;
		min-height: 64px !important;
		max-height: 64px !important;
		padding: 0 12px !important;
	}
	body.home .sdf-site-header__top { width: auto !important; min-height: 0 !important; }
	body.home .sdf-site-header__brand { font-size: 20px; }
	body.home .sdf-site-header__nav {
		align-self: stretch;
		justify-content: flex-end;
		width: auto;
		min-height: 64px;
		overflow: visible;
	}
	body.home .sdf-site-header__nav a { flex: 0 0 auto; padding-inline: 10px; font-size: 11px; }
	body.home .argo-home-hero {
		height: 650px;
		min-height: 0;
		background-position: center top;
		background-size: 128% auto;
	}
	body.home .argo-home-hero::before {
		content: none !important;
	}
}

@media (max-width: 560px) {
	body.home .sdf-site-header {
		height: 56px !important;
		min-height: 56px !important;
		max-height: 56px !important;
	}
	body.home .sdf-site-header__inner {
		height: 56px !important;
		min-height: 56px !important;
		max-height: 56px !important;
		padding-inline: 9px !important;
	}
	body.home .sdf-site-header__brand { font-size: 17px; }
	.argo-mobile-menu-toggle {
		display: grid;
		place-content: center;
		gap: 4px;
		width: 40px;
		height: 40px;
		margin-left: auto;
		padding: 0;
		border: 1px solid rgba(11,24,35,.25);
		border-radius: 9px;
		background: rgba(255,255,255,.72);
		box-shadow: 0 4px 14px rgba(11,24,35,.12);
		cursor: pointer;
	}
	.argo-mobile-menu-toggle span { display: block; width: 18px; height: 2px; border-radius: 2px; background: #0b1823; }
	body.home .sdf-site-header__nav {
		position: absolute;
		top: 52px;
		right: 8px;
		display: flex !important;
		align-items: stretch;
		flex-direction: column;
		width: min(250px, calc(100% - 16px));
		height: auto;
		min-height: 0;
		padding: 8px;
		border: 1px solid rgba(11,24,35,.12);
		border-radius: 12px;
		background: rgba(255,255,255,.96);
		box-shadow: 0 16px 35px rgba(11,24,35,.2);
		opacity: 0;
		visibility: hidden;
		transform: translateY(-6px);
		pointer-events: none;
		transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
	}
	body.home .sdf-site-header.is-menu-open .sdf-site-header__nav {
		opacity: 1;
		visibility: visible;
		transform: none;
		pointer-events: auto;
	}
	body.home .sdf-site-header__nav a {
		display: flex !important;
		justify-content: flex-start;
		min-height: 40px;
		padding: 8px 12px;
		border: 0;
		border-radius: 7px;
		font-size: 13px;
		text-shadow: none;
	}
	body.home .argo-home-hero {
		height: 450px;
		min-height: 0;
		background-position: center top;
		background-size: 138% auto;
	}
	body.home .argo-home-hero::before {
		content: none !important;
	}
	.argo-home-hero__brands { width: calc(100% - 20px); margin-bottom: 10px; border-radius: 10px; }
	.argo-home-hero__brands > .argo-brand-card { height: 72px; min-height: 72px; padding: 12px 18px; }
	.argo-brand-card__copy strong { font-size: 1.2rem; }
}

@media (max-width: 380px) {
	body.home .sdf-site-header__inner { padding-inline: 7px !important; }
	body.home .sdf-site-header__brand { font-size: 16px; }
	body.home .argo-home-hero { background-size: 150% auto; }
	.argo-brand-card__copy strong { font-size: 1.05rem; }
}

/* Lightweight brand-specific hero crops for catalogue and product pages. */
body.term-mccormick .sdf-brand-hero,
body.brand-mccormick .sdf-family-hero,
body.single-product.brand-mccormick .sdf-product-hero {
	--sdf-hero-image: url("images/mccormick-catalog-hero-v1.webp");
	background-position: center center;
}

body.term-landini .sdf-brand-hero,
body.brand-landini .sdf-family-hero,
body.single-product.brand-landini .sdf-product-hero {
	--sdf-hero-image: url("images/landini-catalog-hero-v1.webp");
	background-position: center center;
}

@media (max-width: 760px) {
	body.term-mccormick .sdf-brand-hero,
	body.brand-mccormick .sdf-family-hero,
	body.single-product.brand-mccormick .sdf-product-hero {
		--sdf-hero-image: url("images/mccormick-catalog-hero-mobile-v1.webp");
		min-height: 520px;
		background-position: center center;
	}

	body.term-landini .sdf-brand-hero,
	body.brand-landini .sdf-family-hero,
	body.single-product.brand-landini .sdf-product-hero {
		--sdf-hero-image: url("images/landini-catalog-hero-mobile-v1.webp");
		min-height: 520px;
		background-position: center center;
	}
}
