/*
 * Whitegoods Help reskin - overrides that load after every theme stylesheet.
 * Values copied from the live WGH theme (whitegoodshelp/assets/css/main.css) so the
 * shop's headings, hero and buttons read as part of the same site.
 */
:root {
	--wh-navy: #0b1949;
	--wh-orange: #ff6600;
	--wh-orange-dark: #ff6600;
	--wh-blue: #2fa7e2;
	--wh-blue-dark: #1e8ec5;
	--wh-light-blue: #e9eff9;
	--wh-border: #dee2ea;
	--wh-text-muted: rgba(11, 25, 73, 0.72);
}

/* The exact font file the main WGH theme uses (same origin). Declared under both names:
   the theme stylesheets were mapped to 'Inter', the WGH theme calls it 'InterLocal'. */
@font-face {
	font-family: 'Inter';
	src: url('https://www.whitegoodshelp.co.uk/wordpress/wp-content/themes/whitegoodshelp/assets/fonts/inter-variable.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: block;
}
@font-face {
	font-family: 'InterLocal';
	src: url('https://www.whitegoodshelp.co.uk/wordpress/wp-content/themes/whitegoodshelp/assets/fonts/inter-variable.ttf') format('truetype');
	font-weight: 100 900;
	font-style: normal;
	font-display: block;
}

body,
button,
input,
select,
textarea {
	font-family: 'InterLocal', Arial, sans-serif;
	color: var(--wh-navy);
}
body { line-height: 1.6; background: #fff; }

/* ---- Header: white, like the other WGH sites ---- */
body header.header { background: #fff; border-bottom: 1px solid #edf1f7; }

/* Category bar: white with navy text instead of a dark band */
body nav.container-fluid.nav-container {
	background: #fff;
	margin-top: 14px !important;
	border-top: 1px solid #edf1f7;
}
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a {
	color: var(--wh-navy);
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	line-height: 20px;
	padding: 14px 18px;
}
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a:hover,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:hover > a {
	background: transparent;
	color: var(--wh-orange);
}
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.current-product_cat-ancestor > a:not(:hover) {
	background: transparent;
	color: var(--wh-orange);
	box-shadow: inset 0 -2px 0 var(--wh-orange);
}

/* ---- Buttons: solid WGH orange (search, basket, primary) ---- */
body .btn-primary,
body .aws-container .aws-search-form .aws-form-btn,
body .header a#cartIcon .btn {
	background: var(--wh-orange) !important;
	border-color: var(--wh-orange) !important;
	color: #fff;
	border-radius: 8px !important;
	font-weight: 600;
}
body .btn-primary:hover,
body .aws-container .aws-search-form .aws-form-btn:hover,
body .header a#cartIcon:hover .btn {
	background: var(--wh-orange-dark) !important;
	border-color: var(--wh-orange-dark) !important;
}
body .btn-primary:before { display: none; }
body .aws-container .aws-search-form .aws-search-field {
	border: 1px solid var(--wh-border) !important;
	border-radius: 14px !important;
}
body .header a#cartIcon b { background: var(--wh-navy); color: #fff; }

/* ---- Cards: white, bordered, soft shadow (WGH .wh-card) ---- */
body .category-listing .product-cat-inner > a {
	background: #fff;
	border: 1px solid var(--wh-border);
	border-bottom: 1px solid var(--wh-border);
	border-radius: 14px;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05);
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
body .category-listing .product-cat-inner > a:hover {
	border-color: var(--wh-blue);
	box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24);
	transform: translateY(-3px);
}
body .category-listing .product-cat-inner > a > h4 {
	color: var(--wh-navy);
	font-weight: 700;
	letter-spacing: -0.01em;
}

/* ---- Brands: light section instead of the dark patterned band ---- */
body .container-fluid.has-pattern-bg { background: #f6f8fc; }
body .container-fluid.has-pattern-bg .pattern-bg-image { display: none; }
body .brands-listing .title-row h3.white { color: var(--wh-navy); }
body .brands-listing .brand-block a {
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
}
body .brands-listing .brand-block a:hover { border-color: var(--wh-blue); }

/* ---- Headings: WGH weights, tracking and leading ---- */
h1, h2, h3, h4, h5, h6 { color: var(--wh-navy); }
h1 { font-weight: 800; line-height: 1.06; letter-spacing: -0.036em; }
h2 { font-weight: 800; line-height: 1.12; letter-spacing: -0.03em; }
h3 { line-height: 1.25; letter-spacing: -0.015em; }

/* Small uppercase line above a headline (.wh-mast-eyebrow on the main site) */
.wgh-eyebrow {
	display: block;
	font-size: 0.73rem;
	font-weight: 800;
	letter-spacing: 0.13em;
	text-transform: uppercase;
	color: var(--wh-blue);
	margin-bottom: 16px;
}

/* ---- Homepage hero: light WGH masthead instead of a photo with a colour wash ---- */
body .hero-home-page {
	background:
		radial-gradient(circle at 12% 20%, rgba(47, 167, 226, 0.14), transparent 45%),
		radial-gradient(circle at 88% 80%, rgba(11, 25, 73, 0.06), transparent 50%),
		#f6f8fc;
	border-bottom: 1px solid var(--wh-border);
}
body .hero-home-page .hero-image { display: none; }
body .hero-home-page h1 {
	margin: 0 0 22px;
	color: var(--wh-navy);
	font-size: clamp(2.1rem, 4.4vw, 3.4rem);
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: -0.03em;
}
/* The underlined phrase in the title becomes the blue half, like "Start here, we'll help." */
body .hero-home-page h1 u {
	color: var(--wh-blue);
	box-shadow: none;
	text-decoration: none !important;
}
body .hero-home-page .content,
body .hero-home-page .content p {
	color: var(--wh-text-muted);
	font-size: 1.13rem;
	line-height: 1.6;
	font-weight: 400;
	text-wrap: balance;
}
body .hero-home-page .part-finder-slider-container {
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	box-shadow: 0 30px 60px -28px rgba(11, 25, 73, 0.30), 0 10px 24px -14px rgba(11, 25, 73, 0.14);
}
body .hero-home-page .part-finder-slider-container > .title {
	font-weight: 800;
	letter-spacing: -0.015em;
}

/* ---- Section headings: WGH section heading (normal case, heavy, blue key word) ---- */
body .title-row h3 {
	margin: 0;
	font-size: clamp(1.9rem, 3vw, 2.5rem);
	line-height: 1.12;
	font-weight: 800;
	letter-spacing: -0.03em;
	text-transform: none;
	color: var(--wh-navy);
}
body .title-row h3 u { color: var(--wh-blue); }
body .title-row h3 u:after { display: none; }
body .title-row h3.white { color: #fff; }
body .title-row h3.white u { color: var(--wh-blue); }
/* Section titles are stored lower-case (the old theme upper-cased them); show them in sentence case */
body .title-row h3::first-letter { text-transform: uppercase; }

/* The old theme drew a sweeping gradient over buttons with ::before/::after.
   WGH buttons are solid, so drop those overlays (icon pseudo-elements keep their glyphs). */
body .btn::before, body .btn::after,
body .button::before, body .button::after,
body .aws-form-btn::before, body .aws-form-btn::after,
body a#cartIcon .btn::before, body a#cartIcon .btn::after {
	background: none !important;
	background-image: none !important;
}

/* Balance the hero title so the last line isn't a single word */
body .hero-home-page h1 { text-wrap: balance; }

/* Heading weight matches the WGH forum (font-bold = 700, -0.036em, 1.06) rather than 800 */
body h1,
body .hero-home-page h1 {
	font-weight: 700;
	letter-spacing: -0.036em;
	line-height: 1.06;
	font-size: clamp(2.2rem, 4.4vw, 3.51rem);
}
body h2,
body .title-row h3 { font-weight: 700; }

/* Category bar: WGH light blue band (not white, not dark) */
body nav.container-fluid.nav-container {
	background: var(--wh-light-blue);
	border-top: 0;
	border-bottom: 1px solid var(--wh-border);
}

/* Hero subtext: use the full column width, slightly larger; 'pretty' only prevents a lone last word */
body .hero-home-page .content,
body .hero-home-page .content p {
	font-size: 1.25rem;
	line-height: 1.6;
	text-wrap: pretty;
}

/* Category bar: items spread across the full container width instead of bunched in the middle */
@media (min-width: 992px) {
	body nav.container-fluid.nav-container .col-12 { display: block !important; }
	body nav.container-fluid.nav-container .menu-main-menu-container { float: none; width: 100%; }
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu {
		float: none;
		width: 100%;
		display: flex;
		justify-content: space-between;
	}
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li { float: none; margin: 0; }
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:first-child > a { padding-left: 0; }
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:last-child > a { padding-right: 0; }

	/* More breathing room under the logo/search row; nav sits flush on the hero (no white strip) */
	body nav.container-fluid.nav-container { margin-top: 24px !important; }
}

/* Header (fixed) is now 197px tall at desktop: header row + 24px gap + category bar.
   The page offset must match exactly or a strip of the page shows between bar and hero. */
@media (min-width: 992px) {
	body .header { height: 197px; }
	body { padding-top: 197px; }
	html { scroll-padding-top: 197px; }
}

/* Category bar: WGH navy with white text (replaces the light-blue band above) */
body nav.container-fluid.nav-container {
	background: var(--wh-navy);
	border-bottom: 0;
}
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a { color: #fff; }
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a:hover,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:hover > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.current-product_cat-ancestor > a:not(:hover) {
	color: var(--wh-orange);
}
/* Same navy as the footer */
body nav.container-fluid.nav-container { background: #1d2b5c; }

/* More space between the logo/search row and the category bar (24px -> 38px).
   Header height and page offset move with it so the bar still sits flush on the page. */
@media (min-width: 992px) {
	body nav.container-fluid.nav-container { margin-top: 38px !important; }
	body .header { height: 211px; }
	body { padding-top: 211px; }
	html { scroll-padding-top: 211px; }
}

/* Hero background = the WGH masthead (.wh-mast in the main theme): sky-to-white wash,
   graph-paper grid fading out from the top, and soft sky/orange colour washes. */
body .hero-home-page {
	isolation: isolate;
	overflow: hidden;
	background: linear-gradient(180deg, #eaf3fd 0%, #f4f9fe 44%, #ffffff 100%);
}
body .hero-home-page::before,
body .hero-home-page::after {
	content: "";
	position: absolute;
	pointer-events: none;
	z-index: -2;
	visibility: visible;
}
body .hero-home-page::before {
	inset: 0;
	background-image:
		linear-gradient(to right, rgba(11, 25, 73, 0.055) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(11, 25, 73, 0.055) 1px, transparent 1px);
	background-size: 68px 68px;
	-webkit-mask-image: radial-gradient(ellipse 85% 70% at 50% 0%, #000 25%, transparent 82%);
	mask-image: radial-gradient(ellipse 85% 70% at 50% 0%, #000 25%, transparent 82%);
}
body .hero-home-page::after {
	inset: -14rem -10rem auto -12rem;
	height: 42rem;
	background-image:
		radial-gradient(circle at 18% 30%, rgba(47, 167, 226, 0.20), transparent 55%),
		radial-gradient(circle at 88% 62%, rgba(255, 102, 0, 0.10), transparent 55%);
	filter: blur(60px);
}
/* The old hero photo carries Bootstrap's .d-block (display:block !important) */
body .hero-home-page .hero-image { display: none !important; }

/* One title weight everywhere (700, as confirmed), and every highlighted word in a
   heading styled like the hero: WGH blue, no underline. */
body h1, body h2, body h3, body h4 { font-weight: 700 !important; }
body h1 u, body h2 u, body h3 u, body h4 u {
	color: var(--wh-blue) !important;
	text-decoration: none !important;
	box-shadow: none !important;
	border: 0 !important;
}
body h1 u::after, body h2 u::after, body h3 u::after, body h4 u::after { display: none !important; }

/* About section title: same size and tracking as the other section titles */
body .about-us-section h3 {
	font-size: clamp(1.9rem, 3vw, 2.5rem);
	line-height: 1.12;
	letter-spacing: -0.03em;
	text-wrap: balance;
}

/* Footer column titles bold, like the main site's footer */
body footer h6 { font-weight: 700; }

/* Category bar: equal-width items across the site width, each centred, with divider
   lines between them and at both ends (replaces the edge-to-edge spread above). */
@media (min-width: 992px) {
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu { justify-content: stretch; }
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li {
		flex: 1 1 0;
		text-align: center;
		border-left: 1px solid rgba(255, 255, 255, 0.16);
	}
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:last-child {
		border-right: 1px solid rgba(255, 255, 255, 0.16);
	}
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a,
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:first-child > a,
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:last-child > a {
		float: none;
		display: block;
		padding: 14px 12px;
	}
}
/* Dividers were too faint at 16% - make them clearly visible */
@media (min-width: 992px) {
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li { border-left-color: rgba(255, 255, 255, 0.4); }
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:last-child { border-right-color: rgba(255, 255, 255, 0.4); }
}

/* Hero grid: drawn above the colour washes (they were dimming it), a touch stronger,
   and fading out lower so it reads across the whole hero like the forum masthead. */
body .hero-home-page::before {
	z-index: -1;
	background-image:
		linear-gradient(to right, rgba(11, 25, 73, 0.08) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(11, 25, 73, 0.08) 1px, transparent 1px);
	-webkit-mask-image: radial-gradient(ellipse 95% 90% at 50% 0%, #000 35%, transparent 90%);
	mask-image: radial-gradient(ellipse 95% 90% at 50% 0%, #000 35%, transparent 90%);
}

/* Category bar hover/current: orange text on navy was muddy. Keep white text, lift the
   item with a lighter navy and mark it with an orange bar along the bottom. */
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a:hover,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:hover > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.current-product_cat-ancestor > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.current-product_cat-ancestor > a:not(:hover) {
	color: #fff;
	background: rgba(255, 255, 255, 0.09);
	box-shadow: inset 0 -3px 0 var(--wh-orange);
}

/* More room between hero title and subtext (main site uses 28px) */
body .hero-home-page h1 { margin-bottom: 30px; }

/* WGH buttons (.wh-btn on the main site) */
.wgh-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 22px;
	border-radius: 8px;
	border: 1px solid transparent;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.2;
	text-decoration: none !important;
	transition: transform .15s, background-color .15s, border-color .15s;
}
.wgh-btn:hover { transform: translateY(-1px); }
.wgh-btn-primary { background: var(--wh-orange); color: #fff !important; }
.wgh-btn-primary:hover { background: var(--wh-orange-dark); }
.wgh-btn-outline { background: #fff; border-color: var(--wh-border); color: var(--wh-orange) !important; }
.wgh-btn-outline:hover { border-color: var(--wh-orange); }
.wgh-btn svg { flex: none; }
body .hero-home-page .wgh-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 30px;
}
/* The hero text blocks are floated; keep the buttons on their own row under them */
body .hero-home-page .wgh-hero-actions { float: left; width: 100%; clear: both; }

/* ===================== Mega menus (redesign) =====================
   White panel dropping from the nav bar; each appliance is a light card with its
   image in a white tile, brands as chips, parts as an arrowed list, orange "see all". */
@media (min-width: 992px) {
	body nav.nav-container .mega-menu {
		top: 100%;
		left: 0;
		right: 0;
		width: 100%;
		padding: 0;
		max-height: calc(100vh - 230px);
	}
	body nav.nav-container .mega-menu > .row { margin: 0; }
	body nav.nav-container .mega-menu .mega-menu-inner {
		background: #fff;
		border: 1px solid var(--wh-border) !important;
		border-top: 0 !important;
		border-radius: 0 0 18px 18px;
		box-shadow: 0 30px 60px -28px rgba(11, 25, 73, 0.35), 0 10px 24px -14px rgba(11, 25, 73, 0.16) !important;
		padding: 22px;
	}
	body nav.nav-container .mega-menu .mega-menu-inner > .row { margin: 0 -9px; row-gap: 18px; }
	body nav.nav-container .mega-menu .mega-menu-inner > .row > [class*="col-"] { padding: 0 9px; margin-bottom: 0 !important; }

	/* Appliance card */
	body .mega-menu .mega-menu-block-container {
		height: 100%;
		flex-wrap: nowrap !important;
		gap: 18px;
		padding: 22px 22px 20px !important;
		background: #f6f8fc;
		border: 1px solid #e6ebf3;
		border-radius: 14px;
	}
	body .mega-menu .mega-menu-block-container .post-thumbnail {
		width: 64px !important;
		min-width: 64px;
		max-width: 64px;
		height: 64px;
		margin: 0;
		padding: 8px;
		background: #fff;
		border: 1px solid var(--wh-border);
		border-radius: 12px;
	}
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list {
		float: none;
		flex: 1;
		max-width: none;
		margin-left: 0 !important;
	}
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list h4 {
		margin: 2px 0 16px;
		font-size: 19px !important;
		line-height: 1.25 !important;
		letter-spacing: -0.015em;
		color: var(--wh-navy);
	}
	body .mega-menu .menu-items-list-inner { margin: 0 0 16px; row-gap: 14px; }

	/* Column labels */
	body .mega-menu .menu-items-list-inner ul li.list-title {
		margin: 0 0 10px !important;
		font-size: 11.5px !important;
		line-height: 1.4 !important;
		font-weight: 700;
		letter-spacing: 0.09em;
		text-transform: uppercase;
		color: rgba(11, 25, 73, 0.5);
	}

	/* Brands: chips */
	body .mega-menu .menu-items-list-inner ul:first-child li:not(.list-title) {
		width: auto !important;
		margin: 0 6px 6px 0 !important;
	}
	body .mega-menu .menu-items-list-inner ul:first-child li:not(.list-title) a {
		display: inline-block;
		padding: 5px 12px;
		background: #fff;
		border: 1px solid var(--wh-border);
		border-radius: 999px;
		font-size: 14px;
		line-height: 1.4;
		color: var(--wh-navy);
		transition: border-color .15s, color .15s;
	}
	body .mega-menu .menu-items-list-inner ul:first-child li:not(.list-title) a:hover {
		border-color: var(--wh-orange);
		color: var(--wh-orange);
	}

	/* Parts: arrowed list */
	body .mega-menu .menu-items-list-inner ul + ul li:not(.list-title) { margin: 0 0 7px !important; }
	body .mega-menu .menu-items-list-inner ul + ul li:not(.list-title) a {
		position: relative;
		display: inline-block;
		padding-left: 16px;
		font-size: 15px;
		line-height: 1.45;
		color: var(--wh-text-muted);
		transition: color .15s;
	}
	body .mega-menu .menu-items-list-inner ul + ul li:not(.list-title) a::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0.5em;
		width: 6px;
		height: 6px;
		border-top: 2px solid var(--wh-blue);
		border-right: 2px solid var(--wh-blue);
		transform: rotate(45deg);
	}
	body .mega-menu .menu-items-list-inner ul + ul li:not(.list-title) a:hover { color: var(--wh-orange); }

	/* See all */
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list a.arrow-link {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding-top: 14px;
		width: 100%;
		border-top: 1px solid #e6ebf3;
		box-shadow: none;
		font-size: 15px;
		font-weight: 600;
		letter-spacing: 0;
		color: var(--wh-orange);
	}
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list a.arrow-link i { display: none; }
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list a.arrow-link::after {
		content: "\2192";
		transition: transform .15s;
	}
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list a.arrow-link:hover { color: var(--wh-orange-dark); }
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list a.arrow-link:hover::after { transform: translateX(4px); }
}

/* Mega menu: the floated title made the (flex) list row shrink to zero width beside it */
@media (min-width: 992px) {
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list h4 { float: none; }
	body .mega-menu .menu-items-list-inner { clear: both; display: flex; flex-wrap: wrap; margin-left: 0; margin-right: 0; }
	body .mega-menu .menu-items-list-inner > ul { float: none; padding: 0 12px 0 0; flex: 0 0 50%; max-width: 50%; }
	body .mega-menu .menu-items-list-inner > ul.col-lg-12 { flex-basis: 100%; max-width: 100%; }
	body .mega-menu .mega-menu-block-container .mega-menu-inner-list a.arrow-link { float: none; }
}

/* Hero: more vertical rhythm between eyebrow, title, text and buttons */
body .hero-home-page { height: auto; min-height: 560px; padding-top: 72px; padding-bottom: 80px; }
body .hero-home-page .wgh-eyebrow { margin-bottom: 22px; }
body .hero-home-page h1 { margin-bottom: 34px; }
body .hero-home-page .content p { margin-bottom: 0; }
body .hero-home-page .wgh-hero-actions { margin-top: 44px; }

/* Header logo: the theme sets it to width/height auto, so no space was reserved until the
   image arrived and the search bar jumped. Height comes from the theme per breakpoint; the
   logo ratio gives the width immediately. */
body .header a#logo-main img {
	height: 100% !important;
	width: auto !important;
	aspect-ratio: 600 / 103;
}


/* Hero text: 3 lines of similar length */
body .hero-home-page .content,
body .hero-home-page .content p { text-wrap: balance; }

/* "Find your part by category": WGH light-blue grid band (forum .wh-band-texture) */
body .container-fluid.category-listing {
	background-color: #eaf1fb;
	background-image:
		linear-gradient(90deg, rgba(11, 25, 73, 0.045) 1px, transparent 1px),
		linear-gradient(rgba(11, 25, 73, 0.045) 1px, transparent 1px),
		radial-gradient(65% 150% at 80% 45%, rgba(47, 167, 226, 0.14), transparent 72%);
	background-size: 84px 84px, 84px 84px, 100% 100%;
	border-top: 1px solid var(--wh-border);
	border-bottom: 1px solid var(--wh-border);
	padding-top: 80px;
	padding-bottom: 80px;
}
/* No white gap between the hero and the category band (old theme added 90px) */
body .hero-home-page { margin-bottom: 0 !important; }
/* Homepage bands sit edge to edge (their own padding gives the spacing) */
body .home #main > .container-fluid,
body.home #main > .container-fluid { margin-top: 0 !important; margin-bottom: 0 !important; }

/* Top utility strip: faint full-width band, everything centred on one line.
   Header padding moves into the strip so the logo row stays at the same height (68px). */
@media (min-width: 992px) {
	body .header { padding-top: 0; }
	body .header .top-nav {
		height: 40px;
		margin-bottom: 28px;
		background: #f1f5fb;
		box-shadow: 0 0 0 100vmax #f1f5fb;
		clip-path: inset(0 -100vmax);
	}
	body .header .top-nav > .row { height: 100%; align-items: center; }
	body .header .top-nav > .row > .col { display: flex; align-items: center; height: 100%; }
	body .header .top-nav .delivery-notice {
		display: flex;
		align-items: center;
		gap: 10px;
		margin: 0;
		font-size: 13.5px;
		line-height: 1;
		font-weight: 600;
	}
	body .header .top-nav .delivery-notice i { margin-right: 0 !important; line-height: 1; }
	body .header .top-nav ul.menu {
		display: flex;
		align-items: center;
		gap: 26px;
		margin: 0;
		padding: 0;
	}
	body .header .top-nav ul.menu li { margin: 0; padding: 0; float: none; line-height: 1; }
	body .header .top-nav ul.menu li a { font-size: 13.5px; line-height: 1; color: var(--wh-text-muted); }
	body .header .top-nav ul.menu li a:hover { color: var(--wh-orange); }
}
/* Hero: a bit more room at the top, a little less at the bottom (no forced min-height) */
body .hero-home-page { min-height: 0; padding-top: 96px; padding-bottom: 64px; }
@media (min-width: 992px) {
	/* nav must end exactly at the 211px header edge (was 1px short after the strip change) */
	body nav.container-fluid.nav-container { margin-top: 39px !important; }
}
/* Hero bottom: between the old ~110px and 64px */
body .hero-home-page { padding-bottom: 88px; }
body .hero-home-page { padding-bottom: 112px; }

/* Top strip: separators between links; dispatch note styled exactly like the links */
@media (min-width: 992px) {
	body .header .top-nav ul.menu { gap: 0; }
	body .header .top-nav ul.menu li + li { border-left: 1px solid #cfd7e6; }
	body .header .top-nav ul.menu li a { display: block; padding: 0 16px; font-weight: 400; }
	body .header .top-nav ul.menu li:last-child a { padding-right: 0; }
	body .header .top-nav .delivery-notice,
	body .header .top-nav .delivery-notice a,
	body .header .top-nav .delivery-notice i {
		font-size: 13.5px;
		font-weight: 400;
		line-height: 1;
		color: var(--wh-text-muted) !important;
	}
	body .header .top-nav .delivery-notice i { font-size: 16px; }
	body .header .top-nav .delivery-notice a:hover { color: var(--wh-orange) !important; }
}
body .hero-home-page { padding-bottom: 100px; }

/* ===================== Category cards (option C, chosen 2026-10-13) ===================== */
body .wgh-section-sub {
	margin: 12px auto 0;
	max-width: 620px;
	text-align: center;
	color: var(--wh-text-muted);
	font-size: 1.05rem;
	text-wrap: balance;
}
body .category-listing .title-row { margin-bottom: 40px; }
body .product-cat-inner { display: block; height: 100%; }
body .product-cat-inner > a.wgh-cat-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05);
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
body .product-cat-inner > a.wgh-cat-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24);
	border-color: var(--wh-blue);
}
body .wgh-cat-card .wgh-cat-pic {
	height: 170px;
	display: grid;
	place-items: center;
	background: linear-gradient(180deg, #f6f8fc, #edf2fa);
	border-bottom: 1px solid #eef2f8;
}
body .wgh-cat-card .wgh-cat-pic img {
	height: 120px !important;
	width: auto !important;
	max-width: 80%;
	object-fit: contain;
	mix-blend-mode: multiply;
}
body .wgh-cat-card .wgh-cat-body {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 18px;
}
body .wgh-cat-card h4 {
	margin: 0;
	font-size: 17px;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wh-navy);
}
body .wgh-cat-card .wgh-cat-count { display: block; font-size: 14px; color: rgba(11, 25, 73, 0.55); }
body .wgh-cat-card .wgh-cat-arrow {
	flex: none;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: #f6f8fc;
	color: var(--wh-orange);
	transition: background .18s, color .18s;
}
body .wgh-cat-card:hover .wgh-cat-arrow { background: var(--wh-orange); color: #fff; }
/* Same gap between card rows as between columns (30px) */
body .category-listing article.mb-35 { margin-bottom: 30px !important; }

/* Category cards: remove the old theme's wrapper styling (5px orange bottom border,
   shadow) and its hover tint, so hover is just the demo's lift + blue border + orange arrow. */
body .category-listing .product-cat-inner {
	background: transparent;
	border: 0;
	border-radius: 14px;
	box-shadow: none;
}
body .category-listing .product-cat-inner > a.wgh-cat-card,
body .category-listing .product-cat-inner > a.wgh-cat-card:hover {
	background: #fff;
	padding: 0;
}
body .category-listing .product-cat-inner > a.wgh-cat-card:hover h4 { color: var(--wh-navy); }
/* Dispatch note: same size/font as the links, but bold and orange so it stands out */
@media (min-width: 992px) {
	body .header .top-nav .delivery-notice,
	body .header .top-nav .delivery-notice a,
	body .header .top-nav .delivery-notice i {
		font-weight: 700;
		color: var(--wh-orange) !important;
	}
	body .header .top-nav .delivery-notice a:hover { color: var(--wh-orange-dark) !important; }
}
/* Truck icon stays muted navy; only the dispatch text is orange */
@media (min-width: 992px) {
	body .header .top-nav .delivery-notice i { color: var(--wh-text-muted) !important; font-weight: 400; }
}

/* ===================== Part finder card ===================== */
body .hero-home-page .part-finder-slider-container { padding: 30px 30px 26px; }
body .wgh-finder-head { display: flex; align-items: center; gap: 14px; margin-bottom: 24px; float: left; width: 100%; }
body .wgh-finder-icon {
	flex: none;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	display: grid;
	place-items: center;
	background: #ffe9db;
	color: var(--wh-orange);
}
body .wgh-finder-head .title {
	display: block;
	margin: 0 !important;
	font-size: 20px !important;
	line-height: 1.2 !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em;
	color: var(--wh-navy);
}
body .wgh-finder-sub { display: block; margin-top: 3px; font-size: 14px; line-height: 1.4; color: rgba(11, 25, 73, 0.6); }

/* Numbered steps: 1-2-3 badges beside each field; a badge turns green with a tick once filled */
body .find-part-form-container .find-part-form { counter-reset: wgh-step; }
body .find-part-form-container .find-part-form > .fields:not(.d-none):not(.submit) {
	counter-increment: wgh-step;
	position: relative;
	padding-left: 44px;
	margin-bottom: 14px;
}
body .find-part-form-container .find-part-form > .fields:not(.d-none):not(.submit)::before {
	content: counter(wgh-step);
	position: absolute;
	left: 0;
	top: 13px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--wh-light-blue);
	color: var(--wh-navy);
	font-size: 13px;
	font-weight: 700;
	visibility: visible;
	transition: background .2s, color .2s;
}
body .find-part-form-container .find-part-form > .fields:has(.selectize-input.has-items)::before,
body .find-part-form-container .find-part-form > .model_no_field:has(input:not(:placeholder-shown))::before {
	content: "\2713";
	background: #e3f4e8;
	color: #1f7a3d;
}

/* Fields */
body .find-part-form-container form .fields .selectize-input,
body .find-part-form-container form .fields input[name="model"] {
	min-height: 54px;
	padding: 0 46px 0 16px !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 15.5px;
	color: var(--wh-navy);
	transition: border-color .15s, box-shadow .15s;
}
body .find-part-form-container form .fields .selectize-input:hover { border-color: #c3cddd !important; }
body .find-part-form-container form .fields .selectize-input.focus,
body .find-part-form-container form .fields .selectize-input.dropdown-active,
body .find-part-form-container form .fields input[name="model"]:focus {
	border-color: var(--wh-blue) !important;
	box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important;
	outline: none;
}
body .find-part-form-container form .fields .selectize-input input::placeholder,
body .find-part-form-container form .fields input[name="model"]::placeholder { color: rgba(11, 25, 73, 0.45); }
body .find-part-form-container form .fields .selectize-input .item { color: var(--wh-navy); font-weight: 600; }
body .find-part-form-container form .fields .selectize-input::after { color: var(--wh-navy); opacity: .55; right: 18px !important; }
/* Model box locked until a brand is chosen */
body .find-part-form-container form .fields input[name="model"][readonly],
body .find-part-form-container form .fields .selectize-input.disabled {
	background: #f6f8fc !important;
	border-style: dashed !important;
	cursor: not-allowed;
}

/* Dropdown: floating panel under the field */
body .find-part-form-container form .fields .selectize-dropdown {
	top: calc(100% + 8px) !important;
	padding: 6px !important;
	background: #fff;
	border: 1px solid var(--wh-border) !important;
	border-radius: 14px !important;
	box-shadow: 0 24px 48px -20px rgba(11, 25, 73, 0.30), 0 8px 18px -10px rgba(11, 25, 73, 0.14) !important;
	z-index: 30;
}
body .find-part-form-container form .fields .selectize-dropdown .selectize-dropdown-content {
	max-height: 264px;
	scrollbar-width: thin;
	scrollbar-color: #c9d3e3 transparent;
}
body .find-part-form-container form .fields .selectize-dropdown .selectize-dropdown-content::-webkit-scrollbar { width: 6px; }
body .find-part-form-container form .fields .selectize-dropdown .selectize-dropdown-content::-webkit-scrollbar-thumb { background: #c9d3e3; border-radius: 3px; }
body .find-part-form-container form .fields .selectize-dropdown .option {
	padding: 10px 14px !important;
	border-radius: 9px;
	font-size: 15px;
	line-height: 1.35;
	color: var(--wh-navy);
	cursor: pointer;
}
body .find-part-form-container form .fields .selectize-dropdown .option.active,
body .find-part-form-container form .fields .selectize-dropdown .option:hover {
	background: #eef4fd !important;
	color: var(--wh-navy) !important;
}
body .find-part-form-container form .fields .selectize-dropdown .option.selected {
	background: var(--wh-light-blue) !important;
	font-weight: 600;
}

/* "How to find your model number" */
body .find-part-form-container form.find-part-form .fields a.model-no-link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--wh-blue-dark);
	box-shadow: none;
	text-decoration: none;
}
body .find-part-form-container form.find-part-form .fields a.model-no-link::before {
	content: "?";
	width: 18px;
	height: 18px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	border: 1.5px solid currentColor;
	font-size: 11px;
	font-weight: 800;
	visibility: visible;
	position: static;
}
body .find-part-form-container form.find-part-form .fields a.model-no-link:hover { color: var(--wh-orange); }
/* Step numbers: orange with white text (completed steps still switch to the green tick) */
body .find-part-form-container .find-part-form > .fields:not(.d-none):not(.submit)::before {
	background: var(--wh-orange);
	color: #fff;
}
body .find-part-form-container .find-part-form > .fields:has(.selectize-input.has-items)::before,
body .find-part-form-container .find-part-form > .model_no_field:has(input:not(:placeholder-shown))::before {
	background: #1f7a3d;
	color: #fff;
}

/* ===================== Mega menus v2 (functions/wgh_mega.php) =====================
   One panel design for every category: appliance blocks + a help panel on the right.
   Panels span the site width under the bar and open on hover / keyboard focus. */
@media (min-width: 992px) {
	body nav.nav-container .menu-main-menu-container > ul.menu > li { position: static; }
	body nav.nav-container .wgh-mega {
		position: absolute;
		top: 100%;
		left: calc(var(--bs-gutter-x, 1.5rem) * .5);
		right: calc(var(--bs-gutter-x, 1.5rem) * .5);
		z-index: 60;
		display: grid;
		grid-template-columns: 1fr 280px;
		background: #fff;
		border: 1px solid var(--wh-border);
		border-top: 0;
		border-radius: 0 0 18px 18px;
		box-shadow: 0 34px 60px -30px rgba(11, 25, 73, 0.38), 0 12px 24px -16px rgba(11, 25, 73, 0.16);
		overflow: hidden;
		text-align: left;
		opacity: 0;
		visibility: hidden;
		transform: translateY(-4px);
		transition: opacity .16s ease, transform .16s ease, visibility 0s linear .16s;
	}
	body nav.nav-container li.wgh-has-mega:hover > .wgh-mega,
	body nav.nav-container li.wgh-has-mega:focus-within > .wgh-mega {
		opacity: 1;
		visibility: visible;
		transform: none;
		transition-delay: .06s, .06s, 0s;
	}

	/* Appliance blocks */
	.wgh-mega-groups { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; }
	.wgh-mega-group { padding: 28px 30px 30px; }
	.wgh-mega-group + .wgh-mega-group { border-left: 1px solid #edf1f7; }
	body nav.nav-container a.wgh-mega-head {
		display: flex;
		align-items: center;
		gap: 14px;
		padding: 0 0 18px;
		margin-bottom: 20px;
		border-bottom: 1px solid #edf1f7;
		background: none !important;
		box-shadow: none !important;
		color: var(--wh-navy) !important;
		text-transform: none;
		float: none;
	}
	.wgh-mega-img {
		flex: none;
		width: 56px;
		height: 56px;
		border-radius: 12px;
		background: #f6f8fc;
		border: 1px solid #e6ebf3;
		display: grid;
		place-items: center;
	}
	.wgh-mega-img img { width: 40px; height: 40px; object-fit: contain; mix-blend-mode: multiply; }
	.wgh-mega-title { display: block; font-size: 18px; line-height: 1.25; font-weight: 700; letter-spacing: -0.015em; }
	.wgh-mega-all {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		margin-top: 3px;
		font-size: 14px;
		font-weight: 600;
		color: var(--wh-orange);
	}
	.wgh-mega-all svg { transition: transform .15s; }
	body nav.nav-container a.wgh-mega-head:hover .wgh-mega-all svg { transform: translateX(3px); }
	body nav.nav-container a.wgh-mega-head:hover .wgh-mega-title { color: var(--wh-orange); }

	.wgh-mega-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
	.wgh-mega-label {
		display: block;
		margin-bottom: 10px;
		font-size: 11.5px;
		line-height: 1.4;
		font-weight: 700;
		letter-spacing: .09em;
		text-transform: uppercase;
		color: rgba(11, 25, 73, 0.5);
	}
	.wgh-mega-cols ul { list-style: none; margin: 0; padding: 0; }
	.wgh-mega-cols li { margin: 0; padding: 0; float: none; width: auto; }
	body nav.nav-container .wgh-mega-cols li a {
		display: block;
		padding: 6px 0;
		background: none !important;
		box-shadow: none !important;
		font-size: 15px;
		line-height: 1.4;
		font-weight: 400;
		text-transform: none;
		letter-spacing: 0;
		color: var(--wh-text-muted) !important;
		float: none;
		transition: color .15s, transform .15s;
	}
	body nav.nav-container .wgh-mega-cols li a:hover { color: var(--wh-orange) !important; transform: translateX(3px); }

	/* Help panel */
	.wgh-mega-help {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		padding: 28px 26px;
		background:
			radial-gradient(120% 80% at 100% 0%, rgba(47, 167, 226, 0.16), transparent 60%),
			#f1f5fb;
		border-left: 1px solid #e6ebf3;
	}
	.wgh-mega-help-icon {
		width: 44px;
		height: 44px;
		border-radius: 12px;
		display: grid;
		place-items: center;
		background: #fff;
		color: var(--wh-blue-dark);
		border: 1px solid #dfe7f3;
	}
	.wgh-mega-help-title { font-size: 17px; line-height: 1.3; font-weight: 700; letter-spacing: -0.015em; color: var(--wh-navy); }
	.wgh-mega-help p { margin: 0 0 6px; font-size: 14px; line-height: 1.5; color: var(--wh-text-muted); }
	body nav.nav-container .wgh-mega-help a.wgh-btn {
		float: none;
		width: 100%;
		padding: 11px 16px;
		font-size: 14.5px;
		text-transform: none;
		letter-spacing: 0;
		color: #fff !important;
		background: var(--wh-orange) !important;
		box-shadow: none !important;
	}
	body nav.nav-container .wgh-mega-help a.wgh-btn:hover { background: var(--wh-orange-dark) !important; }
	body nav.nav-container .wgh-mega-help a.wgh-mega-help-link {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		float: none;
		padding: 2px 0;
		background: none !important;
		box-shadow: none !important;
		font-size: 14px;
		font-weight: 600;
		text-transform: none;
		letter-spacing: 0;
		color: var(--wh-blue-dark) !important;
	}
	body nav.nav-container .wgh-mega-help a.wgh-mega-help-link:hover { color: var(--wh-orange) !important; }
}
/* Section subtext matches the hero paragraph (size, leading, colour, weight) */
body .wgh-section-sub {
	max-width: 720px;
	margin-top: 16px;
	font-size: 1.25rem;
	line-height: 1.6;
	font-weight: 400;
	color: var(--wh-text-muted);
}
/* Single-appliance panels: keep the two lists compact instead of half-width each */
@media (min-width: 992px) {
	.wgh-mega[data-groups="1"] .wgh-mega-cols { grid-template-columns: repeat(2, minmax(0, 260px)); gap: 0 48px; }
}
/* Help panel title on one line; paragraph lines even */
@media (min-width: 992px) {
	.wgh-mega-help-title { white-space: nowrap; }
	.wgh-mega-help p { text-wrap: balance; }
}

/* ===================== Header: search, basket, account ===================== */

/* Account: the shared WGH round control (docs/wordpress-account-menu.php), identical across sites */
.wgh-acct { position: relative; display: flex; align-items: center; flex: 0 0 auto; line-height: 1; }
.wgh-acct-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 0;
	border-radius: 9999px;
	background: linear-gradient(135deg, #2FA7E2, #0B1949);
	color: #fff;
	cursor: pointer;
	overflow: hidden;
	transition: filter .15s;
}
.wgh-acct-btn:hover { filter: brightness(1.1); }
.wgh-acct-btn svg { display: block; width: 100%; height: 100%; }
.wgh-acct-btn:focus-visible { outline: 2px solid #2FA7E2; outline-offset: 2px; }

@media (min-width: 992px) {
	body .header .buttons-container { gap: 24px; align-items: center; }

	/* Search: clearly visible field, magnifier inside, inset orange "Search" button */
	body .header .search-form-container { max-width: 560px; width: 100%; min-width: 0; }
	body .header .search-form-container .aws-container .aws-search-form { height: 52px; }
	body .header .search-form-container .aws-container .aws-wrapper { position: relative; }
	body .header .search-form-container .aws-container .aws-wrapper::before {
		content: "";
		position: absolute;
		left: 18px;
		top: 50%;
		width: 16px;
		height: 16px;
		transform: translateY(-50%);
		z-index: 2;
		pointer-events: none;
		visibility: visible;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b1949' stroke-opacity='.55' stroke-width='2' stroke-linecap='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill=%27%230B1949%27 stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E%3C/svg%3E") no-repeat center / contain;
	}
	body .header .search-form-container .aws-container input[type=search].aws-search-field {
		height: 52px !important;
		padding: 0 120px 0 46px !important;
		background: #f6f8fc !important;
		border: 1.5px solid #cfd8e6 !important;
		border-radius: 12px !important;
		box-shadow: none !important;
		font-size: 15.5px;
		color: var(--wh-navy);
		transition: border-color .15s, box-shadow .15s, background-color .15s;
	}
	body .header .search-form-container .aws-container input[type=search].aws-search-field::placeholder { color: rgba(11, 25, 73, 0.5); }
	body .header .search-form-container .aws-container input[type=search].aws-search-field:hover { border-color: #b7c4d8 !important; }
	body .header .search-form-container .aws-container input[type=search].aws-search-field:focus {
		background: #fff !important;
		border-color: var(--wh-blue) !important;
		box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important;
		outline: none;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn {
		top: 6px;
		right: 6px;
		bottom: 6px;
		width: auto;
		height: auto;
		padding: 0 16px;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		border-radius: 9px !important;
		cursor: pointer;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after {
		content: "Search";
		position: static;
		visibility: visible;
		color: #fff;
		font-size: 15px;
		font-weight: 600;
		background: none !important;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn svg { width: 18px; height: 18px; fill: #fff; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon { display: flex; margin: 0; height: auto; line-height: 1; }
	body .header .search-form-container .aws-container .aws-search-clear { right: 118px; }

	/* Basket: orange WGH button with icon, label and subtotal; navy count badge */
	body .header a#cartIcon.wgh-hdr-basket {
		display: inline-flex !important;
		align-items: center;
		gap: 10px;
		height: 50px;
		padding: 0 18px 0 12px !important;
		border-radius: 10px;
		background: var(--wh-orange);
		color: #fff;
		font-size: 15px !important;
		text-decoration: none;
		transition: background .15s, transform .15s;
	}
	body .header a#cartIcon.wgh-hdr-basket:hover { background: var(--wh-orange-dark); transform: translateY(-1px); }
	body .header a#cartIcon .btn.wgh-hdr-ic {
		width: auto !important;
		height: auto !important;
		background: none !important;
		border: 0 !important;
		box-shadow: none !important;
		color: #fff;
		display: inline-flex;
		align-items: center;
	}
	body .header a#cartIcon .wgh-hdr-txt { display: flex; flex-direction: column; line-height: 1.1; text-align: left; }
	body .header a#cartIcon .wgh-hdr-txt small { font-size: 11.5px; font-weight: 500; opacity: .9; color: #fff; }
	body .header a#cartIcon .wgh-hdr-txt b { font-size: 15px; font-weight: 700; color: #fff; }
	body .header a#cartIcon .wgh-hdr-txt b * { color: #fff !important; font-size: inherit; }
	body .header a#cartIcon b.title {
		position: absolute;
		top: -8px;
		right: -8px;
		left: auto;
		min-width: 22px;
		height: 22px;
		padding: 0 6px;
		border-radius: 11px;
		background: var(--wh-navy);
		border: 2px solid #fff;
		color: #fff;
		font-size: 12px;
		font-weight: 700;
		line-height: 18px;
		text-align: center;
	}
}
/* Phones/tablets keep the compact basket icon */
@media (max-width: 991px) {
	body .header a#cartIcon .wgh-hdr-txt { display: none; }
}
/* Completed step ticks: lighter green */
body .find-part-form-container .find-part-form > .fields:has(.selectize-input.has-items)::before,
body .find-part-form-container .find-part-form > .model_no_field:has(input:not(:placeholder-shown))::before {
	background: #2fb36a;
	color: #fff;
}
@media (min-width: 992px) {
	/* The theme/search plugin fixed these sizes and stacked the button contents */
	body .header .buttons-container { width: auto !important; max-width: none; flex: 0 0 auto; }
	body .header a#cartIcon.wgh-hdr-basket { width: auto !important; min-width: 0; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn {
		flex-direction: row !important;
		height: 40px !important;
		top: 6px !important;
		overflow: visible;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon { width: auto !important; }
}
@media (min-width: 992px) {
	/* Search button: the theme hides ::after (opacity 0) and lays a dark ::before over the button */
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::before { display: none !important; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after {
		opacity: 1 !important;
		width: auto !important;
		height: auto !important;
		line-height: 1.2;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn { line-height: 1.2; justify-content: center; }
	/* Magnifier above the field (it was drawn underneath it) */
	body .header .search-form-container .aws-container .aws-wrapper::before { z-index: 10; }
	body .header .search-form-container .aws-container input[type=search].aws-search-field { position: relative; z-index: 1; }

	/* Basket total is a span now (the theme absolutely positions every <b> in the basket) */
	body .header a#cartIcon .wgh-hdr-txt .wgh-basket-total { display: block; font-size: 15px; font-weight: 700; color: #fff; white-space: nowrap; }
	body .header a#cartIcon .wgh-hdr-txt .wgh-basket-total * { color: #fff !important; font-size: inherit; font-weight: inherit; }
}
@media (min-width: 992px) {
	/* Logo | search | basket + avatar always on one row; the search flexes to fill */
	body .header .header-contents-inner { flex-wrap: nowrap !important; align-items: center; gap: 24px; }
	body .header .header-contents-inner .search-form-container {
		flex: 1 1 auto;
		min-width: 0 !important;
		max-width: 560px !important;
		margin-left: auto;
		margin-right: auto;
	}
	/* Icon and label side by side in the search button (the icon was absolutely placed) */
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon {
		position: static !important;
		transform: none !important;
		left: auto !important;
		top: auto !important;
	}
	/* Category bar labels never wrap */
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a { white-space: nowrap; }
}
@media (min-width: 992px) and (max-width: 1199px) {
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a,
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:first-child > a,
	body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:last-child > a {
		font-size: 14px;
		padding: 14px 6px;
	}
	body .header a#cartIcon .wgh-hdr-txt small { display: none; }
}

/* Step 3 tick: needs the same weight as the numbered-step rule or it never wins */
body .find-part-form-container .find-part-form > .fields.model_no_field:not(.d-none):not(.submit):has(input:not(:placeholder-shown))::before {
	content: "\2713";
	background: #2fb36a;
	color: #fff;
}

/* Model results dropdown: same floating panel as the appliance/brand dropdowns,
   aligned to the field (not under the step number) */
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions {
	top: calc(54px + 8px);
	left: 44px;
	right: 0;
	width: auto;
	padding: 6px;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	box-shadow: 0 24px 48px -20px rgba(11, 25, 73, 0.30), 0 8px 18px -10px rgba(11, 25, 73, 0.14);
	max-height: 280px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #c9d3e3 transparent;
}
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions ul li,
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .dropdown-item-row {
	padding: 0;
	border-radius: 9px;
	line-height: 1.35;
}
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions ul li a,
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .dropdown-item-row a {
	display: block;
	padding: 10px 14px;
	border-radius: 9px;
	font-size: 15px;
	line-height: 1.35;
	color: var(--wh-navy);
}
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions ul li a:hover,
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .dropdown-item-row a:hover { background: #eef4fd; }
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .no-models {
	padding: 12px 14px;
	font-size: 15px;
	line-height: 1.5;
	color: var(--wh-text-muted);
}
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .no-models a {
	display: inline-flex;
	float: none;
	width: auto;
	margin-top: 8px;
	padding: 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	color: var(--wh-orange);
	box-shadow: none !important;
	text-decoration: none;
}
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .no-models a::after { content: " \2192"; white-space: pre; }
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .no-models a:hover { color: var(--wh-orange-dark); }
@media (min-width: 992px) {
	/* The theme's button sweep slides ::after left by 100%, putting "Search" over the icon */
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after,
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn:hover::after {
		transform: none !important;
		left: auto !important;
		top: auto !important;
		z-index: auto !important;
		display: inline !important;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn { overflow: visible !important; box-shadow: none !important; }
	/* Logo keeps its size; top-strip links never wrap */
	body .header a#logo-main { flex: 0 0 auto; }
	body .header .top-nav ul.menu li a { white-space: nowrap; }
}
body .header a#cartIcon, body .header a#cartIcon * { text-decoration: none !important; box-shadow: none; }
body .header a#cartIcon.wgh-hdr-basket { box-shadow: none !important; }
/* Category bar hover / open: clearly lighter item + 4px orange bar along the bottom
   (drawn as a background so the theme's box-shadow rules can't remove it) */
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a:hover,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:hover > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li:focus-within > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.current-product_cat-ancestor > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.current-product_cat-ancestor > a:not(:hover) {
	color: #fff;
	background:
		linear-gradient(var(--wh-orange), var(--wh-orange)) left bottom / 100% 4px no-repeat,
		rgba(255, 255, 255, 0.16) !important;
}
/* Chevron flips while its panel is open */
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a::after { display: inline-block; transition: transform .2s; }
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.wgh-has-mega:hover > a::after { transform: rotate(180deg); }
@media (min-width: 992px) {
	/* Basket: same height as the search field so top and bottom edges line up;
	   badge sits mostly on the button instead of poking above it */
	body .header a#cartIcon.wgh-hdr-basket { height: 52px; }
	body .header a#cartIcon b.title { top: -5px; right: -5px; }
}
/* Nav hover: instant, no animated sweep/slide - just the lighter item + orange bar */
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a,
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li > a::after {
	transition: none !important;
}
body nav.container-fluid.nav-container .menu-main-menu-container > ul.menu > li.wgh-has-mega:hover > a::after { transform: none; }
@media (min-width: 992px) {
	body nav.nav-container .wgh-mega { transform: none !important; transition: opacity .12s ease, visibility 0s linear .12s; }
	body nav.nav-container li.wgh-has-mega:hover > .wgh-mega,
	body nav.nav-container li.wgh-has-mega:focus-within > .wgh-mega { transition-delay: 0s; }
}
@media (min-width: 992px) {
	/* Help column = exactly one menu item wide (5 equal items), so its edge lines up
	   with the divider before "Microwaves" */
	body nav.nav-container .wgh-mega { grid-template-columns: minmax(0, 1fr) 20%; box-sizing: border-box; border-left: 0; border-right: 0; }
	body nav.nav-container .wgh-mega .wgh-mega-help { box-sizing: border-box; min-width: 0; }
}
@media (min-width: 992px) {
	body nav.nav-container .wgh-mega .wgh-mega-help { padding: 26px 20px; }
	body nav.nav-container .wgh-mega-help a.wgh-btn { padding: 11px 12px; font-size: 14px; white-space: nowrap; gap: 7px; }
}
@media (min-width: 992px) {
	/* Basket same height as the avatar (46px) */
	body .header a#cartIcon.wgh-hdr-basket { height: 46px; padding: 0 16px 0 12px !important; gap: 9px; }
	body .header a#cartIcon .wgh-hdr-txt small { font-size: 13px; }
	body .header a#cartIcon .wgh-hdr-txt .wgh-basket-total { font-size: 14.5px; }
}

/* Scrolled ("fixed") header stays identical to the top-of-page header: the theme hid the
   top strip (-41px), shrank the logo and added padding, which left a white gap under the nav
   (also visible after jumping to #shop-by-appliance). */
@media (min-width: 992px) {
	body .header.fixed { padding-top: 0; height: 211px; box-shadow: 0 10px 28px -18px rgba(11, 25, 73, 0.35); }
	body .header.fixed .top-nav { margin-top: 0; }
	body .header.fixed a#logo-main { height: 56px; }
	body .header.fixed .mega-menu { top: 100%; }
}

/* Header v3: +8px above the logo row (strip margin 28 -> 36), so the header is 219px.
   Once scrolled, the 40px top strip slides away again and the header is 179px. */
@media (min-width: 992px) {
	body .header .top-nav { margin-bottom: 36px; transition: margin-top .2s ease; }
	body .header { height: 219px; transition: height .2s ease; }
	body { padding-top: 219px; }

	body .header.fixed { height: 179px; }
	body .header.fixed .top-nav { margin-top: -40px; }
	/* In-page jumps happen with the header scrolled, so offset by the scrolled height */
	html { scroll-padding-top: 179px; }
}
@media (min-width: 992px) {
	/* nav ends exactly on the 219px header edge */
	body nav.container-fluid.nav-container { margin-top: 38px !important; }
}

/* Mega menu contents v2 (option F, parts first): parts as mini cards, brands as logo tiles */
@media (min-width: 992px) {
	.wgh-mega-group .wgh-mega-label { margin-bottom: 12px; }
	.wgh-mega-parts {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
		margin-bottom: 24px;
	}
	.wgh-mega[data-groups="1"] .wgh-mega-parts { grid-template-columns: repeat(3, 1fr); }
	body nav.nav-container .wgh-mega-parts a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 10px;
		padding: 11px 14px;
		background: #f6f8fc !important;
		border: 1px solid #e6ebf3;
		border-radius: 10px;
		box-shadow: none !important;
		font-size: 14.5px;
		line-height: 1.3;
		font-weight: 600;
		letter-spacing: 0;
		text-transform: none;
		color: var(--wh-navy) !important;
		float: none;
		transition: background .15s, border-color .15s;
	}
	body nav.nav-container .wgh-mega-parts a span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	body nav.nav-container .wgh-mega-parts a svg { color: var(--wh-orange); transition: transform .15s; }
	body nav.nav-container .wgh-mega-parts a:hover { background: #fff !important; border-color: var(--wh-orange); }
	body nav.nav-container .wgh-mega-parts a:hover svg { transform: translateX(3px); }

	.wgh-mega-brands { display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px; }
	body nav.nav-container .wgh-mega-brands a {
		height: 48px;
		display: grid;
		place-items: center;
		padding: 8px 10px;
		background: #fff !important;
		border: 1px solid var(--wh-border);
		border-radius: 10px;
		box-shadow: none !important;
		float: none;
		transition: border-color .15s, box-shadow .15s;
	}
	body nav.nav-container .wgh-mega-brands a:hover { border-color: var(--wh-blue); box-shadow: 0 6px 14px -8px rgba(11, 25, 73, 0.3) !important; }
	body nav.nav-container .wgh-mega-brands img { max-height: 24px; max-width: 100%; width: auto; height: auto; object-fit: contain; }
	body nav.nav-container .wgh-mega-brands a span { font-size: 13px; font-weight: 700; color: var(--wh-navy); text-transform: none; letter-spacing: 0; text-align: center; line-height: 1.2; }
	/* single-appliance panels: logos at a fixed tile width rather than stretched */
	.wgh-mega[data-groups="1"] .wgh-mega-brands { grid-template-columns: repeat(5, minmax(0, 150px)); }
}

/* Part finder before the dropdown script has loaded: LiteSpeed delays selectize for a few
   seconds, so the plain <select>s showed first. Style them exactly like the finished fields
   so nothing visibly changes when selectize takes over (it hides these). */
body .find-part-form-container form .fields select:not(.selectized) {
	display: block;
	width: 100%;
	height: 54px;
	margin: 0;
	padding: 0 46px 0 16px;
	border: 1px solid var(--wh-border);
	border-radius: 12px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230b1949' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E%3C/svg%3E") no-repeat right 18px center;
	-webkit-appearance: none;
	appearance: none;
	box-shadow: none;
	font-family: inherit;
	font-size: 15.5px;
	color: rgba(11, 25, 73, 0.45);
	cursor: pointer;
}
body .find-part-form-container form .fields select:not(.selectized):focus {
	outline: none;
	border-color: var(--wh-blue);
	box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15);
}
@media (min-width: 992px) {
	/* Brand logos always fill the row edge to edge, however many there are */
	.wgh-mega-brands,
	.wgh-mega[data-groups="1"] .wgh-mega-brands { display: flex; gap: 8px; }
	body nav.nav-container .wgh-mega-brands a { flex: 1 1 0; min-width: 0; }
}
@media (min-width: 992px) {
	/* Only 4 parts (e.g. Microwaves): an even 2x2 instead of a gappy 3-column grid */
	.wgh-mega[data-groups="1"] .wgh-mega-parts:has(> a:nth-child(4):last-child) { grid-template-columns: 1fr 1fr; }
}

/* ===================== Brands section ===================== */
body .brands-listing { padding-top: 80px !important; padding-bottom: 80px !important; }
body .brands-listing .title-row { margin-bottom: 40px; }
.wgh-brand-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 16px;
}
.wgh-brand-col { min-width: 0; }
.wgh-brand-tile {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05);
	text-decoration: none !important;
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
.wgh-brand-tile:hover {
	transform: translateY(-3px);
	border-color: var(--wh-blue);
	box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24);
}
.wgh-brand-logo {
	height: 104px;
	display: grid;
	place-items: center;
	padding: 18px 22px;
}
.wgh-brand-logo img { max-width: 100%; max-height: 52px; width: auto; height: auto; object-fit: contain; }
.wgh-brand-logo b { font-size: 18px; color: var(--wh-navy); }
.wgh-brand-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 10px 12px;
	border-top: 1px solid #eef2f8;
	background: #f6f8fc;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--wh-text-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: background .18s, color .18s;
}
.wgh-brand-cta svg { flex: none; color: var(--wh-orange); transition: transform .18s; }
.wgh-brand-tile:hover .wgh-brand-cta { background: #fff4ec; color: var(--wh-orange); }
.wgh-brand-tile:hover .wgh-brand-cta svg { transform: translateX(3px); }
.wgh-brands-more { display: flex; justify-content: center; margin-top: 40px; float: left; width: 100%; }
.wgh-brands-more .wgh-btn { padding: 14px 26px; font-size: 16px; }

@media (max-width: 1199px) { .wgh-brand-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 767px)  { .wgh-brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .wgh-brand-logo { height: 84px; } }

/* ===================== About section ===================== */
/* Full-width white band (the section is a .container, so paint the band around it) */
body .about-us-section {
	background: #fff;
	box-shadow: 0 0 0 100vmax #fff;
	clip-path: inset(0 -100vmax);
	padding-top: 96px !important;
	padding-bottom: 96px !important;
}
/* Title and text match the hero exactly */
body .about-us-section h3 {
	font-size: clamp(2.2rem, 4.4vw, 3.51rem) !important;
	line-height: 1.06 !important;
	font-weight: 700 !important;
	letter-spacing: -0.036em !important;
	color: var(--wh-navy);
	margin: 0 !important;
	text-wrap: balance;
}
body .about-us-section .title-row-circular { margin-bottom: 34px !important; }
body .about-us-section .content,
body .about-us-section .content p {
	font-size: 1.25rem !important;
	line-height: 1.6 !important;
	font-weight: 400;
	color: var(--wh-text-muted);
	text-wrap: pretty;
}
/* The bands above are floated; without clearing, this section's box started at the top of
   the page and its white band painted over the brands section. */
body .about-us-section { clear: both; }
/* Hero: wider part finder (5 of 12 columns instead of 4); the empty spacer column goes */
@media (min-width: 1200px) {
	body .hero-home-page .row > .col-lg-1.hidden-992 { display: none; }
	body .hero-home-page .row > .col-lg-5.col-xl-4 { flex: 0 0 41.6667%; max-width: 41.6667%; width: 41.6667%; }
}

/* Hero must not clip the part-finder dropdowns (model results ran under the next band).
   Keep the decorative layers inside the hero with clip-path instead of overflow. */
body .hero-home-page { overflow: visible; position: relative; z-index: 5; }
body .hero-home-page::after { inset: 0; height: auto; clip-path: inset(0); }
body .hero-home-page::before { clip-path: inset(0); }
/* Model results heading ("Select your model below:"): small grey label, padded like the rows */
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions .dropdown-item-row.header-title {
	padding: 10px 14px 6px !important;
	font-size: 11.5px !important;
	line-height: 1.4 !important;
	font-weight: 700;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: rgba(11, 25, 73, 0.5);
	border-radius: 0;
	background: none !important;
}

/* ===================== Advice Centre strip ===================== */
body .wgh-advice-band {
	clear: both;
	padding: 80px 0 !important;
	margin: 0 !important;
	background-color: #eaf1fb;
	background-image:
		linear-gradient(90deg, rgba(11, 25, 73, 0.045) 1px, transparent 1px),
		linear-gradient(rgba(11, 25, 73, 0.045) 1px, transparent 1px),
		radial-gradient(65% 150% at 20% 45%, rgba(47, 167, 226, 0.14), transparent 72%);
	background-size: 84px 84px, 84px 84px, 100% 100%;
	border-top: 1px solid var(--wh-border);
	border-bottom: 1px solid var(--wh-border);
}
body .wgh-advice-band .title-row { margin-bottom: 40px; text-align: center; }
body .wgh-advice-band .wgh-eyebrow { margin-bottom: 14px; }
.wgh-advice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.wgh-advice-card { min-width: 0; }
.wgh-advice-link {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05);
	text-decoration: none !important;
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
.wgh-advice-link:hover { transform: translateY(-3px); border-color: var(--wh-blue); box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24); }
.wgh-advice-pic { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #edf2fa; }
.wgh-advice-pic img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.wgh-advice-link:hover .wgh-advice-pic img { transform: scale(1.04); }
.wgh-advice-tag {
	position: absolute;
	left: 14px;
	top: 14px;
	padding: 5px 11px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.95);
	color: var(--wh-navy);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .02em;
	box-shadow: 0 4px 12px -4px rgba(11, 25, 73, 0.25);
}
.wgh-advice-body { display: flex; flex-direction: column; flex: 1; padding: 20px 22px 22px; }
.wgh-advice-body h4 { margin: 0 0 8px; font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: -0.015em; color: var(--wh-navy); }
.wgh-advice-text {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-bottom: 18px;
	font-size: 15.5px;
	line-height: 1.55;
	color: var(--wh-text-muted);
}
.wgh-advice-more { display: inline-flex; align-items: center; gap: 7px; margin-top: auto; font-size: 15px; font-weight: 600; color: var(--wh-orange); }
.wgh-advice-more svg { transition: transform .15s; }
.wgh-advice-link:hover .wgh-advice-more svg { transform: translateX(3px); }
.wgh-section-more { display: flex; justify-content: center; margin-top: 40px; }
.wgh-section-more .wgh-btn { padding: 14px 26px; font-size: 16px; }
@media (max-width: 991px) { .wgh-advice-grid { grid-template-columns: 1fr; gap: 18px; } }
/* Advice subtitle on one line at desktop widths */
@media (min-width: 992px) {
	body .wgh-advice-band .wgh-section-sub { max-width: none; white-space: nowrap; }
}

/* Advice card summaries: normal weight (the theme makes link text semi-bold) */
.wgh-advice-text { font-weight: 400 !important; }

/* ===================== Help strip above the footer ===================== */
body .wgh-help-strip { clear: both; background: #fff; padding: 72px 0; margin: 0; }
.wgh-help-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.wgh-help-card {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	padding: 26px 26px 24px;
	background: #f6f8fc;
	border: 1px solid #e6ebf3;
	border-radius: 14px;
	text-decoration: none !important;
	transition: transform .18s, box-shadow .18s, border-color .18s, background .18s;
}
.wgh-help-card:hover { background: #fff; transform: translateY(-3px); border-color: var(--wh-blue); box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24); }
.wgh-help-ic { flex: none; width: 56px; height: 56px; border-radius: 14px; display: grid; place-items: center; }
.wgh-help-ic.is-b { background: #d9eefb; color: var(--wh-blue-dark); }
.wgh-help-ic.is-n { background: #dfe3f4; color: var(--wh-navy); }
.wgh-help-ic.is-o { background: #ffe0cc; color: var(--wh-orange); }
.wgh-help-body { display: flex; flex-direction: column; min-width: 0; }
.wgh-help-title { font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: -0.015em; color: var(--wh-navy); white-space: nowrap; }
.wgh-help-text { margin: 6px 0 14px; font-size: 15.5px; line-height: 1.55; font-weight: 400; color: var(--wh-text-muted); }
.wgh-help-more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; font-size: 15px; font-weight: 600; color: var(--wh-orange); }
.wgh-help-more svg { transition: transform .15s; }
.wgh-help-card:hover .wgh-help-more svg { transform: translateX(3px); }
@media (max-width: 991px) {
	.wgh-help-grid { grid-template-columns: 1fr; gap: 14px; }
	.wgh-help-title { white-space: normal; }
}
/* Help card text: balanced lines so all three wrap the same way */
.wgh-help-text { text-wrap: balance; }

@media (min-width: 992px) {
	/* Single-appliance panels: 8 parts as 4 x 2 (4 parts = one tidy row) */
	.wgh-mega[data-groups="1"] .wgh-mega-parts,
	.wgh-mega[data-groups="1"] .wgh-mega-parts:has(> a:nth-child(4):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* ===================== Standard pages (page.php): About, Returns, Terms... ===================== */
body.page-template-default .hero-breadcrumbs,
body.page-template-default .hero.hero-plain { display: none; }

.wgh-page-hero {
	position: relative;
	isolation: isolate;
	clear: both;
	padding: 64px 0 56px;
	background: linear-gradient(180deg, #eaf3fd 0%, #f4f9fe 60%, #ffffff 100%);
	border-bottom: 1px solid var(--wh-border);
}
.wgh-page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	visibility: visible;
	background-image:
		linear-gradient(to right, rgba(11, 25, 73, 0.07) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(11, 25, 73, 0.07) 1px, transparent 1px);
	background-size: 68px 68px;
	-webkit-mask-image: radial-gradient(ellipse 95% 90% at 50% 0%, #000 35%, transparent 90%);
	mask-image: radial-gradient(ellipse 95% 90% at 50% 0%, #000 35%, transparent 90%);
}
.wgh-crumbs { margin-bottom: 26px; font-size: 14px; color: rgba(11, 25, 73, 0.55); }
.wgh-crumbs a { color: var(--wh-blue-dark); }
.wgh-crumbs a:hover { color: var(--wh-orange); }
.wgh-page-hero .wgh-eyebrow { margin-bottom: 16px; }
body .wgh-page-hero h1 {
	margin: 0;
	max-width: 900px;
	font-size: clamp(2.2rem, 4.4vw, 3.51rem);
	line-height: 1.06;
	font-weight: 700;
	letter-spacing: -0.036em;
	color: var(--wh-navy);
	text-wrap: balance;
}
.wgh-page-intro {
	margin: 22px 0 0;
	max-width: 760px;
	font-size: 1.25rem;
	line-height: 1.6;
	color: var(--wh-text-muted);
	text-wrap: pretty;
}
.wgh-page-updated {
	display: inline-flex;
	margin-top: 22px;
	padding: 6px 12px;
	border-radius: 999px;
	background: #fff;
	border: 1px solid var(--wh-border);
	font-size: 13px;
	font-weight: 600;
	color: var(--wh-text-muted);
}

.wgh-page-body { clear: both; padding: 64px 0 88px; background: #fff; }
.wgh-page-grid { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 64px; align-items: start; }

/* Content: the custom-content block brings its own container/row/col - flatten them */
.wgh-prose .flexible-row-block,
.wgh-prose .flexible-row-block > .container,
.wgh-prose .flexible-row-block .row,
.wgh-prose .flexible-row-block .row > [class*="col-"] { width: auto; max-width: none; margin: 0; padding: 0; float: none; }
.wgh-prose .flexible-row-block .to-animate { opacity: 1 !important; transform: none !important; }
.wgh-prose article.standard-post-content { float: none; width: auto; }
.wgh-prose { max-width: 760px; min-width: 0; color: var(--wh-text-muted); font-size: 17.5px; line-height: 1.75; }
.wgh-prose p { margin: 0 0 1.15em; font-size: inherit; line-height: inherit; color: inherit; }
.wgh-prose strong, .wgh-prose b { color: var(--wh-navy); font-weight: 700; }
.wgh-prose h2, .wgh-prose h3, .wgh-prose h4 { color: var(--wh-navy); scroll-margin-top: 200px; }
.wgh-prose h2 { margin: 2em 0 .6em; font-size: 1.75rem; line-height: 1.2; letter-spacing: -0.025em; }
.wgh-prose h3 { margin: 1.7em 0 .5em; font-size: 1.3rem; line-height: 1.3; letter-spacing: -0.015em; }
.wgh-prose h4 { margin: 1.5em 0 .4em; font-size: 1.1rem; }
.wgh-prose a { color: var(--wh-orange); font-weight: 600; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; box-shadow: none !important; }
.wgh-prose a:hover { color: var(--wh-orange-dark); }
.wgh-prose ul, .wgh-prose ol { margin: 0 0 1.3em; padding-left: 1.4em; }
.wgh-prose ul { list-style: none; padding-left: 0; }
.wgh-prose ul li { position: relative; padding-left: 26px; margin: 0 0 .5em; }
.wgh-prose ul li::before { content: ""; position: absolute; left: 6px; top: .72em; width: 7px; height: 7px; border-radius: 50%; background: var(--wh-blue); visibility: visible; }
.wgh-prose ol li { margin: 0 0 .5em; padding-left: 4px; }
.wgh-prose ol li::marker { color: var(--wh-blue-dark); font-weight: 700; }
.wgh-prose table { width: 100%; margin: 0 0 1.5em; border-collapse: collapse; font-size: .92em; }
.wgh-prose th, .wgh-prose td { padding: 10px 12px; border-bottom: 1px solid var(--wh-border); text-align: left; vertical-align: top; }
.wgh-prose th { color: var(--wh-navy); background: #f6f8fc; }
.wgh-prose hr { border: 0; border-top: 1px solid var(--wh-border); margin: 2em 0; }

/* Call-outs (were heavy navy boxes) */
body .wgh-prose blockquote {
	position: relative;
	margin: 2em 0;
	padding: 26px 30px 26px 76px;
	background: #eef4fd;
	border: 0;
	border-left: 4px solid var(--wh-blue);
	border-radius: 0 14px 14px 0;
	color: var(--wh-navy);
	font-size: 1.15em;
	line-height: 1.6;
	font-weight: 500;
	box-shadow: none;
}
body .wgh-prose blockquote::before {
	content: "";
	position: absolute;
	left: 26px;
	top: 28px;
	width: 32px;
	height: 32px;
	visibility: visible;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232fa7e2'%3E%3Cpath d='M10 7H6a3 3 0 0 0-3 3v4h4l-2 4h3l2-4zm11 0h-4a3 3 0 0 0-3 3v4h4l-2 4h3l2-4z' opacity='.85'/%3E%3C/svg%3E") no-repeat center / contain;
}
body .wgh-prose blockquote p { margin: 0; color: inherit; font-size: inherit; line-height: inherit; }

/* Sidebar */
.wgh-page-aside { min-width: 0; }
.wgh-aside-sticky { position: sticky; top: 200px; display: flex; flex-direction: column; gap: 18px; }
.wgh-aside-card { padding: 24px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 14px; }
.wgh-aside-label { display: block; margin-bottom: 12px; font-size: 11.5px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: rgba(11, 25, 73, 0.5); }
.wgh-aside-help { display: flex; flex-direction: column; align-items: stretch; gap: 10px; background: radial-gradient(120% 80% at 100% 0%, rgba(47, 167, 226, 0.14), transparent 60%), #f1f5fb; }
.wgh-aside-ic { width: 46px; height: 46px; border-radius: 12px; display: grid; place-items: center; background: #ffe0cc; color: var(--wh-orange); }
.wgh-aside-title { margin-top: 4px; font-size: 19px; font-weight: 700; letter-spacing: -0.015em; color: var(--wh-navy); }
.wgh-aside-help p { margin: 0 0 6px; font-size: 15px; line-height: 1.55; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-aside-help .wgh-btn { width: 100%; padding: 12px 16px; font-size: 15px; }
.wgh-aside-mail { margin-top: 4px; text-align: center; font-size: 14px; font-weight: 600; color: var(--wh-blue-dark); }
.wgh-aside-mail:hover { color: var(--wh-orange); }
.wgh-aside-links ul, .wgh-toc ol { list-style: none; margin: 0; padding: 0; }
.wgh-aside-links li + li { border-top: 1px solid #e6ebf3; }
.wgh-aside-links a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 0;
	font-size: 15px;
	font-weight: 500;
	color: var(--wh-navy);
}
.wgh-aside-links a svg { color: #b9c4d6; transition: transform .15s, color .15s; }
.wgh-aside-links a:hover { color: var(--wh-orange); }
.wgh-aside-links a:hover svg { color: var(--wh-orange); transform: translateX(3px); }
.wgh-aside-links a[aria-current="page"] { color: var(--wh-orange); font-weight: 700; }
.wgh-aside-links a[aria-current="page"] svg { color: var(--wh-orange); }
.wgh-toc ol { max-height: 46vh; overflow-y: auto; scrollbar-width: thin; }
.wgh-toc li a { display: block; padding: 6px 0 6px 12px; border-left: 2px solid #dfe6f1; font-size: 14.5px; line-height: 1.4; color: var(--wh-text-muted); }
.wgh-toc li.is-sub a { padding-left: 24px; font-size: 14px; }
.wgh-toc li a:hover { color: var(--wh-orange); border-left-color: var(--wh-orange); }

@media (max-width: 991px) {
	.wgh-page-grid { grid-template-columns: 1fr; gap: 40px; }
	.wgh-aside-sticky { position: static; }
	.wgh-page-hero { padding: 44px 0 40px; }
	.wgh-page-body { padding: 44px 0 64px; }
	body .wgh-prose blockquote { padding: 22px; }
	body .wgh-prose blockquote::before { display: none; }
}

/* The block's .row is flex; with width:auto its column grew to its longest line. Force 100%. */
.wgh-prose .flexible-row-block .row { display: block; }
.wgh-prose .flexible-row-block .row > [class*="col-"],
.wgh-prose article.standard-post-content { width: 100% !important; max-width: 100%; flex: none; }

/* Legal pages: numbered sections whose items start with a bold title - style that title as a heading */
.wgh-prose .standard-post-content > ol { padding-left: 1.6em; }
.wgh-prose .standard-post-content > ol > li { margin-bottom: 1.2em; }
.wgh-prose .standard-post-content > ol > li::marker { font-size: 1.3rem; color: var(--wh-blue-dark); }
.wgh-prose .standard-post-content > ol > li > strong:first-child { display: inline-block; margin: 1.6em 0 .4em; font-size: 1.3rem; line-height: 1.3; letter-spacing: -0.015em; color: var(--wh-navy); scroll-margin-top: 200px; }

/* Page hero v2: text left, image right; intro lines balanced */
.wgh-page-hero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: 56px; align-items: center; }
.wgh-page-hero-copy { min-width: 0; }
.wgh-page-intro { text-wrap: balance; }
.wgh-page-hero-media {
	position: relative;
	aspect-ratio: 4 / 3;
	border-radius: 18px 18px 72px 18px;
	overflow: hidden;
	box-shadow: 0 30px 60px -28px rgba(11, 25, 73, 0.38), 0 10px 24px -14px rgba(11, 25, 73, 0.16);
	background: #edf2fa;
}
.wgh-page-hero-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 991px) {
	.wgh-page-hero-grid { grid-template-columns: 1fr; gap: 32px; }
	.wgh-page-hero-media { aspect-ratio: 16 / 9; }
}

/* Sidebar link list: the theme adds square bullets + indent to every li */
.wgh-aside-card ul, .wgh-aside-card ol { margin: 0; padding: 0; }
.wgh-aside-card li { margin: 0; padding: 0; list-style: none; }
.wgh-aside-card li::before { display: none !important; content: none !important; }
.wgh-aside-links a { padding: 11px 0; }

/* Page hero image: wider and shallower */
@media (min-width: 992px) { .wgh-page-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 56px; }
.wgh-page-hero-media { aspect-ratio: 2 / 1; border-radius: 18px 18px 64px 18px; } }

/* ===================== Contact page ===================== */
body.page-template-page-templates-contact-page .hero-breadcrumbs,
body.page-template-page-templates-contact-page .hero.hero-plain { display: none; }
.wgh-contact-grid { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 48px; align-items: start; }

.wgh-contact-ways { display: flex; flex-direction: column; gap: 14px; }
.wgh-contact-way {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 20px 22px;
	background: #f6f8fc;
	border: 1px solid #e6ebf3;
	border-radius: 14px;
	text-decoration: none !important;
	transition: transform .18s, box-shadow .18s, border-color .18s, background .18s;
}
.wgh-contact-way:hover { background: #fff; transform: translateY(-2px); border-color: var(--wh-blue); box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24); }
.wgh-contact-way .wgh-help-ic { width: 50px; height: 50px; border-radius: 13px; }
.wgh-contact-way-body { display: flex; flex-direction: column; min-width: 0; }
.wgh-contact-way-title { font-size: 17px; line-height: 1.3; font-weight: 700; letter-spacing: -0.01em; color: var(--wh-navy); }
.wgh-contact-way-text { margin: 4px 0 8px; font-size: 15px; line-height: 1.5; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-contact-way-more { display: inline-flex; align-items: center; gap: 6px; font-size: 14.5px; font-weight: 600; color: var(--wh-orange); word-break: break-all; }
.wgh-contact-way:hover .wgh-contact-way-more svg { transform: translateX(3px); }
.wgh-contact-way-more svg { flex: none; transition: transform .15s; }

.wgh-contact-card {
	padding: 34px 36px 36px;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	box-shadow: 0 30px 60px -32px rgba(11, 25, 73, 0.3), 0 10px 24px -16px rgba(11, 25, 73, 0.12);
}
.wgh-contact-card-head { display: flex; align-items: center; gap: 16px; padding-bottom: 22px; margin-bottom: 24px; border-bottom: 1px solid #edf1f7; }
.wgh-contact-card-head h2 { margin: 0; font-size: 24px; line-height: 1.2; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-contact-card-head p { margin: 4px 0 0; font-size: 15px; color: var(--wh-text-muted); }

/* Contact Form 7 fields in the WGH field style (same as the part finder) */
:is(.wgh-contact-form, .wgh-prose .form-block) form.wpcf7-form { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 18px; }
:is(.wgh-contact-form, .wgh-prose .form-block) .fields { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.full, :is(.wgh-contact-form, .wgh-prose .form-block) .wpcf7-response-output { grid-column: 1 / -1; }
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.d-none { display: none !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) label { display: block; margin: 0; }
:is(.wgh-contact-form, .wgh-prose .form-block) label > b { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 600; color: var(--wh-navy); }
:is(.wgh-contact-form, .wgh-prose .form-block) label > b i { font-style: normal; color: var(--wh-orange); }
:is(.wgh-contact-form, .wgh-prose .form-block) .wpcf7-form-control-wrap { display: block; }
:is(.wgh-contact-form, .wgh-prose .form-block) input[type="text"],
:is(.wgh-contact-form, .wgh-prose .form-block) input[type="email"],
:is(.wgh-contact-form, .wgh-prose .form-block) input[type="tel"],
:is(.wgh-contact-form, .wgh-prose .form-block) select,
:is(.wgh-contact-form, .wgh-prose .form-block) textarea {
	display: block;
	width: 100% !important;
	height: 52px;
	margin: 0;
	padding: 0 16px !important;
	background: #fff !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	font-family: inherit;
	font-size: 15.5px !important;
	color: var(--wh-navy) !important;
	transition: border-color .15s, box-shadow .15s;
}
:is(.wgh-contact-form, .wgh-prose .form-block) textarea { height: 150px; padding: 14px 16px !important; line-height: 1.5; resize: vertical; }
:is(.wgh-contact-form, .wgh-prose .form-block) select {
	-webkit-appearance: none;
	appearance: none;
	padding-right: 44px !important;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230b1949' stroke-opacity='.55' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3E%3C/svg%3E%3C/svg%3E") no-repeat right 16px center !important;
	cursor: pointer;
}
:is(.wgh-contact-form, .wgh-prose .form-block) input:hover, :is(.wgh-contact-form, .wgh-prose .form-block) select:hover, :is(.wgh-contact-form, .wgh-prose .form-block) textarea:hover { border-color: #c3cddd !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) input:focus, :is(.wgh-contact-form, .wgh-prose .form-block) select:focus, :is(.wgh-contact-form, .wgh-prose .form-block) textarea:focus {
	outline: none;
	border-color: var(--wh-blue) !important;
	box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important;
}
/* Consent checkbox */
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr label { display: flex; align-items: center; gap: 12px; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item { margin: 0; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item-label { display: none; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr input[type="checkbox"] {
	-webkit-appearance: none;
	appearance: none;
	flex: none;
	width: 22px;
	height: 22px;
	margin: 0;
	border: 1.5px solid #b9c4d6;
	border-radius: 6px;
	background: #fff center / 14px no-repeat;
	cursor: pointer;
	transition: background-color .15s, border-color .15s;
}
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr input[type="checkbox"]:checked {
	background-color: var(--wh-orange);
	border-color: var(--wh-orange);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E%3C/svg%3E");
}
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr p { margin: 0; font-size: 15px; color: var(--wh-text-muted); }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr a { color: var(--wh-orange); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
/* Submit */
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.submit .btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: auto;
	padding: 14px 26px !important;
	border: 0;
	border-radius: 8px !important;
	background: var(--wh-orange) !important;
	color: #fff !important;
	font-size: 16px;
	font-weight: 600;
	box-shadow: none;
	cursor: pointer;
	transition: background .15s, transform .15s;
}
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.submit .btn:hover { background: var(--wh-orange-dark) !important; transform: translateY(-1px); }
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.submit .btn::before,
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.submit .btn::after { display: none !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .wpcf7-spinner { margin: 0 0 0 12px; }
:is(.wgh-contact-form, .wgh-prose .form-block) .wpcf7-not-valid-tip { margin-top: 6px; font-size: 13.5px; color: #c0392b; }
:is(.wgh-contact-form, .wgh-prose .form-block) .wpcf7-response-output { margin: 4px 0 0 !important; padding: 12px 16px !important; border-radius: 12px; font-size: 15px; }

@media (max-width: 991px) {
	.wgh-contact-grid { grid-template-columns: 1fr; gap: 32px; }
	.wgh-contact-card { padding: 26px 22px; }
	:is(.wgh-contact-form, .wgh-prose .form-block) form.wpcf7-form { grid-template-columns: 1fr; }
}

/* Contact form: the theme swaps the <select> for selectize - style that like the other fields */
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-control { width: 100%; }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input {
	display: flex !important;
	align-items: center;
	min-height: 52px;
	padding: 0 44px 0 16px !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 12px !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 15.5px;
	color: var(--wh-navy);
}
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input .item { color: var(--wh-navy); }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input.focus,
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input.dropdown-active { border-color: var(--wh-blue) !important; box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input::after { right: 18px !important; color: var(--wh-navy); opacity: .55; }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-dropdown {
	top: calc(100% + 8px) !important;
	padding: 6px !important;
	background: #fff;
	border: 1px solid var(--wh-border) !important;
	border-radius: 14px !important;
	box-shadow: 0 24px 48px -20px rgba(11, 25, 73, 0.30), 0 8px 18px -10px rgba(11, 25, 73, 0.14) !important;
}
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-dropdown .option { padding: 10px 14px !important; border-radius: 9px; font-size: 15px; color: var(--wh-navy); }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-dropdown .option.active,
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-dropdown .option:hover { background: #eef4fd !important; color: var(--wh-navy) !important; }

/* Consent checkbox: the theme hid the real input; show our styled one */
body :is(.wgh-contact-form, .wgh-prose .form-block) .gdpr input[type="checkbox"] { display: inline-block !important; opacity: 1 !important; position: static !important; visibility: visible !important; }
body :is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item-label::before,
body :is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item-label::after { display: none !important; }

/* More breathing room between stacked panels/cards across the base pages */
.wgh-aside-sticky { gap: 28px; }
.wgh-contact-ways { gap: 22px; }
.wgh-contact-ways .wgh-aside-label { margin-bottom: 2px; }
.wgh-help-grid { gap: 30px; }
.wgh-page-grid { gap: 72px; }

/* Contact "ways" cards: same type as the homepage help cards (the theme made link text bold) */
.wgh-contact-way, .wgh-contact-way * { font-weight: 400; }
.wgh-contact-way { gap: 18px; padding: 26px 26px 24px; }
.wgh-contact-way .wgh-help-ic { width: 56px; height: 56px; border-radius: 14px; }
.wgh-contact-way .wgh-contact-way-title { font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: -0.015em; }
.wgh-contact-way .wgh-contact-way-text { margin: 6px 0 14px; font-size: 15.5px; line-height: 1.55; font-weight: 400; }
.wgh-contact-way .wgh-contact-way-more { font-size: 15px; font-weight: 600; word-break: normal; overflow-wrap: anywhere; }

/* Form card lines up with the hero image above (same columns as the masthead) */
@media (min-width: 992px) {
	.wgh-contact-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 56px; }
}

/* First paragraph: same size as the body text, bold */
.wgh-prose .standard-post-content > p:first-child { color: var(--wh-navy); font-weight: 700; }

/* ===================== Forms inside page content (Returns form) ===================== */
.wgh-prose .form-block { float: none !important; margin: 28px 0 8px; }
.wgh-prose .form-block-row, .wgh-prose .flexible-row-block.form-block { padding: 0 !important; }
.wgh-prose .flexible-row-block.form-block > .container { padding: 0; }
.wgh-prose .flexible-row-block.form-block .to-animate { opacity: 1 !important; transform: none !important; }
.wgh-prose .form-block .wpcf7 {
	padding: 34px 36px 36px;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	box-shadow: 0 30px 60px -32px rgba(11, 25, 73, 0.3), 0 10px 24px -16px rgba(11, 25, 73, 0.12);
}
.wgh-prose .form-block .gdpr p { margin: 0; }

/* Card head written in the form template: icon + title + line */
.wgh-form-head { display: flex !important; align-items: center; gap: 16px; padding-bottom: 22px; margin-bottom: 6px !important; border-bottom: 1px solid #edf1f7; }
.wgh-form-head .wgh-aside-ic { flex: none; }
.wgh-form-head .wgh-aside-ic::before { content: ""; width: 24px; height: 24px; background: currentColor; -webkit-mask: var(--wgh-ic) center / contain no-repeat; mask: var(--wgh-ic) center / contain no-repeat; }
.wgh-ic-return { --wgh-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z'/%3E%3C/svg%3E%3C/svg%3E"); }
.wgh-form-head h2, .wgh-prose .wgh-form-head h2 { margin: 0 !important; padding: 0 !important; border: 0 !important; font-size: 24px !important; line-height: 1.2 !important; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-form-head h2::before, .wgh-form-head h2::after { display: none !important; }
.wgh-form-head p, .wgh-prose .wgh-form-head p { margin: 4px 0 0 !important; font-size: 15px; line-height: 1.5; color: var(--wh-text-muted); font-weight: 400; }

/* Submit buttons: icon before the label (send for contact, return arrow for returns) */
:is(.wgh-contact-form, .wgh-prose .form-block) .fields.submit .btn::before {
	content: "" !important;
	display: inline-block !important;
	position: static !important;
	flex: none;
	width: 18px !important;
	height: 18px !important;
	opacity: 1 !important;
	transform: none !important;
	background: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480l0-83.6c0-4 1.5-7.8 4.2-10.8L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M498.1 5.6c10.1 7 15.4 19.1 13.5 31.2l-64 416c-1.5 9.7-7.4 18.2-16 23s-18.9 5.4-28 1.6L284 427.7l-68.5 74.1c-8.9 9.7-22.9 12.9-35.2 8.1S160 493.2 160 480l0-83.6c0-4 1.5-7.8 4.2-10.8L331.8 202.8c5.8-6.3 5.6-16-.4-22s-15.7-6.4-22-.7L106 360.8 17.7 316.6C7.1 311.3 .3 300.7 0 288.9s5.9-22.8 16.1-28.7l448-256c10.7-6.1 23.9-5.5 34 1.4z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
[id^="wpcf7-f3748-"] .fields.submit .btn::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z'/%3E%3C/svg%3E%3C/svg%3E") !important;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z'/%3E%3C/svg%3E%3C/svg%3E") !important;
}
.wgh-prose .form-block .fields.submit .btn { text-decoration: none; }

@media (max-width: 991px) {
	.wgh-prose .form-block .wpcf7 { padding: 26px 22px; }
	.wgh-prose .form-block form.wpcf7-form { grid-template-columns: 1fr; }
}

/* Returns form sits below the floated text block: clear it and leave a gap */
.wgh-prose .flexible-row-block.form-block { clear: both; padding-top: 16px !important; }
.wgh-form-head .wgh-aside-ic::before { visibility: visible !important; }
/* Placeholders in sentence case (the theme capitalised every word) and not cut short */
:is(.wgh-contact-form, .wgh-prose .form-block) ::placeholder { text-transform: none !important; color: #8a94ab; opacity: 1; }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input > input { width: 100% !important; text-transform: none !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input .item { text-transform: none; }
/* Form head: room between the subtext and its divider */
.wgh-form-head.fields { padding-bottom: 22px !important; margin-bottom: 4px !important; }
/* Consent row: hide CF7's text label so the box sits beside "I agree..." */
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item-label { display: none !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item,
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-form-control-wrap,
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-form-control { display: flex !important; align-items: center; width: auto !important; height: auto !important; margin: 0 !important; padding: 0 !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr label { align-items: center !important; }
/* The theme pins the checkbox absolutely inside a padded label: put it back in the row */
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr label { padding: 0 !important; min-height: 0 !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-form-control-wrap,
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr .wpcf7-list-item,
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr input[type="checkbox"] { position: static !important; top: auto !important; left: auto !important; transform: none !important; }
:is(.wgh-contact-form, .wgh-prose .form-block) .gdpr p { line-height: 22px !important; }
.wgh-prose .form-block .wgh-form-head.fields,
.wgh-contact-form .wgh-form-head.fields { padding-bottom: 22px !important; margin-bottom: 4px !important; }

/* Legal pages: "Last updated" chip pinned to the top-right corner of the hero image */
.wgh-page-hero-media-wrap { position: relative; }
.wgh-page-updated.is-on-image {
	position: absolute;
	top: -16px;
	right: 24px;
	z-index: 2;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 9px 16px;
	font-size: 13.5px;
	color: var(--wh-navy);
	box-shadow: 0 14px 28px -14px rgba(11, 25, 73, 0.35), 0 4px 10px -6px rgba(11, 25, 73, 0.15);
}
.wgh-page-updated.is-on-image svg { flex: none; color: var(--wh-orange); }
@media (max-width: 991px) {
	.wgh-page-updated.is-on-image { right: 16px; top: -14px; }
}

/* Legal pages (numbered clauses): tighter, even spacing */
.wgh-prose .standard-post-content ol > p:empty,
.wgh-prose .standard-post-content ol > p:not(:has(*)):not(:has(~ *:not(li))) { display: none; }
.wgh-prose .standard-post-content ol > p { margin: 0; }
.wgh-prose .standard-post-content > ol { margin-top: 0; }
.wgh-prose .standard-post-content > ol > li { margin-bottom: 0; line-height: 1.7; }
.wgh-prose .standard-post-content > ol > li > strong:first-child { margin: 30px 0 6px !important; }
.wgh-prose .standard-post-content > ol > li:first-of-type > strong:first-child { margin-top: 8px !important; }
.wgh-prose .standard-post-content ol ol { margin: 4px 0 0; }
.wgh-prose .standard-post-content ol ol li { margin-bottom: 6px; line-height: 1.7; }
.wgh-prose .standard-post-content ol ol li:last-child { margin-bottom: 0; }
.wgh-prose .standard-post-content ol ol > li + li { margin-top: 0; }
.wgh-prose .standard-post-content ol li > br:first-child { display: none; }

/* Header basket: the "(incl. VAT)" label small so the button stays compact */
.wgh-basket-total small,
.wgh-basket-total .tax_label,
.wgh-basket-total .woocommerce-Price-taxLabel { font-size: 10px !important; font-weight: 500 !important; opacity: .85; letter-spacing: 0; }

/* ===================== Basket page ===================== */
.wgh-shop-head { padding: 52px 0 48px; }
.wgh-shop-head-grid { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; }
.wgh-shop-head .wgh-page-intro { margin-bottom: 0; }

/* Progress steps: numbered circles like the part finder */
.wgh-steps { display: flex; align-items: center; gap: 0; margin: 0 0 6px; padding: 0; list-style: none; flex: none; }
.wgh-steps li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; font-size: 15px; font-weight: 600; color: var(--wh-text-muted); white-space: nowrap; }
.wgh-steps li::before { display: none !important; }
.wgh-steps li + li::before { content: "" !important; display: block !important; position: static; width: 44px; height: 2px; margin: 0 14px; background: #d3dbe8; border-radius: 2px; visibility: visible; }
.wgh-steps li span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #fff; border: 1.5px solid #cdd6e4; font-size: 15px; font-weight: 700; color: var(--wh-text-muted); }
.wgh-steps li.is-current { color: var(--wh-navy); }
.wgh-steps li.is-current span { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff; box-shadow: 0 8px 18px -8px rgba(255, 102, 0, 0.6); }

.wgh-basket-page { padding: 56px 0 88px; }
.wgh-basket-page .woocommerce { float: none; width: 100%; }
.wgh-basket { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 40px; align-items: start; }
.wgh-basket-main { min-width: 0; }

/* Items card */
.wgh-basket-card {
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	box-shadow: 0 30px 60px -36px rgba(11, 25, 73, 0.28), 0 10px 24px -18px rgba(11, 25, 73, 0.12);
	overflow: hidden;
}
.wgh-basket-card-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 24px 28px; border-bottom: 1px solid #edf1f7; }
.wgh-basket-card-head h2 { margin: 0; padding: 0; font-size: 21px; line-height: 1.25; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-basket-count { font-size: 14.5px; font-weight: 600; color: var(--wh-text-muted); }

.wgh-basket-items { margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-basket-items > li { margin: 0; }
.wgh-basket-items > li::before { display: none !important; }
.wgh-basket-item {
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr) auto 110px;
	grid-template-areas: "thumb info qty line" "thumb info remove remove";
	column-gap: 24px;
	row-gap: 8px;
	align-items: center;
	padding: 24px 28px !important;
	border-bottom: 1px solid #edf1f7;
}
.wgh-basket-item:last-child { border-bottom: 0; }
.wgh-basket-thumb { grid-area: thumb; align-self: start; }
.wgh-basket-thumb a, .wgh-basket-thumb > img { display: block; }
.wgh-basket-thumb img {
	display: block;
	width: 104px !important;
	height: 104px !important;
	max-width: none;
	object-fit: contain;
	padding: 8px;
	background: #f6f8fc;
	border: 1px solid #e6ebf3;
	border-radius: 14px;
}
.wgh-basket-info { grid-area: info; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; min-width: 0; }
.wgh-basket-name, .wgh-basket-name a {
	font-size: 17px;
	line-height: 1.35;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wh-navy) !important;
	text-decoration: none !important;
	text-transform: none;
	border: 0 !important;
}
.wgh-basket-name a:hover { color: var(--wh-orange) !important; }
.wgh-basket-stock { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 600; color: #1f9d55; }
.wgh-basket-stock.is-out { color: #c0392b; }
.wgh-basket-unit { font-size: 14.5px; color: var(--wh-text-muted); }
.wgh-basket-unit .amount { font-weight: 600; color: var(--wh-navy); }
.wgh-basket-info dl.variation { margin: 0; font-size: 14px; color: var(--wh-text-muted); }
.wgh-basket-info .backorder_notification { margin: 0; font-size: 14px; color: var(--wh-orange-dark); }

/* Quantity stepper */
.wgh-basket-qty { grid-area: qty; display: inline-flex; align-items: center; height: 46px; border: 1px solid var(--wh-border); border-radius: 12px; background: #fff; overflow: hidden; }
.wgh-basket-qty .quantity { margin: 0 !important; float: none !important; }
.wgh-basket-qty .quantity input.qty {
	width: 44px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: center;
	font-size: 16px !important;
	font-weight: 700;
	color: var(--wh-navy) !important;
	-moz-appearance: textfield;
}
.wgh-basket-qty .quantity input.qty::-webkit-outer-spin-button,
.wgh-basket-qty .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.wgh-qty-btn {
	display: grid;
	place-items: center;
	width: 42px;
	height: 44px;
	padding: 0;
	border: 0;
	background: #f6f8fc;
	color: var(--wh-navy);
	cursor: pointer;
	transition: background-color .15s, color .15s;
}
.wgh-qty-btn:hover { background: #eef4fd; color: var(--wh-orange); }
.wgh-basket-qty:focus-within { border-color: var(--wh-blue); box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15); }

.wgh-basket-line { grid-area: line; text-align: right; font-size: 18px; font-weight: 700; color: var(--wh-navy); }
.wgh-basket-line small, .wgh-basket-unit small { display: block; font-size: 11.5px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-basket-remove { grid-area: remove; justify-self: end; }
.wgh-basket-remove a.remove {
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	width: auto !important;
	height: auto !important;
	padding: 4px 0;
	background: none !important;
	border-radius: 0;
	font-size: 14px !important;
	font-weight: 600;
	line-height: 1.2 !important;
	color: var(--wh-text-muted) !important;
	text-decoration: none !important;
	transition: color .15s;
}
.wgh-basket-remove a.remove:hover { color: #c0392b !important; background: none !important; }
.wgh-basket-remove a.remove::before, .wgh-basket-remove a.remove::after { display: none !important; }

/* Coupon + update row */
.wgh-basket-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 22px 28px; background: #f8fafd; border-top: 1px solid #edf1f7; }
.wgh-basket-coupon { display: flex; align-items: center; gap: 10px; flex: 1 1 auto; max-width: 440px; margin: 0 !important; float: none !important; }
.wgh-coupon-field { position: relative; flex: 1 1 auto; }
.wgh-coupon-field svg { position: absolute; left: 15px; top: 50%; transform: translateY(-50%); color: var(--wh-text-muted); pointer-events: none; }
.wgh-basket-coupon #coupon_code {
	width: 100% !important;
	height: 48px !important;
	margin: 0 !important;
	padding: 0 14px 0 44px !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 10px !important;
	background: #fff !important;
	box-shadow: none !important;
	font-size: 15px !important;
	color: var(--wh-navy);
}
.wgh-basket-coupon #coupon_code::placeholder { text-transform: none; color: #8a94ab; opacity: 1; }
.wgh-basket-coupon #coupon_code:focus { outline: none; border-color: var(--wh-blue) !important; box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important; }
.wgh-basket-actions .wgh-btn { height: 48px; padding: 0 18px; font-size: 15px; cursor: pointer; }
.wgh-basket-actions .wgh-btn::before, .wgh-basket-actions .wgh-btn::after { display: none !important; }
.wgh-basket-actions .wgh-btn[disabled] { opacity: .5; cursor: default; transform: none; }
/* Quantity changes update automatically, so the update button only shows without JavaScript */
.js .wgh-basket-update, html:not(.no-js) .wgh-basket-update { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; padding: 0; border: 0; }

.wgh-basket-back { display: inline-flex; align-items: center; gap: 8px; margin-top: 22px; font-size: 15px; font-weight: 600; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-basket-back:hover svg { transform: translateX(-3px); }
.wgh-basket-back svg { transition: transform .15s; }

/* Order summary */
.wgh-basket-aside { position: sticky; top: 205px; display: flex; flex-direction: column; gap: 22px; }
.wgh-basket-aside .cart-collaterals { float: none; width: 100%; margin: 0; }
.wgh-basket-aside .cart-collaterals .cart_totals { float: none !important; width: 100% !important; }
.wgh-summary {
	padding: 28px 28px 24px;
	background: #fff;
	border: 1px solid var(--wh-border) !important;
	border-radius: 18px;
	box-shadow: 0 30px 60px -32px rgba(11, 25, 73, 0.3), 0 10px 24px -16px rgba(11, 25, 73, 0.12) !important;
}
.wgh-summary::before, .wgh-summary::after { display: none !important; }
.wgh-summary h2 { margin: 0 0 14px !important; padding: 0 !important; font-size: 21px !important; line-height: 1.25; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-summary table.wgh-summary-table { width: 100%; margin: 0 !important; border: 0 !important; border-collapse: collapse; background: none; }
.wgh-summary-table tr { border: 0 !important; background: none !important; }
.wgh-summary-table th, .wgh-summary-table td {
	padding: 12px 0 !important;
	border: 0 !important;
	border-bottom: 1px solid #edf1f7 !important;
	background: none !important;
	vertical-align: top;
	font-size: 15.5px;
	line-height: 1.45;
	color: var(--wh-navy);
}
.wgh-summary-table th { text-align: left; font-weight: 600; }
.wgh-summary-table td { text-align: right; font-weight: 600; }
.wgh-summary-table td::before { display: none !important; }
.wgh-summary-table small, .wgh-summary-table .tax_label, .wgh-summary-table .includes_tax { display: block; font-size: 12px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-summary-table tr.shipping td,
.wgh-summary-table tr.woocommerce-shipping-totals td { font-size: 14px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-summary-table tr.shipping td p, .wgh-summary-table tr.woocommerce-shipping-totals td p { margin: 0; }
.wgh-summary-table ul#shipping_method { margin: 0; padding: 0; list-style: none; }
.wgh-summary-table ul#shipping_method li::before { display: none !important; }
.wgh-summary-table tr.order-total th, .wgh-summary-table tr.order-total td { padding-top: 16px !important; border-bottom: 0 !important; }
.wgh-summary-table tr.order-total th { font-size: 17px; font-weight: 700; }
.wgh-summary-table tr.order-total td strong, .wgh-summary-table tr.order-total td > .amount { font-size: 24px; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-summary-table .cart-discount td a { font-size: 13px; color: var(--wh-orange); }

.wgh-summary .wc-proceed-to-checkout { margin: 18px 0 0 !important; padding: 0 !important; }
.wgh-summary .wc-proceed-to-checkout a.checkout-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	height: 56px;
	margin: 0 !important;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: var(--wh-orange) !important;
	box-shadow: none !important;
	color: #fff !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-transform: none !important;
	text-decoration: none !important;
	transition: background-color .15s, transform .15s;
}
.wgh-summary .wc-proceed-to-checkout a.checkout-button:hover { background: var(--wh-orange-dark) !important; transform: translateY(-1px); }
.wgh-summary .wc-proceed-to-checkout a.checkout-button::after { display: none !important; }
.wgh-summary .wc-proceed-to-checkout a.checkout-button::before {
	content: "" !important;
	display: block !important;
	position: static !important;
	width: 18px;
	height: 18px;
	opacity: 1 !important;
	transform: none !important;
	background: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M144 144l0 48 160 0 0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80zM80 192l0-48C80 64.5 144.5 0 224 0s144 64.5 144 144l0 48 16 0c35.3 0 64 28.7 64 64l0 192c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 256c0-35.3 28.7-64 64-64l16 0z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M144 144l0 48 160 0 0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80zM80 192l0-48C80 64.5 144.5 0 224 0s144 64.5 144 144l0 48 16 0c35.3 0 64 28.7 64 64l0 192c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 256c0-35.3 28.7-64 64-64l16 0z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
.wgh-summary-secure { display: flex; align-items: center; justify-content: center; gap: 7px; margin: 14px 0 0 !important; font-size: 13.5px; color: var(--wh-text-muted); }
.wgh-summary-secure svg { color: #1f9d55; }

/* Reassurance list under the summary */
.wgh-basket-trust { display: flex; flex-direction: column; gap: 4px; margin: 0 !important; padding: 10px 22px !important; list-style: none; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-basket-trust li { display: flex; align-items: center; gap: 14px; margin: 0; padding: 10px 0 !important; }
.wgh-basket-trust li + li { border-top: 1px solid #e6ebf3; }
.wgh-basket-trust li::before { display: none !important; }
.wgh-basket-trust .wgh-help-ic { width: 42px; height: 42px; border-radius: 11px; }
.wgh-basket-trust li > span:last-child { display: flex; flex-direction: column; font-size: 14px; line-height: 1.4; color: var(--wh-text-muted); }
.wgh-basket-trust b { font-size: 15px; font-weight: 700; color: var(--wh-navy); }
.wgh-basket-trust a { color: var(--wh-orange) !important; font-weight: 600; text-decoration: none !important; }

/* Notices above the basket (coupon applied, item removed...) */
.wgh-basket-page .woocommerce-notices-wrapper:not(:empty) { margin-bottom: 22px; }
.wgh-basket-page .woocommerce-message,
.wgh-basket-page .woocommerce-info,
.wgh-basket-page .woocommerce-error {
	margin: 0 0 12px !important;
	padding: 16px 20px 16px 52px !important;
	border: 1px solid #cfe3f7 !important;
	border-radius: 12px;
	background: #f1f7fe !important;
	font-size: 15px;
	color: var(--wh-navy) !important;
}
.wgh-basket-page .woocommerce-error { border-color: #f3c7c2 !important; background: #fdf3f2 !important; }
.wgh-basket-page .woocommerce-message a.button, .wgh-basket-page .woocommerce-info a.button { float: right; color: var(--wh-orange) !important; background: none !important; font-weight: 600; padding: 0 !important; }

/* Cross-sells */
.wgh-basket-page .cross-sells { clear: both; margin-top: 64px; }
.wgh-basket-page .cross-sells > h2 { margin: 0 0 22px; font-size: 26px; font-weight: 700; letter-spacing: -0.03em; color: var(--wh-navy); }

/* Empty basket */
.wgh-basket-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 620px;
	margin: 0 auto;
	padding: 48px 40px 44px;
	text-align: center;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	box-shadow: 0 30px 60px -36px rgba(11, 25, 73, 0.28), 0 10px 24px -18px rgba(11, 25, 73, 0.12);
}
.wgh-basket-empty::before { display: none !important; }
.wgh-basket-empty-ic { display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 18px; border-radius: 20px; background: #ffe0cc; color: var(--wh-orange); }
.wgh-basket-empty h2 { margin: 0 0 8px; font-size: 26px; font-weight: 700; letter-spacing: -0.03em; color: var(--wh-navy); }
.wgh-basket-empty p { margin: 0 0 24px; max-width: 420px; font-size: 16px; line-height: 1.6; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-basket-empty-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }

@media (max-width: 1199px) {
	.wgh-basket { grid-template-columns: minmax(0, 1fr) 340px; gap: 28px; }
}
@media (max-width: 991px) {
	.wgh-shop-head-grid { flex-direction: column; align-items: flex-start; gap: 24px; }
	.wgh-steps li + li::before { width: 24px; margin: 0 8px; }
	.wgh-basket { grid-template-columns: 1fr; }
	.wgh-basket-aside { position: static; }
}
@media (max-width: 575px) {
	.wgh-basket-card-head, .wgh-basket-actions { padding-left: 18px; padding-right: 18px; }
	.wgh-basket-item {
		grid-template-columns: 76px minmax(0, 1fr);
		grid-template-areas: "thumb info" "qty line" "remove remove";
		column-gap: 16px;
		row-gap: 14px;
		padding: 20px 18px !important;
	}
	.wgh-basket-thumb img { width: 76px !important; height: 76px !important; }
	.wgh-basket-qty { justify-self: start; }
	.wgh-basket-remove { justify-self: start; }
	.wgh-basket-actions { flex-direction: column; align-items: stretch; }
	.wgh-basket-coupon { max-width: none; }
	.wgh-steps li { font-size: 13.5px; gap: 7px; }
	.wgh-steps li span { width: 28px; height: 28px; font-size: 13px; }
}

/* The theme sizes every ol li: steps size to their content */
.wgh-steps li { width: auto !important; flex: none !important; float: none !important; }
.wgh-shop-head .wgh-page-hero-copy { flex: 1 1 auto; min-width: 0; }

.wgh-steps { width: auto !important; max-width: none; float: none !important; }
.wgh-basket-name, .wgh-basket-name a { overflow-wrap: anywhere; }
.wgh-basket-remove a.remove { border: 0 !important; outline-offset: 3px; }
.wgh-basket-info .variation, .wgh-basket-info dl { display: flex; flex-wrap: wrap; gap: 4px; margin: 0; font-size: 13.5px; color: var(--wh-text-muted); }
.wgh-basket-info dl dt, .wgh-basket-info dl dd, .wgh-basket-info dl dd p { margin: 0 !important; padding: 0; font-weight: 500; float: none; }

/* Basket notices: icon in the left gutter (tick / info / alert) */
.wgh-basket-page .woocommerce-message, .wgh-basket-page .woocommerce-info, .wgh-basket-page .woocommerce-error { position: relative; list-style: none; }
.wgh-basket-page .woocommerce-message { border-color: #bfe5cf !important; background: #f0faf4 !important; }
.wgh-basket-page .woocommerce-message::before,
.wgh-basket-page .woocommerce-info::before,
.wgh-basket-page .woocommerce-error::before {
	content: "" !important;
	display: block !important;
	position: absolute !important;
	left: 18px !important;
	top: 50% !important;
	width: 22px !important;
	height: 22px !important;
	margin: -11px 0 0 !important;
	transform: none !important;
	visibility: visible !important;
	font-size: 0 !important;
	-webkit-mask: var(--wgh-notice-ic) center / contain no-repeat;
	mask: var(--wgh-notice-ic) center / contain no-repeat;
}
.wgh-basket-page .woocommerce-message::before { background: #1f9d55 !important; --wgh-notice-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z'/%3E%3C/svg%3E%3C/svg%3E"); }
.wgh-basket-page .woocommerce-info::before { background: var(--wh-blue-dark) !important; --wgh-notice-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336l24 0 0-64-24 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l48 0c13.3 0 24 10.7 24 24l0 88 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-80 0c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E%3C/svg%3E"); }
.wgh-basket-page .woocommerce-error::before { background: #c0392b !important; --wgh-notice-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z'/%3E%3C/svg%3E%3C/svg%3E"); }
.wgh-basket-page .woocommerce-error li { margin: 0; padding: 0; }
.wgh-basket-page .woocommerce-error li::before { display: none !important; }

/* Summary table: no theme hover lines; padlock on the checkout button visible */
.wgh-summary-table tr::before, .wgh-summary-table tr::after, .wgh-summary-table th::before, .wgh-summary-table th::after, .wgh-summary-table td::after { display: none !important; content: none !important; }
.wgh-summary-table tr:hover th, .wgh-summary-table tr:hover td { border-bottom-color: #edf1f7 !important; box-shadow: none !important; background: none !important; }
.wgh-summary-table tr.order-total:hover th, .wgh-summary-table tr.order-total:hover td { border-bottom-color: transparent !important; }
.wgh-summary .wc-proceed-to-checkout a.checkout-button::before { visibility: visible !important; }

/* Actions row: Continue shopping (white button) left, discount code right */
.wgh-basket-actions .wgh-basket-back { margin: 0; flex: none; }
.wgh-basket-actions .wgh-basket-coupon { margin-left: auto !important; max-width: 420px; }
@media (max-width: 575px) { .wgh-basket-actions .wgh-basket-coupon { margin-left: 0 !important; } .wgh-basket-actions .wgh-basket-back { order: 2; } }

/* ===================== Footer: matches the main site (.wh-footer) ===================== */
footer.wgh-footer {
	clear: both;
	float: none;
	width: 100%;
	padding: 56px 0 24px;
	background: #0b1949;
	color: rgba(255, 255, 255, 0.9);
	font-family: 'InterLocal', 'Inter', Arial, sans-serif;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: normal;
}
.wgh-footer a { color: rgba(255, 255, 255, 0.9); text-decoration: none; box-shadow: none; }
.wgh-footer a:hover { color: #fff; }
.wgh-footer-top { display: grid; grid-template-columns: minmax(220px, 320px) repeat(3, minmax(140px, 1fr)); gap: 28px clamp(36px, 5vw, 72px); align-items: start; }
.wgh-footer-top > :not(:first-child) { padding-left: clamp(12px, 2vw, 28px); }
.wgh-footer-brand { display: grid; gap: 16px; align-content: start; }
.wgh-footer-logo { display: block; line-height: 0; }
.wgh-footer-logo img { display: block; width: 100%; max-width: 300px; height: auto; }
.wgh-footer-logo-text { margin: 15px 0; font-size: 0.98rem; line-height: 1.7; color: rgba(255, 255, 255, 0.82); }
.wgh-socials { display: flex; gap: 12px; flex-wrap: wrap; justify-content: flex-start; }
.wgh-social-link { display: inline-flex !important; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 10px; background: rgba(255, 255, 255, 0.1); color: rgba(255, 255, 255, 0.9) !important; transition: background-color .15s; }
.wgh-social-link:hover { background: rgba(255, 255, 255, 0.18); }
.wgh-social-link svg { display: block; width: 18px; height: 18px; }
.wgh-footer-menu-title { margin: 0 0 16px; font-size: 1.05rem; line-height: 1.6; font-weight: 600; letter-spacing: normal; text-transform: none; color: #fff; }
.wgh-footer-menu ul { margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-footer-menu li { float: none; width: auto; margin: 0; padding: 0 !important; font-size: 16px; line-height: 1.6; }
.wgh-footer-menu li::before, .wgh-footer-menu li::after { display: none !important; }
.wgh-footer-menu li + li { margin-top: 10px; }
.wgh-footer-menu a { display: inline; padding: 0; font-size: 16px; font-weight: 400; line-height: 1.6; color: rgba(255, 255, 255, 0.9) !important; }
.wgh-footer-menu a:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
.wgh-footer-menu a::before, .wgh-footer-menu a::after { display: none !important; }

.wgh-footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-top: 32px; padding-top: 24px; border-top: 1px solid rgba(255, 255, 255, 0.14); }
.wgh-footer-legal { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 24px; font-size: 14.5px; color: rgba(255, 255, 255, 0.82); }
.wgh-footer-legal-links { display: flex; flex-wrap: wrap; gap: 6px 20px; }
.wgh-footer-legal-links a { font-size: 14.5px; color: rgba(255, 255, 255, 0.82) !important; }
.wgh-footer-legal-links a:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
.wgh-footer-payments { flex: none; line-height: 0; }
.wgh-footer-payments img { display: block; height: 34px; width: auto; }

@media (max-width: 991px) {
	.wgh-footer-top { grid-template-columns: 1fr; }
	.wgh-footer-top > :not(:first-child) { padding-left: 0; }
}
@media (max-width: 767px) {
	footer.wgh-footer { padding-top: 40px; }
	.wgh-footer-logo img { max-width: 230px; }
	.wgh-footer-bottom { flex-direction: column; align-items: flex-start; gap: 12px; }
}

/* Summary text lines balanced (no single word on the last line) */
.wgh-summary-table td, .wgh-summary-table td p, .wgh-summary-secure { text-wrap: balance; }

/* Footer menus: even 10px between every link (a theme last-child rule was removing the last gap) */
.wgh-footer-menu ul { display: flex !important; flex-direction: column; gap: 10px; }
.wgh-footer-menu ul li, .wgh-footer-menu ul li + li, .wgh-footer-menu ul li:last-child, .wgh-footer-menu ul li:first-child { margin: 0 !important; padding: 0 !important; }
.wgh-footer-legal-links a, .wgh-footer-legal span { font-weight: 400 !important; }

/* Header basket: a little room between the "Basket" label and the total */
body .header a#cartIcon .wgh-hdr-txt > small { display: block; margin-bottom: 4px; }

/* ===================== Appliance category masthead ===================== */
.wgh-cat-hero { padding: 60px 0 72px; overflow: visible; z-index: 3; }
.wgh-cat-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 480px); gap: 64px; align-items: center; }
.wgh-cat-hero .wgh-page-intro { max-width: 540px; text-wrap: balance; }
.wgh-cat-hero .wgh-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.wgh-cat-hero .wgh-hero-actions .wgh-btn::before, .wgh-cat-hero .wgh-hero-actions .wgh-btn::after { display: none !important; }

/* Finder card: same as the homepage */
.wgh-cat-hero .part-finder-slider-container {
	position: relative;
	float: none;
	width: 100%;
	height: auto;
	padding: 30px 30px 26px;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	box-shadow: 0 30px 60px -28px rgba(11, 25, 73, 0.30), 0 10px 24px -14px rgba(11, 25, 73, 0.14);
}
.wgh-cat-hero .part-finder-slider-container::before, .wgh-cat-hero .part-finder-slider-container::after { display: none !important; }
.wgh-cat-hero .find-part-form-container, .wgh-cat-hero .find-part-form { float: none; width: 100%; }
.wgh-cat-hero .find-part-form > .fields { display: flow-root !important; width: 100% !important; max-width: none !important; }
.wgh-cat-hero .find-part-form > .fields.d-none { display: none !important; }

@media (max-width: 991px) {
	.wgh-cat-hero { padding: 44px 0 52px; }
	.wgh-cat-hero-grid { grid-template-columns: 1fr; gap: 36px; }
	.wgh-cat-hero .part-finder-slider-container { padding: 24px 20px 20px; }
}

/* Category brand tiles: logo image (was a broken background image) */
.brand-block .wgh-brand-logo-cell { display: flex !important; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 12px; }
.brand-block .wgh-brand-logo-cell img { display: block; max-width: 100%; max-height: 56px; width: auto; height: auto; object-fit: contain; }
.brand-block .wgh-brand-logo-name { font-size: 16px; font-weight: 700; color: var(--wh-navy); text-align: center; }

/* Text can be selected and copied again (the old theme blocked it) */
p, ul, ul li, ol, ol li, h1, h2, h3, h4, h5, h6, blockquote { -webkit-touch-callout: default; -webkit-user-select: text; -moz-user-select: text; -ms-user-select: text; user-select: text; }

/* Breadcrumb bar: one place on every page, directly under the main nav */
.hero-breadcrumbs.wgh-crumb-bar { display: block !important; clear: both; margin: 0 !important; }

/* ===================== Loading state (part finder, basket, product, forms, modal) =====================
   One WGH spinner everywhere: a white disc with an orange arc on a faint navy ring.
   Replaces the old favicon "fill up" animation (its image path was broken, showing "form loader"). */
.form-loader { background: rgba(255, 255, 255, 0.72) !important; backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); border-radius: inherit; }
.form-loader .loader-inner {
	position: relative !important;
	float: none !important;
	width: 60px !important;
	height: 60px !important;
	border-radius: 50%;
	background: #fff !important;
	box-shadow: 0 12px 28px -10px rgba(11, 25, 73, 0.30), 0 2px 8px -2px rgba(11, 25, 73, 0.12);
}
.form-loader .loader-inner .loader-block,
.form-loader .loader-inner .position-absolute,
.form-loader .loader-inner img { display: none !important; animation: none !important; }
.form-loader .loader-inner::before {
	content: "";
	position: absolute;
	inset: 12px;
	border-radius: 50%;
	border: 4px solid rgba(11, 25, 73, 0.10);
	border-top-color: var(--wh-orange);
	border-right-color: var(--wh-orange);
	animation: wgh-spin 0.75s linear infinite;
	visibility: inherit;
}
.form-loader .loader-inner::after { display: none !important; }
@keyframes wgh-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
	.form-loader .loader-inner::before { animation-duration: 2s; }
}
/* Nested duplicate overlays (some templates wrap one loader in another): draw only the inner one */
.form-overlay.form-loader { background: transparent !important; backdrop-filter: none; -webkit-backdrop-filter: none; }

/* "How to find your model number": orange on hover, no underline */
body .find-part-form-container form.find-part-form .fields a.model-no-link, body .find-part-form-container form.find-part-form .fields a.model-no-link:hover, body .find-part-form-container form.find-part-form .fields a.model-no-link:focus { text-decoration: none !important; box-shadow: none !important; border-bottom: 0 !important; background-image: none !important; }
body .find-part-form-container form.find-part-form .fields a.model-no-link::after { display: none !important; }

/* ===================== Product cards + featured slider (white band) ===================== */
.wgh-featured { clear: both; padding: 80px 0 88px !important; margin: 0 !important; background: #fff !important; }
.wgh-featured .title-row { margin-bottom: 40px; }
.wgh-featured .product-slider-main { position: relative; }
.wgh-featured .slick-track { display: flex !important; }
.wgh-featured .slick-slide { height: auto !important; }
.wgh-featured .slick-slide > article, .wgh-featured .product-slider-main > article { height: 100%; margin-bottom: 0 !important; padding-top: 6px; padding-bottom: 28px; }

.wgh-prod-card {
	display: flex !important;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05);
	text-decoration: none !important;
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
.wgh-prod-card:hover { transform: translateY(-3px); border-color: var(--wh-blue); box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24); }
.wgh-prod-card::before, .wgh-prod-card::after { display: none !important; }
.wgh-prod-pic { display: grid; place-items: center; height: 210px; padding: 18px; background: linear-gradient(180deg, #f6f8fc, #edf2fa); border-bottom: 1px solid #eef2f8; }
.wgh-prod-pic img { display: block; width: auto !important; height: auto !important; max-width: 100%; max-height: 172px; object-fit: contain; mix-blend-mode: multiply; }
.wgh-prod-noimg { color: #c3cddd; }
.wgh-prod-body { display: flex; flex-direction: column; flex: 1 1 auto; gap: 8px; padding: 18px 18px 16px; }
.wgh-prod-body h4.wgh-prod-name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.7em;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wh-navy);
	overflow-wrap: anywhere;
}
.wgh-prod-stock { display: inline-flex; align-items: center; gap: 6px; font-size: 13.5px; font-weight: 600; color: #1f9d55; }
.wgh-prod-stock.is-out { color: #c0392b; }
.wgh-prod-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 10px; border-top: 1px solid #eef2f8; }
.wgh-prod-price { font-size: 19px; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); line-height: 1.2; }
.wgh-prod-price del { font-size: 14px; font-weight: 500; color: var(--wh-text-muted); margin-right: 4px; }
.wgh-prod-price ins { text-decoration: none; }
.wgh-prod-price small, .wgh-prod-price .woocommerce-price-suffix, .wgh-prod-price .tax_label { display: block; font-size: 11.5px; font-weight: 500; letter-spacing: 0; color: var(--wh-text-muted); }
.wgh-prod-arrow { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #f6f8fc; color: var(--wh-orange); transition: background .18s, color .18s; }
.wgh-prod-card:hover .wgh-prod-arrow { background: var(--wh-orange); color: #fff; }

/* Slider arrows: round white buttons, centred under the cards */
.wgh-featured .product-slider-main .slick-arrow {
	position: static !important;
	display: inline-grid !important;
	place-items: center;
	width: 46px !important;
	height: 46px !important;
	margin: 8px 6px 0 !important;
	padding: 0 !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 50% !important;
	background: #fff !important;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.06);
	font-size: 0 !important;
	color: var(--wh-orange) !important;
	transform: none !important;
	cursor: pointer;
	transition: background .15s, color .15s, border-color .15s;
}
.wgh-featured .product-slider-main .slick-arrow:hover { background: var(--wh-orange) !important; border-color: var(--wh-orange) !important; color: #fff !important; }
.wgh-featured .product-slider-main .slick-arrow::before {
	content: "" !important;
	display: block;
	width: 18px;
	height: 18px;
	background: currentColor;
	opacity: 1 !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
.wgh-featured .product-slider-main .slick-arrow.previous::before { transform: scaleX(-1); }
.wgh-featured .product-slider-main .slick-arrow::after { display: none !important; }
.wgh-featured .product-slider-main.slick-slider { display: flex !important; flex-wrap: wrap; justify-content: center; }
.wgh-featured .product-slider-main .slick-list { order: 0; flex: 0 0 100%; width: 100%; }
.wgh-featured .product-slider-main .slick-arrow.previous { order: 1; }
.wgh-featured .product-slider-main .slick-arrow.next { order: 2; }

/* Featured slider, round 2: same spacing as the other bands; arrows at the far left/right of the
   cards, icon centred, hover = solid orange with a white arrow */
.wgh-featured { padding: 80px 0 !important; }
.wgh-featured .slick-slide > article, .wgh-featured .product-slider-main > article { padding-top: 6px; padding-bottom: 10px; }
.wgh-featured .product-slider-main.slick-slider { display: block !important; position: relative; }
.wgh-featured .product-slider-main .slick-arrow {
	position: absolute !important;
	top: 50% !important;
	z-index: 3;
	display: flex !important;
	align-items: center;
	justify-content: center;
	margin: -23px 0 0 !important;
	line-height: 1 !important;
	opacity: 1 !important;
	color: var(--wh-orange) !important;
}
.wgh-featured .product-slider-main .slick-arrow.previous { left: -66px !important; right: auto !important; }
.wgh-featured .product-slider-main .slick-arrow.next { right: -66px !important; left: auto !important; }
.wgh-featured .product-slider-main .slick-arrow::before {
	position: static !important;
	flex: none;
	margin: 0 !important;
	width: 18px !important;
	height: 18px !important;
	font-size: 0 !important;
	line-height: 0 !important;
	background: var(--wh-orange) !important;
}
.wgh-featured .product-slider-main .slick-arrow:hover::before { background: #fff !important; }
.wgh-featured .product-slider-main .slick-arrow.slick-disabled { opacity: .45 !important; cursor: default; }
@media (max-width: 1299px) {
	.wgh-featured .product-slider-main { padding: 0 58px; }
	.wgh-featured .product-slider-main .slick-arrow.previous { left: 0 !important; }
	.wgh-featured .product-slider-main .slick-arrow.next { right: 0 !important; }
}
/* Discontinued parts: short note instead of the long "no longer available" message */
.wgh-prod-na { font-size: 14px; font-weight: 600; color: var(--wh-text-muted); }

/* Bands sit edge to edge: their own padding is the spacing (the old theme added margins under
   some, e.g. 90px under the brands band, which doubled the gap above the help strip) */
body .container-fluid.brands-listing, body .container-fluid.category-listing, body .container-fluid.product-slider-section, body .container-fluid.wgh-help-strip { margin-top: 0 !important; margin-bottom: 0 !important; }

/* Featured band: 80px under the cards, same as above the title (slides keep 10px for the shadow) */
.wgh-featured { padding-bottom: 70px !important; }

/* The old theme left 80px under the slider for its arrows (now at the sides) */
.wgh-featured .product-slider-main { padding-bottom: 0 !important; margin-top: 0 !important; }
@media (min-width: 1300px) { .wgh-featured .product-slider-main { padding-left: 0 !important; padding-right: 0 !important; } }

/* Part finder "no matching models" message: even line lengths */
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions p.no-models { text-wrap: balance; }
/* ...with an icon tile on the left (search with a cross), like the help cards */
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions p.no-models {
	position: relative;
	min-height: 72px;
	padding: 14px 14px 14px 72px !important;
}
body .find-part-form-container form.find-part-form .fields div#model-number-suggestions p.no-models::before {
	content: "";
	position: absolute;
	left: 14px;
	top: 16px;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	visibility: visible;
	background: #ffe0cc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23ff6600' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E%3C/svg%3E") center / 22px no-repeat;
}

/* Featured slider: room inside the clipping box so card shadows (incl. hover) fade out fully
   instead of stopping on a straight edge. Negative margins keep the band's spacing the same. */
.wgh-featured .product-slider-main .slick-list { padding: 24px 0 40px !important; margin: -24px 0 -40px !important; }
.wgh-featured .slick-slide > article, .wgh-featured .product-slider-main > article { padding-top: 0 !important; padding-bottom: 0 !important; }
.wgh-featured { padding-bottom: 80px !important; }
.wgh-featured { padding-bottom: 70px !important; }
.wgh-featured .title-row { margin-bottom: 30px !important; }

/* Product card stock + dispatch line: green tick disc + "In stock", divider, truck + dispatch time */
.wgh-prod-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 0; min-height: 22px; font-size: 13.5px; line-height: 1.3; }
.wgh-prod-meta .wgh-prod-stock { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; color: #1f9d55; }
.wgh-prod-meta .wgh-prod-stock.is-out { color: #c0392b; }
.wgh-prod-dot { display: grid; place-items: center; flex: none; width: 18px; height: 18px; border-radius: 50%; background: #1f9d55; color: #fff; }
.wgh-prod-stock.is-out .wgh-prod-dot { background: #c0392b; }
.wgh-prod-ship { display: inline-flex; align-items: center; gap: 6px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-prod-stock + .wgh-prod-ship { margin-left: 10px; padding-left: 10px; border-left: 1px solid var(--wh-border); }
.wgh-prod-ship svg { flex: none; color: var(--wh-navy); opacity: .7; }
/* ...stacked: two tidy lines, icons in one 18px column */
.wgh-prod-meta { flex-direction: column; align-items: flex-start; gap: 7px; min-height: 46px; }
.wgh-prod-stock + .wgh-prod-ship { margin-left: 0; padding-left: 0; border-left: 0; }
.wgh-prod-ship { gap: 7px; }
.wgh-prod-ship svg { width: 18px; height: 18px; }

/* ===================== All Brands page ===================== */
.wgh-brands-popular .wgh-brand-grid { margin-top: 0; }
.wgh-az { padding: 72px 0 88px; }
.wgh-az-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.wgh-az-head h2 { margin: 0; font-size: clamp(1.7rem, 2.6vw, 2.2rem); line-height: 1.12; font-weight: 800; letter-spacing: -0.03em; color: var(--wh-navy); }
.wgh-az-head p { margin: 8px 0 0; font-size: 16px; color: var(--wh-text-muted); }
.wgh-az-head p a { color: var(--wh-orange); font-weight: 600; text-decoration: none; }
.wgh-az-head p a:hover { color: var(--wh-orange-dark); }
.wgh-az-search { position: relative; flex: 0 0 340px; margin: 0; }
.wgh-az-search svg { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); color: var(--wh-text-muted); pointer-events: none; }
.wgh-az-search input {
	width: 100%;
	height: 52px;
	margin: 0;
	padding: 0 16px 0 46px;
	border: 1px solid var(--wh-border);
	border-radius: 12px;
	background: #fff;
	font-size: 15.5px;
	color: var(--wh-navy);
	box-shadow: none;
}
.wgh-az-search input::placeholder { color: #8a94ab; text-transform: none; opacity: 1; }
.wgh-az-search input:focus { outline: none; border-color: var(--wh-blue); box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15); }

/* Sticky letter bar */
.wgh-az-letters {
	position: sticky;
	top: 190px;
	z-index: 5;
	display: grid;
	grid-template-columns: repeat(26, minmax(0, 1fr));
	gap: 4px;
	margin-bottom: 36px;
	padding: 8px;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(6px);
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	box-shadow: 0 14px 30px -20px rgba(11, 25, 73, 0.3);
}
.wgh-az-letters a, .wgh-az-letters span {
	display: grid;
	place-items: center;
	height: 38px;
	border-radius: 9px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none !important;
}
.wgh-az-letters a { color: var(--wh-navy) !important; }
.wgh-az-letters a:hover { background: var(--wh-orange); color: #fff !important; }
.wgh-az-letters a.is-off, .wgh-az-letters span { color: #c3cbd9 !important; pointer-events: none; }

/* Letter groups */
.wgh-az-groups { display: flex; flex-direction: column; gap: 0; }
.wgh-az-group { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 24px; padding: 26px 0; border-top: 1px solid #edf1f7; scroll-margin-top: 270px; }
.wgh-az-group:first-child { border-top: 0; padding-top: 0; }
.wgh-az-letter { margin: 0 !important; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 14px; background: #eef4fd; font-size: 26px !important; line-height: 1 !important; font-weight: 800; color: var(--wh-navy); }
.wgh-az-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px 24px; margin: 0 !important; padding: 0 !important; list-style: none; align-content: start; }
.wgh-az-list li { margin: 0; padding: 0; }
.wgh-az-list li::before { display: none !important; }
.wgh-az-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 11px 14px;
	border-radius: 10px;
	font-size: 16px;
	font-weight: 500;
	color: var(--wh-navy) !important;
	text-decoration: none !important;
	transition: background-color .15s, color .15s;
}
.wgh-az-list a svg { flex: none; color: var(--wh-orange); opacity: 0; transform: translateX(-4px); transition: opacity .15s, transform .15s; }
.wgh-az-list a:hover { background: #f6f8fc; color: var(--wh-orange) !important; }
.wgh-az-list a:hover svg { opacity: 1; transform: none; }
.wgh-az-none { margin: 8px 0 0; font-size: 16px; color: var(--wh-text-muted); }
.wgh-az-none a { color: var(--wh-orange); font-weight: 600; }

@media (max-width: 1199px) { .wgh-az-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991px) {
	.wgh-az-head { flex-direction: column; align-items: stretch; }
	.wgh-az-search { flex-basis: auto; }
	.wgh-az-letters { top: 70px; grid-template-columns: repeat(13, minmax(0, 1fr)); }
	.wgh-az-group { grid-template-columns: 1fr; gap: 14px; scroll-margin-top: 170px; }
	.wgh-az-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) { .wgh-az-list { grid-template-columns: 1fr; } }

/* Brand page masthead: brand logo above the eyebrow */
.wgh-brand-hero-logo { display: inline-flex; align-items: center; height: 64px; padding: 10px 18px; margin-bottom: 20px; background: #fff; border: 1px solid var(--wh-border); border-radius: 14px; box-shadow: 0 10px 24px -16px rgba(11, 25, 73, 0.25); }
.wgh-brand-hero-logo img { display: block; max-height: 44px; max-width: 160px; width: auto; height: auto; }
.wgh-brand-hero .wgh-eyebrow { display: block; }

/* Sections must not merge: the help strip always has a dividing line above it */
body .container-fluid.wgh-help-strip { border-top: 1px solid var(--wh-border); }
body .wgh-featured + .wgh-featured, body .wgh-page-body + .wgh-featured, body .wgh-featured + .wgh-page-body { border-top: 1px solid var(--wh-border); }

/* ===================== Product listing (part type pages) ===================== */
.wgh-listing { padding: 64px 0 80px; }
.wgh-listing form.filterable_search { position: relative; float: none; width: 100%; }
.wgh-listing-grid { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 40px; align-items: start; }
.wgh-listing-aside { position: sticky; top: 205px; }
.wgh-listing-aside .wgh-filters { flex-direction: column; gap: 22px; float: none; width: 100%; }
@media (min-width: 992px) { .wgh-listing-aside .wgh-filters { display: flex !important; } }
.wgh-filter-card { padding: 22px 22px 20px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-filter-card .wgh-aside-label { display: block; margin-bottom: 12px; }
.wgh-selections { margin: 0; }
.wgh-selection { padding: 10px 0; border-top: 1px solid #e3e9f2; }
.wgh-selection:first-child { border-top: 0; padding-top: 0; }
.wgh-selection dt { margin: 0 0 3px; font-size: 12.5px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--wh-text-muted); }
.wgh-selection dd { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0; font-size: 15.5px; font-weight: 600; color: var(--wh-navy); }
.wgh-sel-remove { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #fff; border: 1px solid var(--wh-border); color: var(--wh-text-muted) !important; text-decoration: none !important; transition: background .15s, color .15s, border-color .15s; }
.wgh-sel-remove:hover { background: #c0392b; border-color: #c0392b; color: #fff !important; }
.wgh-filter-brands { margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-filter-brands li { margin: 0; padding: 0; }
.wgh-filter-brands li::before { display: none !important; }
.wgh-filter-brands a { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; margin: 0 -10px; border-radius: 9px; font-size: 15px; font-weight: 500; color: var(--wh-navy) !important; text-decoration: none !important; }
.wgh-filter-brands a svg { color: var(--wh-orange); opacity: 0; transition: opacity .15s; }
.wgh-filter-brands a:hover { background: #fff; color: var(--wh-orange) !important; }
.wgh-filter-brands a:hover svg { opacity: 1; }
.wgh-show-more { display: inline-flex; align-items: center; gap: 6px; margin-top: 10px; font-size: 14.5px; font-weight: 600; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-filter-help { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; background: #fff; border-color: var(--wh-border); }
.wgh-filter-help .wgh-aside-title { font-size: 17px; font-weight: 700; color: var(--wh-navy); }
.wgh-filter-help p { margin: 0 0 6px; font-size: 14.5px; line-height: 1.5; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-filter-help .wgh-btn { width: 100%; }

.wgh-listing-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.wgh-listing-head h2 { margin: 0; font-size: 24px; line-height: 1.2; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-listing .showing-tag { font-size: 14.5px; font-weight: 600; color: var(--wh-text-muted); }
.wgh-listing #filterable_search_results { row-gap: 0; }
.wgh-listing #filterable_search_results > article { margin-bottom: 26px !important; }

.wgh-pager { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 10px; }
.wgh-pager .wgh-btn::before, .wgh-pager .wgh-btn::after { display: none !important; }

.wgh-listing-empty { display: flex; flex-direction: column; align-items: center; padding: 44px 32px; text-align: center; background: #fff; border: 1px solid var(--wh-border); border-radius: 18px; }
.wgh-listing-empty h3 { margin: 0 0 8px; font-size: 22px; font-weight: 700; color: var(--wh-navy); text-wrap: balance; }
.wgh-listing-empty p { max-width: 460px; margin: 0 0 22px; font-size: 15.5px; line-height: 1.6; color: var(--wh-text-muted); text-wrap: balance; }

.wgh-prod-ship.is-fit { color: #1f9d55; font-weight: 600; }
.wgh-prod-ship.is-fit svg { color: #1f9d55; opacity: 1; }

/* Mobile: the filters open as the theme's slide-in panel */
.wgh-filters-open { width: 100%; margin-bottom: 18px; }
.wgh-filters-close { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--wh-navy) !important; text-decoration: none !important; }
@media (min-width: 992px) { .wgh-listing .hidden-desktop { display: none !important; } }
@media (max-width: 991px) {
	.wgh-listing-grid { grid-template-columns: 1fr; gap: 0; }
	.wgh-listing-aside { position: static; }
	.wgh-listing-aside .wgh-filters { display: none; }
}
/* Brands list: first 10, the rest behind "Show more brands" */
.wgh-filter-brands li:nth-child(n+11) { display: none; }
.wgh-filter-brands.is-open li { display: block; }

/* ===================== Advice Centre ===================== */
.wgh-page-hero .wgh-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.wgh-page-hero .wgh-hero-actions .wgh-btn::before, .wgh-page-hero .wgh-hero-actions .wgh-btn::after { display: none !important; }
.wgh-guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.wgh-guide-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05);
	text-decoration: none !important;
	transition: transform .18s, box-shadow .18s, border-color .18s;
}
.wgh-guide-card:hover { transform: translateY(-3px); border-color: var(--wh-blue); box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24); }
.wgh-guide-pic { display: grid; place-items: center; height: 190px; background: linear-gradient(180deg, #f6f8fc, #edf2fa); border-bottom: 1px solid #eef2f8; }
.wgh-guide-pic img { width: auto !important; height: 140px !important; max-width: 80%; object-fit: contain; mix-blend-mode: multiply; }
.wgh-guide-body { display: flex; flex-direction: column; flex: 1 1 auto; gap: 8px; padding: 20px 22px 18px; }
.wgh-guide-title { font-size: 19px; line-height: 1.3; font-weight: 700; letter-spacing: -0.015em; color: var(--wh-navy); }
.wgh-guide-text {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.55;
	color: var(--wh-text-muted);
	text-wrap: pretty;
}
.wgh-guide-foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 12px; border-top: 1px solid #eef2f8; }
.wgh-guide-count { font-size: 14.5px; font-weight: 600; color: var(--wh-orange); }
.wgh-guide-card .wgh-cat-arrow { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #f6f8fc; color: var(--wh-orange); transition: background .18s, color .18s; }
.wgh-guide-card:hover .wgh-cat-arrow { background: var(--wh-orange); color: #fff; }
@media (max-width: 991px) { .wgh-guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; } }
@media (max-width: 575px) { .wgh-guide-grid { grid-template-columns: 1fr; } }

/* Your selections: title row + each selection as its own white row with an icon */
.wgh-sel-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.wgh-sel-title { display: inline-flex; align-items: center; gap: 8px; font-size: 17px; font-weight: 700; color: var(--wh-navy); }
.wgh-sel-title svg { color: var(--wh-orange); }
.wgh-sel-clear { font-size: 14px; font-weight: 600; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-sel-clear:hover { color: var(--wh-orange-dark) !important; text-decoration: underline !important; text-underline-offset: 3px; }
.wgh-sel-card .wgh-selections { display: flex; flex-direction: column; gap: 8px; margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-sel-card .wgh-selection { display: flex; align-items: center; gap: 12px; margin: 0; padding: 10px 10px 10px 10px !important; background: #fff; border: 1px solid #e6ebf3 !important; border-radius: 12px; }
.wgh-sel-card .wgh-selection::before { display: none !important; }
.wgh-sel-ic { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; }
.wgh-sel-ic.is-appliance { background: #dfe3f4; color: var(--wh-navy); }
.wgh-sel-ic.is-category { background: #d9eefb; color: var(--wh-blue-dark); }
.wgh-sel-ic.is-part { background: #ffe0cc; color: var(--wh-orange); }
.wgh-sel-ic.is-brand { background: #e3f5ea; color: #1f9d55; }
.wgh-sel-text { display: flex; flex-direction: column; min-width: 0; flex: 1 1 auto; }
.wgh-sel-label { font-size: 12.5px; line-height: 1.3; font-weight: 500; color: var(--wh-text-muted); }
.wgh-sel-value { font-size: 15px; line-height: 1.3; font-weight: 700; color: var(--wh-navy); overflow-wrap: anywhere; }
.wgh-sel-card .wgh-sel-remove { width: 28px; height: 28px; background: #f6f8fc; border-color: #e6ebf3; }

/* Selections fit on one line: slightly wider sidebar, tighter rows */
@media (min-width: 992px) { .wgh-listing-grid { grid-template-columns: 320px minmax(0, 1fr); gap: 36px; } }
.wgh-sel-card { padding: 18px 16px 16px; }
.wgh-sel-card .wgh-selection { gap: 10px; padding: 8px 8px 8px 8px !important; }
.wgh-sel-ic { width: 34px; height: 34px; border-radius: 9px; }
.wgh-sel-value { font-size: 14.5px; }
/* Selection values stay on one line */
.wgh-sel-value { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ===================== Modals (find the right part, how to find your model number) ===================== */
.wgh-modal .overlay { background: rgba(11, 25, 73, 0.55) !important; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); padding: 32px 16px !important; overflow-y: auto; }
.wgh-modal .overlay > .container { position: relative; margin: auto; }
.wgh-modal.wgh-modal-wide .overlay > .container { max-width: 1000px; }
.wgh-modal .wgh-modal-card {
	min-height: 0 !important;
	padding: 34px 34px 30px !important;
	background: #fff !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 20px;
	box-shadow: 0 40px 80px -30px rgba(11, 25, 73, 0.45), 0 12px 30px -16px rgba(11, 25, 73, 0.2) !important;
}
.wgh-modal .wgh-modal-head { padding-right: 52px; margin-bottom: 26px; padding-bottom: 22px; border-bottom: 1px solid #edf1f7; }
.wgh-modal .wgh-modal-head .title { font-size: 22px !important; }
/* Close: round button in the card's top-right corner */
.wgh-modal a.close-modal.wgh-modal-close {
	position: absolute !important;
	top: 26px !important;
	right: 26px !important;
	z-index: 5;
	display: grid !important;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: #f6f8fc;
	border: 1px solid var(--wh-border);
	color: var(--wh-navy) !important;
	font-size: 0 !important;
	transition: background .15s, color .15s, border-color .15s;
}
.wgh-modal a.close-modal.wgh-modal-close::before, .wgh-modal a.close-modal.wgh-modal-close::after { display: none !important; }
.wgh-modal a.close-modal.wgh-modal-close:hover { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff !important; }
.wgh-modal.wgh-modal-wide a.close-modal.wgh-modal-close { right: 42px !important; top: 26px !important; }
@media (min-width: 1200px) { .wgh-modal.wgh-modal-wide a.close-modal.wgh-modal-close { right: 41px !important; } }
.wgh-modal .find-part-form-container { float: none; width: 100%; }

/* How to find your model number: appliance groups as light cards with link rows */
.wgh-model-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.wgh-model-group { padding: 20px 20px 14px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-model-group-title { display: block; margin-bottom: 8px; font-size: 17px; font-weight: 700; color: var(--wh-navy); }
.wgh-model-group ul { margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-model-group li { margin: 0; padding: 0; }
.wgh-model-group li::before { display: none !important; }
.wgh-model-group a.arrow-link { display: flex !important; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 10px; margin: 0 -10px; border-radius: 9px; font-size: 15px; font-weight: 500; color: var(--wh-navy) !important; text-decoration: none !important; box-shadow: none !important; }
.wgh-model-group a.arrow-link::before, .wgh-model-group a.arrow-link::after { display: none !important; }
.wgh-model-group a.arrow-link svg { flex: none; color: var(--wh-orange); }
.wgh-model-group a.arrow-link:hover { background: #fff; color: var(--wh-orange) !important; }
/* One appliance's guide: text + images in two light panels */
.wgh-modal .model-no-section .modal-content-col { padding: 0 9px !important; margin-bottom: 18px; }
.wgh-modal .model-no-section .model-no-modal-content { padding: 22px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-modal .model-no-section .model-no-modal-content .content { font-size: 15.5px; line-height: 1.6; color: var(--wh-text-muted); }
.wgh-modal .model-no-section .model-no-modal-content .content strong, .wgh-modal .model-no-section .model-no-modal-content .content b { color: var(--wh-navy); }
.wgh-modal .model-no-section .image-container { margin-top: 16px; padding: 12px; background: #fff; border: 1px solid #e6ebf3; border-radius: 12px; }
@media (max-width: 767px) {
	.wgh-model-groups { grid-template-columns: 1fr; }
	.wgh-modal .wgh-modal-card { padding: 24px 18px 20px !important; }
	.wgh-modal a.close-modal.wgh-modal-close, .wgh-modal.wgh-modal-wide a.close-modal.wgh-modal-close { top: 16px !important; right: 16px !important; width: 38px; height: 38px; }
}

/* Advice Centre: guide card text regular weight (the link made it bold) */
.wgh-guide-card .wgh-guide-text, .wgh-guide-card .wgh-guide-text * { font-weight: 400 !important; }
.wgh-guide-card .wgh-guide-title { font-weight: 700 !important; }
.wgh-guide-card .wgh-guide-count { font-weight: 600 !important; }
/* Latest guides on white, so it doesn't merge with the light guides band above */
.wgh-advice-latest { background: #fff !important; background-image: none !important; border-top: 1px solid var(--wh-border); }
.wgh-advice-latest::before, .wgh-advice-latest::after { display: none !important; }
.wgh-modal .wgh-finder-sub { text-wrap: balance; }

/* Model-number location slider arrows: round white buttons like the product sliders */
.wgh-modal .model-no-locations .slick-arrow {
	position: absolute !important;
	top: 50% !important;
	z-index: 3;
	display: grid !important;
	place-items: center;
	width: 40px !important;
	height: 40px !important;
	margin: -20px 0 0 !important;
	padding: 0 !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 50% !important;
	background: #fff !important;
	box-shadow: 0 8px 18px rgba(11, 25, 73, 0.10);
	font-size: 0 !important;
	opacity: 1 !important;
	cursor: pointer;
}
.wgh-modal .model-no-locations .slick-arrow.previous, .wgh-modal .model-no-locations .slick-prev { left: 10px !important; right: auto !important; }
.wgh-modal .model-no-locations .slick-arrow.next, .wgh-modal .model-no-locations .slick-next { right: 10px !important; left: auto !important; }
.wgh-modal .model-no-locations .slick-arrow::before {
	content: "" !important;
	display: block;
	position: static !important;
	width: 16px;
	height: 16px;
	background: var(--wh-orange) !important;
	opacity: 1 !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
.wgh-modal .model-no-locations .slick-arrow.previous::before, .wgh-modal .model-no-locations .slick-prev::before { transform: scaleX(-1); }
.wgh-modal .model-no-locations .slick-arrow:hover { background: var(--wh-orange) !important; border-color: var(--wh-orange) !important; }
.wgh-modal .model-no-locations .slick-arrow:hover::before { background: #fff !important; }

/* ===================== Advice category page ===================== */
.wgh-guide-hero-pic { aspect-ratio: 2 / 1; display: grid; place-items: center; background: linear-gradient(180deg, #ffffff, #edf2fa) !important; }
.wgh-guide-hero-pic img { width: auto !important; height: 82% !important; max-width: 80%; object-fit: contain !important; mix-blend-mode: multiply; }
.wgh-guides { padding: 64px 0 80px; }
.wgh-guides form.filterable_search { position: relative; float: none; width: 100%; }
.wgh-guides-head { margin-bottom: 22px; }
.wgh-guides-head h2 { margin: 0; font-size: 24px; line-height: 1.2; font-weight: 700; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-advice-col { display: flex; }
.wgh-advice-col .wgh-advice-card { width: 100%; }
.wgh-guides-more { display: flex; justify-content: center; margin-top: 10px; }
.wgh-guides-more .wgh-btn { cursor: pointer; }
.wgh-guides-more .wgh-btn::before, .wgh-guides-more .wgh-btn::after { display: none !important; }
/* Advice category hero: whole appliance picture inside the panel; even intro lines */
.wgh-guide-hero-pic { position: relative; }
.wgh-guide-hero-pic img { position: absolute; inset: 9% 0; margin: auto; width: 100% !important; height: 82% !important; max-width: none; }
.wgh-guide-hero .wgh-page-intro { text-wrap: balance; }

/* Old post-thumbnail hover overlay pointed at a missing favicon on the main site */
.post-list .post-inner a.post-thumbnail::after { background-image: none !important; }

/* ===================== Search results ===================== */
body.search .hero-plain.search-hero-new { display: none; }
.wgh-search-hero .wgh-page-intro { max-width: 540px; text-wrap: balance; }
.wgh-search-form { display: flex; gap: 10px; }
.wgh-search-form input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	height: 52px;
	margin: 0;
	padding: 0 16px;
	border: 1px solid var(--wh-border);
	border-radius: 12px;
	background: #fff;
	font-size: 15.5px;
	color: var(--wh-navy);
	box-shadow: none;
}
.wgh-search-form input[type="search"]::placeholder { color: #8a94ab; text-transform: none; opacity: 1; }
.wgh-search-form input[type="search"]:focus { outline: none; border-color: var(--wh-blue); box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15); }
.wgh-search-form .wgh-btn { flex: none; height: 52px; padding: 0 20px; border: 0; cursor: pointer; }
.wgh-search-form .wgh-btn::before, .wgh-search-form .wgh-btn::after { display: none !important; }
.wgh-search-body { padding: 64px 0 80px; }
.wgh-search-body form.filterable_search { position: relative; float: none; width: 100%; }
.wgh-search-body #filterable_search_results > article { margin-bottom: 26px !important; }
.wgh-prod-view { font-size: 15px; font-weight: 700; color: var(--wh-orange); }

/* Model variants: a grid of tiles */
.wgh-variants { padding: 28px 28px 24px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 18px; }
.wgh-variants-head { margin-bottom: 18px; }
.wgh-variants-head h2 { margin: 0; font-size: 22px; font-weight: 700; color: var(--wh-navy); }
.wgh-variants-head p { margin: 6px 0 0; font-size: 15px; color: var(--wh-text-muted); }
.wgh-variants .table-inner-container { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; float: none; width: 100%; margin: 0 !important; }
.wgh-variants .table-inner-container > .row, .wgh-variants .table-inner-container > .header-row, .wgh-variants .dropdown-item-row.header-title { display: none !important; }
.wgh-variants .dropdown-item-row { margin: 0; padding: 0; border: 0; background: none; }
.wgh-variants .dropdown-item-row a.set_session_model {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid var(--wh-border);
	border-radius: 12px;
	font-size: 15px;
	font-weight: 600;
	color: var(--wh-navy) !important;
	text-decoration: none !important;
	transition: border-color .15s, box-shadow .15s, color .15s;
}
.wgh-variants .dropdown-item-row a.set_session_model::after { content: "\2192"; color: var(--wh-orange); font-weight: 700; }
.wgh-variants .dropdown-item-row a.set_session_model:hover { border-color: var(--wh-blue); color: var(--wh-orange) !important; box-shadow: 0 10px 22px -14px rgba(11, 25, 73, 0.3); }
@media (max-width: 991px) { .wgh-variants .table-inner-container { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .wgh-variants .table-inner-container { grid-template-columns: 1fr; } }

/* Note under results */
.wgh-search-note { display: flex; align-items: center; gap: 16px; margin-top: 18px; padding: 18px 20px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-search-note .wgh-help-ic { width: 46px; height: 46px; border-radius: 12px; }
.wgh-search-note p { margin: 0; font-size: 15px; line-height: 1.55; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-search-note strong { color: var(--wh-navy); }
.wgh-search-note a { color: var(--wh-orange); font-weight: 600; }
@media (max-width: 575px) { .wgh-search-form { flex-direction: column; } }

/* ===================== Product page ===================== */
.wgh-pdp-page { clear: both; float: none; width: 100%; padding: 40px 0 80px !important; margin: 0 !important; background: #fff; }
.wgh-pdp { float: none !important; width: 100%; }
.wgh-pdp-top { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr); gap: 48px; align-items: start; }

/* Gallery */
.wgh-pdp-gallery { position: relative; min-width: 0; }
.wgh-pdp-gallery .woocommerce-product-gallery { float: none !important; width: 100% !important; margin: 0 !important; position: relative; }
.wgh-pdp-gallery .woocommerce-product-gallery__wrapper { margin: 0; }
.wgh-pdp-gallery .flex-viewport, .wgh-pdp-gallery .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:only-child {
	background: linear-gradient(180deg, #f6f8fc, #edf2fa);
	border: 1px solid var(--wh-border);
	border-radius: 18px;
	overflow: hidden;
}
.wgh-pdp-gallery .woocommerce-product-gallery__image a { display: grid !important; place-items: center; aspect-ratio: 4 / 3; padding: 36px; }
.wgh-pdp-gallery .woocommerce-product-gallery__image img { width: auto !important; max-width: 100% !important; height: auto !important; max-height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.wgh-pdp-gallery .flex-control-thumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0 0 !important; padding: 0 !important; list-style: none; }
.wgh-pdp-gallery .flex-control-thumbs li { width: 84px !important; margin: 0 !important; padding: 0; float: none !important; }
.wgh-pdp-gallery .flex-control-thumbs li::before { display: none !important; }
.wgh-pdp-gallery .flex-control-thumbs img { display: block; width: 100%; height: 84px; object-fit: contain; padding: 8px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 12px; opacity: 1 !important; cursor: pointer; transform: none !important; }
.wgh-pdp-gallery .flex-control-thumbs img.flex-active { border-color: var(--wh-orange); box-shadow: 0 0 0 2px rgba(255, 102, 0, 0.18); }
/* Zoom button: round white, magnifier */
.wgh-pdp-gallery .woocommerce-product-gallery__trigger {
	position: absolute !important;
	top: 16px !important;
	right: 16px !important;
	left: auto !important;
	z-index: 5;
	display: grid !important;
	place-items: center;
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	background: #fff !important;
	border: 1px solid var(--wh-border);
	box-shadow: 0 8px 18px -10px rgba(11, 25, 73, 0.3);
	font-size: 0 !important;
	text-indent: 0 !important;
	overflow: hidden;
}
.wgh-pdp-gallery .woocommerce-product-gallery__trigger img { display: none !important; }
.wgh-pdp-gallery .woocommerce-product-gallery__trigger::before {
	content: "" !important;
	position: static !important;
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--wh-navy) !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM184 296c0 13.3 10.7 24 24 24s24-10.7 24-24l0-64 64 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-64 0 0-64c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 64-64 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l64 0 0 64z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM184 296c0 13.3 10.7 24 24 24s24-10.7 24-24l0-64 64 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-64 0 0-64c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 64-64 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l64 0 0 64z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
.wgh-pdp-gallery .woocommerce-product-gallery__trigger::after { display: none !important; }
.wgh-pdp-gallery .onsale { display: none; }
/* Labels on the picture */
.wgh-pdp-flags { position: absolute; top: 16px; left: 16px; z-index: 5; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.wgh-pdp-flag { display: inline-flex; align-items: center; gap: 7px; padding: 7px 12px 7px 10px; background: #fff; border: 1px solid var(--wh-border); border-radius: 10px; box-shadow: 0 8px 18px -12px rgba(11, 25, 73, 0.3); font-size: 13.5px; font-weight: 700; color: var(--wh-navy); }
.wgh-pdp-flag svg { color: var(--wh-blue-dark); }
.wgh-pdp-flag.is-fit svg { color: #1f9d55; }
.wgh-pdp-flag.is-fast svg { color: var(--wh-orange); }

/* Buy box */
.wgh-pdp-buy { position: sticky; top: 200px; min-width: 0; }
.wgh-pdp-buy-card {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 28px 28px 24px !important;
	background: #fff !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 18px !important;
	box-shadow: 0 30px 60px -32px rgba(11, 25, 73, 0.3), 0 10px 24px -16px rgba(11, 25, 73, 0.12) !important;
	text-align: left !important;
}
.wgh-pdp-buy-card::before, .wgh-pdp-buy-card::after { display: none !important; }
.wgh-pdp-buy-card .wgh-eyebrow { display: block; margin-bottom: 8px; }
.wgh-pdp-title { float: none !important; width: auto !important; margin: 0 0 10px !important; font-size: 28px !important; line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -0.025em; text-align: left !important; color: var(--wh-navy); overflow-wrap: anywhere; }
.wgh-pdp-excerpt { margin-bottom: 12px; font-size: 15px; line-height: 1.6; color: var(--wh-text-muted); }
.wgh-pdp-excerpt p { margin: 0; }
.wgh-pdp-purchase { display: block; padding: 16px 0 18px; margin: 4px 0 16px; border-top: 1px solid #edf1f7; border-bottom: 1px solid #edf1f7; }
.wgh-pdp-purchase p.price, .wgh-pdp-purchase .price { float: none !important; display: block; margin: 0 0 14px !important; font-size: 34px !important; line-height: 1.1 !important; font-weight: 800 !important; letter-spacing: -0.03em; color: var(--wh-navy) !important; }
.wgh-pdp-purchase .price small, .wgh-pdp-purchase .price .woocommerce-price-suffix, .wgh-pdp-purchase .price .tax_label { font-size: 13px !important; font-weight: 500; letter-spacing: 0; color: var(--wh-text-muted); }
.wgh-pdp-purchase .price .no-price { display: block; font-size: 15px; font-weight: 500; line-height: 1.55; letter-spacing: 0; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-pdp-purchase .price a.vabut { display: inline-flex !important; align-items: center; margin-top: 12px; padding: 12px 20px !important; border-radius: 10px !important; background: var(--wh-orange) !important; color: #fff !important; font-size: 15px !important; font-weight: 700; letter-spacing: 0; text-decoration: none !important; }
.wgh-pdp-purchase .price a.vabut::before, .wgh-pdp-purchase .price a.vabut::after { display: none !important; }
.wgh-pdp-purchase .stock { display: none; }
.wgh-pdp-purchase form.cart { display: flex !important; align-items: stretch; gap: 10px; float: none !important; width: 100% !important; margin: 0 !important; }
.wgh-pdp-purchase form.cart::before, .wgh-pdp-purchase form.cart::after { display: none !important; }
.wgh-pdp-purchase form.cart .quantity { display: inline-flex !important; align-items: center; flex: none; float: none !important; height: 56px; margin: 0 !important; border: 1px solid var(--wh-border); border-radius: 12px; background: #fff; overflow: hidden; }
.wgh-pdp-purchase form.cart .quantity button.plus, .wgh-pdp-purchase form.cart .quantity button.minus {
	display: grid !important;
	place-items: center;
	width: 42px;
	height: 56px;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #f6f8fc !important;
	color: var(--wh-navy) !important;
	font-size: 0 !important;
	cursor: pointer;
	position: static !important;
}
.wgh-pdp-purchase form.cart .quantity button i { display: none !important; }
.wgh-pdp-purchase form.cart .quantity button::before {
	content: "";
	width: 16px;
	height: 16px;
	background: currentColor;
	-webkit-mask: var(--wgh-q) center / contain no-repeat;
	mask: var(--wgh-q) center / contain no-repeat;
}
.wgh-pdp-purchase form.cart .quantity button.minus { --wgh-q: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E%3C/svg%3E"); }
.wgh-pdp-purchase form.cart .quantity button.plus { --wgh-q: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z'/%3E%3C/svg%3E%3C/svg%3E"); }
.wgh-pdp-purchase form.cart .quantity button:hover { background: #eef4fd !important; color: var(--wh-orange) !important; }
.wgh-pdp-purchase form.cart .quantity input.qty { width: 46px !important; height: 54px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; text-align: center; font-size: 17px !important; font-weight: 700; color: var(--wh-navy) !important; -moz-appearance: textfield; }
.wgh-pdp-purchase form.cart .quantity input.qty::-webkit-outer-spin-button, .wgh-pdp-purchase form.cart .quantity input.qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.wgh-pdp-purchase form.cart .single_add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	flex: 1 1 auto;
	float: none !important;
	height: 56px !important;
	margin: 0 !important;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: var(--wh-orange) !important;
	color: #fff !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: 0;
	text-transform: none !important;
	opacity: 1 !important;
	cursor: pointer;
	box-shadow: 0 12px 24px -12px rgba(255, 102, 0, 0.6) !important;
	transition: background-color .15s, transform .15s;
}
.wgh-pdp-purchase form.cart .single_add_to_cart_button:hover { background: var(--wh-orange-dark) !important; transform: translateY(-1px); }
.wgh-pdp-purchase form.cart .single_add_to_cart_button::after { display: none !important; }
.wgh-pdp-purchase form.cart .single_add_to_cart_button::before {
	content: "" !important;
	display: block !important;
	position: static !important;
	width: 20px !important;
	height: 20px !important;
	opacity: 1 !important;
	transform: none !important;
	visibility: visible !important;
	background: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 576 512'%3E%3Cpath fill='%23000' stroke='none' d='M0 24C0 10.7 10.7 0 24 0L69.5 0c22 0 41.5 12.8 50.6 32l411 0c26.3 0 45.5 25 38.6 50.4l-41 152.3c-8.5 31.4-37 53.3-69.5 53.3l-288.5 0 5.4 28.5c2.2 11.3 12.1 19.5 23.6 19.5L488 336c13.3 0 24 10.7 24 24s-10.7 24-24 24l-288.3 0c-34.6 0-64.3-24.6-70.7-58.5L77.4 54.5c-.7-3.8-4-6.5-7.9-6.5L24 48C10.7 48 0 37.3 0 24zM128 464a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm336-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 576 512'%3E%3Cpath fill='%23000' stroke='none' d='M0 24C0 10.7 10.7 0 24 0L69.5 0c22 0 41.5 12.8 50.6 32l411 0c26.3 0 45.5 25 38.6 50.4l-41 152.3c-8.5 31.4-37 53.3-69.5 53.3l-288.5 0 5.4 28.5c2.2 11.3 12.1 19.5 23.6 19.5L488 336c13.3 0 24 10.7 24 24s-10.7 24-24 24l-288.3 0c-34.6 0-64.3-24.6-70.7-58.5L77.4 54.5c-.7-3.8-4-6.5-7.9-6.5L24 48C10.7 48 0 37.3 0 24zM128 464a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm336-48a48 48 0 1 1 0 96 48 48 0 1 1 0-96z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
.wgh-pdp-purchase form.cart .single_add_to_cart_button i { display: none !important; }

/* Stock + delivery */
.wgh-pdp-status { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 0 0 14px !important; padding: 0 !important; list-style: none; }
.wgh-pdp-status li { display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 0; font-size: 15px; font-weight: 600; color: var(--wh-navy); }
.wgh-pdp-status li::before { display: none !important; }
.wgh-pdp-status li.is-in { color: #1f9d55; }
.wgh-pdp-status li.is-out { color: #c0392b; }
.wgh-pdp-status li.is-out .wgh-prod-dot { background: #c0392b; }
.wgh-pdp-status li svg { color: var(--wh-navy); opacity: .75; }
.wgh-pdp-status li .wgh-prod-dot svg { color: #fff; opacity: 1; }
.wgh-pdp-status a { color: var(--wh-navy) !important; text-decoration: none !important; }
.wgh-pdp-status a:hover { color: var(--wh-orange) !important; }
.wgh-pdp-countdown { display: flex !important; align-items: center; gap: 12px; margin: 0 0 14px; padding: 12px 14px; background: #e9f7ef !important; border: 1px solid #c4e8d2; border-radius: 12px; color: var(--wh-navy) !important; text-align: left !important; }
.wgh-pdp-countdown-ic { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: #fff; color: #1f9d55; }
.wgh-pdp-countdown p { margin: 0 !important; font-size: 14.5px !important; line-height: 1.45; font-weight: 500; text-transform: none !important; color: var(--wh-navy) !important; text-wrap: balance; }
.wgh-pdp-countdown strong { font-weight: 700; color: #177a43; }

/* Fit status */
.wgh-pdp-fit { display: flex !important; align-items: center; gap: 12px; float: none !important; width: 100% !important; margin: 0 0 16px !important; padding: 12px 14px !important; border: 1px solid #e6ebf3 !important; border-radius: 12px !important; background: #f6f8fc !important; text-align: left !important; text-decoration: none !important; color: var(--wh-navy) !important; }
.wgh-pdp-fit::before, .wgh-pdp-fit::after { display: none !important; }
.wgh-pdp-fit .wgh-help-ic { width: 40px; height: 40px; border-radius: 10px; }
.wgh-pdp-fit > div { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
.wgh-pdp-fit strong { font-size: 15.5px; font-weight: 700; color: var(--wh-navy); }
.wgh-pdp-fit span:not(.wgh-help-ic):not(.wgh-prod-dot) { font-size: 14px; line-height: 1.45; color: var(--wh-text-muted); }
.wgh-pdp-fit-arrow { flex: none; color: var(--wh-orange); transition: transform .15s; }
a.wgh-pdp-fit:hover { border-color: var(--wh-blue) !important; background: #fff !important; }
a.wgh-pdp-fit:hover .wgh-pdp-fit-arrow { transform: translateX(3px); }
.wgh-pdp-fit.is-yes { background: #e9f7ef !important; border-color: #c4e8d2 !important; }
.wgh-pdp-fit.is-yes .wgh-prod-dot { width: 24px; height: 24px; }
.wgh-pdp-fit.is-yes a { color: var(--wh-orange); font-weight: 600; }

/* Reassurance, payments, share */
.wgh-pdp-trust { display: flex; flex-direction: column; gap: 8px; margin: 0 0 14px !important; padding: 0 !important; list-style: none; }
.wgh-pdp-trust li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; font-size: 14.5px; color: var(--wh-text-muted); }
.wgh-pdp-trust li::before { display: none !important; }
.wgh-pdp-trust svg { flex: none; color: var(--wh-blue-dark); }
.wgh-pdp-trust a { color: var(--wh-navy) !important; font-weight: 600; text-decoration: none !important; }
.wgh-pdp-trust a:hover { color: var(--wh-orange) !important; }
.wgh-pdp-pay img { display: block; max-width: 100%; height: 30px; width: auto; }
.wgh-pdp-share { display: flex; align-items: center; gap: 12px; margin-top: 16px; padding-top: 14px; border-top: 1px solid #edf1f7; }
.wgh-pdp-share > span { font-size: 14px; font-weight: 600; color: var(--wh-text-muted); }
.wgh-pdp-share .sharethis-inline-share-buttons { flex: 1 1 auto; text-align: left !important; }

/* Section nav */
.wgh-pdp-nav { position: sticky; top: 179px; z-index: 6; display: flex; gap: 6px; margin: 56px 0 8px; padding: 6px; background: #fff; border: 1px solid var(--wh-border); border-radius: 14px; box-shadow: 0 12px 26px -20px rgba(11, 25, 73, 0.3); overflow-x: auto; }
.wgh-pdp-nav a { flex: none; padding: 10px 16px; border-radius: 10px; font-size: 15px; font-weight: 600; color: var(--wh-navy) !important; text-decoration: none !important; white-space: nowrap; transition: background-color .15s, color .15s; }
.wgh-pdp-nav a:hover { background: #f6f8fc; color: var(--wh-orange) !important; }

/* Sections */
.wgh-pdp-sections { display: flex; flex-direction: column; }
.wgh-pdp-section { padding: 40px 0; border-top: 1px solid #edf1f7; scroll-margin-top: 250px; }
.wgh-pdp-sections > .wgh-pdp-section:first-child { border-top: 0; }
.wgh-pdp-section-head { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.wgh-pdp-section-head .wgh-help-ic { width: 46px; height: 46px; border-radius: 12px; }
.wgh-pdp-section-head h2 { margin: 0 !important; font-size: 24px !important; line-height: 1.2 !important; font-weight: 700; letter-spacing: -0.02em; text-transform: none !important; color: var(--wh-navy); }
.wgh-pdp-section-head p { margin: 4px 0 0; font-size: 15px; color: var(--wh-text-muted); }
.wgh-pdp-desc { max-width: 860px; margin-bottom: 22px; }
.wgh-pdp-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; max-width: 980px; margin: 0; }
.wgh-pdp-specs > div { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 12px; }
.wgh-pdp-specs dt { font-size: 13px; font-weight: 600; letter-spacing: .03em; text-transform: uppercase; color: var(--wh-text-muted); }
.wgh-pdp-specs dd { margin: 0; font-size: 15.5px; font-weight: 600; color: var(--wh-navy); overflow-wrap: anywhere; }
/* Technical data (HTML table from the parts catalogue) */
.wgh-pdp-tech { max-width: 980px; overflow-x: auto; }
.wgh-pdp-tech table { width: 100% !important; margin: 0 !important; border: 1px solid #e6ebf3 !important; border-collapse: separate !important; border-spacing: 0; border-radius: 12px; overflow: hidden; background: #fff; }
.wgh-pdp-tech table table { border: 0 !important; border-radius: 0; }
.wgh-pdp-tech td, .wgh-pdp-tech th { padding: 11px 16px !important; border: 0 !important; border-bottom: 1px solid #edf1f7 !important; font-size: 15px; text-align: left !important; vertical-align: top; color: var(--wh-navy); background: none !important; }
.wgh-pdp-tech tr:nth-child(odd) td { background: #f8fafd !important; }
.wgh-pdp-tech tr:last-child td { border-bottom: 0 !important; }
.wgh-pdp-tech td:first-child { font-weight: 600; width: 40%; }
.wgh-pdp-tech i, .wgh-pdp-tech em { font-style: normal; }
/* Fit check form */
.wgh-pdp-fitform { max-width: 980px; padding: 26px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-pdp-fitform .find-part-form-container { float: none; width: 100%; }
.wgh-pdp-fitform .find-part-form > .fields { display: flow-root !important; }
.wgh-pdp-fitform .find-part-form > .fields > label > b { display: block; margin-bottom: 8px; font-size: 14px; font-weight: 600; color: var(--wh-navy); }
/* FAQs */
.wgh-pdp-faqs { display: flex; flex-direction: column; gap: 10px; max-width: 980px; }
.wgh-pdp-faq { background: #fff; border: 1px solid var(--wh-border); border-radius: 12px; overflow: hidden; }
.wgh-pdp-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; font-size: 16px; font-weight: 700; color: var(--wh-navy); cursor: pointer; list-style: none; }
.wgh-pdp-faq summary::-webkit-details-marker { display: none; }
.wgh-pdp-faq summary::after { content: "+"; flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #f6f8fc; color: var(--wh-orange); font-size: 18px; font-weight: 700; }
.wgh-pdp-faq[open] summary::after { content: "\2212"; }
.wgh-pdp-faq-body { padding: 0 18px 16px; font-size: 15px; line-height: 1.6; color: var(--wh-text-muted); }
/* Reviews carousel */
.wgh-pdp-reviews .review-carousels { position: relative; }
.wgh-pdp-reviews .review-card { margin: 0 8px; padding: 22px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-pdp-reviews .review-card h3 { margin: 0 0 6px !important; font-size: 16px !important; font-weight: 700; color: var(--wh-navy); }
.wgh-pdp-reviews .review-stars { margin-bottom: 8px; font-size: 16px; letter-spacing: 2px; color: #f5a50c; }
.wgh-pdp-reviews .review-card p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--wh-text-muted); }

@media (max-width: 1199px) { .wgh-pdp-top { gap: 32px; } }
@media (max-width: 991px) {
	.wgh-pdp-top { grid-template-columns: 1fr; }
	.wgh-pdp-buy { position: static; }
	.wgh-pdp-nav { top: 70px; margin-top: 40px; }
	.wgh-pdp-specs { grid-template-columns: 1fr; }
}

/* Product page: the theme forces block layout and floats the gallery; restore grid + contain floats */
.wgh-pdp .wgh-pdp-top { display: grid !important; }
@media (max-width: 991px) { .wgh-pdp .wgh-pdp-top { grid-template-columns: 1fr !important; } }
.wgh-pdp-gallery .woocommerce-product-gallery, .wgh-pdp-gallery .flex-viewport, .wgh-pdp-gallery .woocommerce-product-gallery__wrapper { display: flow-root !important; float: none !important; width: 100% !important; }
.wgh-pdp-gallery .woocommerce-product-gallery__image { float: none !important; }
/* The theme floats every child of div.product: stack them normally */
.woocommerce div.product.wgh-pdp > * { float: none !important; width: 100% !important; clear: both; }
.woocommerce div.product.wgh-pdp > .wgh-pdp-nav { width: auto !important; }
/* Product page fixes: theme rules were more specific */
.woocommerce div.product.wgh-pdp .wgh-pdp-gallery .woocommerce-product-gallery__trigger {
	top: 16px !important; right: 16px !important; left: auto !important;
	width: 44px !important; height: 44px !important; min-width: 0 !important; min-height: 0 !important;
	padding: 0 !important; background: #fff !important; border: 1px solid var(--wh-border) !important;
}
.woocommerce div.product.wgh-pdp .wgh-pdp-gallery .woocommerce-product-gallery__trigger::before { visibility: visible !important; opacity: 1 !important; }
.woocommerce div.product.wgh-pdp form.cart .quantity button::before { visibility: visible !important; opacity: 1 !important; display: block !important; }
.woocommerce div.product.wgh-pdp .wgh-pdp-gallery .woocommerce-product-gallery__image a { aspect-ratio: 4 / 3 !important; height: auto !important; padding: 32px !important; }
.woocommerce div.product.wgh-pdp .wgh-pdp-gallery .woocommerce-product-gallery__image img { max-height: 100% !important; }
/* Section links scroll with the page (sticking slid them under the header); sections full width */
.woocommerce div.product.wgh-pdp > .wgh-pdp-nav { position: static !important; }
.wgh-pdp-specs, .wgh-pdp-tech, .wgh-pdp-fitform, .wgh-pdp-faqs, .wgh-pdp-desc { max-width: none; }
.wgh-pdp-specs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1199px) { .wgh-pdp-specs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .wgh-pdp-specs { grid-template-columns: 1fr; } }
/* Fit checker panel contains its (floated) form; reviews carousel clipped to the container */
.wgh-pdp-fitform, .wgh-pdp-fitform .find-part-form-container, .wgh-pdp-fitform form.find-part-form { display: flow-root !important; float: none !important; width: 100% !important; }
.wgh-pdp-fitform form.find-part-form { display: grid !important; grid-template-columns: 1fr 1fr; gap: 16px 24px; }
.wgh-pdp-fitform form.find-part-form > .fields { width: 100% !important; margin: 0 !important; }
.wgh-pdp-fitform form.find-part-form > .fields.full { grid-column: 1 / -1; }
.wgh-pdp-fitform form.find-part-form > .fields.d-none { display: none !important; }
@media (max-width: 767px) { .wgh-pdp-fitform form.find-part-form { grid-template-columns: 1fr; } }
.wgh-pdp-reviews { overflow: hidden; padding: 4px 2px 8px; }
.wgh-pdp-reviews .review-carousels > button.slick-prev, .wgh-pdp-reviews .review-carousels > button.slick-next { display: none !important; }
.wgh-pdp-reviews .review-card { text-align: left; }
/* Reviews carousel: whole cards, round arrows top-right of the section */
#customer-reviews { position: relative; }
.wgh-pdp-reviews { overflow: visible; padding: 0; }
.wgh-pdp-reviews .reviews-wrapper { margin: 0 -8px; }
.wgh-pdp-reviews .slick-list { overflow: hidden; }
.wgh-pdp-reviews .slick-track { display: flex !important; }
.wgh-pdp-reviews .slick-slide { height: auto !important; }
.wgh-pdp-reviews .review-card { height: 100%; box-sizing: border-box; }
.wgh-rev-arrow {
	position: absolute; top: 40px; z-index: 3;
	display: grid; place-items: center;
	width: 44px; height: 44px; padding: 0;
	border: 1px solid var(--wh-border); border-radius: 50%;
	background: #fff; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.06);
	font-size: 0; cursor: pointer;
	transition: background .15s, border-color .15s;
}
.wgh-rev-arrow.is-prev { right: 54px; }
.wgh-rev-arrow.is-next { right: 0; }
.wgh-rev-arrow::before {
	content: ""; width: 16px; height: 16px; background: var(--wh-orange);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' stroke='none' d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat;
}
.wgh-rev-arrow.is-prev::before { transform: scaleX(-1); }
.wgh-rev-arrow:hover { background: var(--wh-orange); border-color: var(--wh-orange); }
.wgh-rev-arrow:hover::before { background: #fff; }
.wgh-rev-arrow::after { display: none !important; }
.wgh-rev-arrow::before { visibility: visible !important; opacity: 1 !important; display: block !important; }
.wgh-pdp-reviews .slick-slide { margin: 0 8px !important; }
.wgh-pdp-reviews .review-card { margin: 0 !important; }
/* Gaps between review cards drawn inside each slide (slide margins made 3 cards overflow the row) */
.wgh-pdp-reviews .reviews-wrapper { margin: 0 -10px; }
.wgh-pdp-reviews .slick-slide.review-card { margin: 0 !important; border: 0 !important; border-left: 10px solid #fff !important; border-right: 10px solid #fff !important; border-radius: 26px !important; background-clip: padding-box; box-shadow: inset 0 0 0 1px #e6ebf3; padding: 22px !important; }
/* Reviews: native scrolling row, 3 whole cards (2 tablet, 1 phone) */
.wgh-pdp-reviews .reviews-wrapper.wgh-rev-row {
	display: grid !important;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 40px) / 3);
	gap: 20px;
	margin: 0 !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}
.wgh-pdp-reviews .reviews-wrapper.wgh-rev-row::-webkit-scrollbar { display: none; }
.wgh-pdp-reviews .reviews-wrapper.wgh-rev-row .review-card {
	width: auto !important;
	margin: 0 !important;
	padding: 22px !important;
	border: 1px solid #e6ebf3 !important;
	border-radius: 16px !important;
	box-shadow: none !important;
	background: #f6f8fc !important;
	scroll-snap-align: start;
}
@media (max-width: 991px) { .wgh-pdp-reviews .reviews-wrapper.wgh-rev-row { grid-auto-columns: calc((100% - 20px) / 2); } }
@media (max-width: 599px) { .wgh-pdp-reviews .reviews-wrapper.wgh-rev-row { grid-auto-columns: 100%; } }
.wgh-pdp-reviews .review-card h3, .wgh-pdp-reviews .review-card .review-stars { text-align: left !important; }
.wgh-pdp-page { padding-bottom: 40px !important; }

/* "Added to your basket" popup: same card as the other popups */
.custom-add-to-cart-message.wgh-added { background: rgba(11, 25, 73, 0.55) !important; backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.woocommerce-message:has(.wgh-added) { padding: 0 !important; border: 0 !important; background: none !important; }
.woocommerce-message:has(.wgh-added)::before { display: none !important; }
.wgh-added-card {
	position: relative;
	display: flex !important;
	flex-direction: column;
	align-items: center;
	width: 100%;
	padding: 36px 34px 30px !important;
	background: #fff !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 20px !important;
	box-shadow: 0 40px 80px -30px rgba(11, 25, 73, 0.45), 0 12px 30px -16px rgba(11, 25, 73, 0.2) !important;
	text-align: center;
}
.wgh-added-card a.close-modal.wgh-modal-close {
	position: absolute !important; top: 18px !important; right: 18px !important; left: auto !important;
	display: grid !important; place-items: center; width: 40px; height: 40px;
	border-radius: 50%; background: #f6f8fc; border: 1px solid var(--wh-border);
	color: var(--wh-navy) !important; font-size: 0 !important; text-decoration: none !important;
}
.wgh-added-card a.close-modal.wgh-modal-close::before, .wgh-added-card a.close-modal.wgh-modal-close::after { display: none !important; }
.wgh-added-card a.close-modal.wgh-modal-close:hover { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff !important; }
.wgh-added-ic { display: grid; place-items: center; width: 60px; height: 60px; margin-bottom: 14px; border-radius: 50%; background: #e3f5ea; color: #1f9d55; }
.wgh-added-card .message.title { display: block; margin: 0 0 6px !important; font-size: 24px !important; line-height: 1.2 !important; font-weight: 700 !important; letter-spacing: -0.02em; text-transform: none !important; color: var(--wh-navy) !important; }
.wgh-added-items { display: block; max-width: 420px; margin-bottom: 22px; font-size: 15px; line-height: 1.5; color: var(--wh-text-muted); text-wrap: balance; }
.wgh-added-card .buttons { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 12px; width: 100%; }
.wgh-added-card .buttons .wgh-btn { flex: 1 1 200px; height: 52px; padding: 0 18px; }
.wgh-added-card .buttons .wgh-btn::before, .wgh-added-card .buttons .wgh-btn::after { display: none !important; }
.wgh-added-card .buttons .spacer { display: none !important; }

/* Buy card: countdown and fit box share one width, with equal spacing */
.wgh-pdp-buy-card .wgh-pdp-countdown, .wgh-pdp-buy-card .wgh-pdp-fit { box-sizing: border-box !important; width: 100% !important; max-width: 100% !important; margin: 16px 0 0 !important; }
.wgh-pdp-buy-card .wgh-pdp-trust { margin-top: 22px !important; }
/* Trust list: all three lines the same weight and colour */
.wgh-pdp-trust li { font-weight: 600; color: var(--wh-navy); }

/* Spec boxes: icon tile on the left */
.wgh-pdp-specs { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.wgh-pdp-specs > div { flex-direction: row !important; align-items: center; gap: 14px !important; padding: 16px 18px !important; }
.wgh-pdp-specs > div > div { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.wgh-spec-ic { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 12px; }
.wgh-spec-ic.is-b { background: #e4effb; color: var(--wh-blue-dark); }
.wgh-spec-ic.is-g { background: #e3f5ea; color: #1f9d55; }
.wgh-spec-ic.is-r { background: #fde8e8; color: #c53030; }
.wgh-spec-ic.is-o { background: #fdeee2; color: var(--wh-orange); }
@media (max-width: 991px) { .wgh-pdp-specs { grid-template-columns: 1fr !important; } }

/* Breadcrumbs: one tidy line, no scrollbar; the last crumb shortens with "…" when space runs out */
.hero-breadcrumbs p#breadcrumbs { display: block !important; overflow: hidden !important; padding-bottom: 0 !important; scrollbar-width: none; }
.hero-breadcrumbs p#breadcrumbs::-webkit-scrollbar { display: none; }
.hero-breadcrumbs p#breadcrumbs > span { display: flex !important; align-items: center; flex-wrap: nowrap; gap: 0 8px; min-width: 0; white-space: nowrap; }
.hero-breadcrumbs p#breadcrumbs > span > span { display: block !important; flex: 0 1 auto; min-width: 2.5em; margin: 0 !important; overflow: hidden; text-overflow: ellipsis; }
.hero-breadcrumbs p#breadcrumbs > span > span:first-child { flex-shrink: 0; }
.hero-breadcrumbs p#breadcrumbs > span > span:last-child { flex-shrink: 1000; min-width: 4em; color: var(--wh-text-muted); }
.hero-breadcrumbs p#breadcrumbs > span > span > a { display: inline !important; }

/* Crumbs keep their full names; only the current page name shortens */
.hero-breadcrumbs p#breadcrumbs > span > span { flex-shrink: 0 !important; min-width: 0 !important; }
.hero-breadcrumbs p#breadcrumbs > span > span:last-child { flex: 0 1 auto !important; min-width: 0 !important; }
.hero-breadcrumbs p#breadcrumbs > span > b { flex: none; margin: 0 !important; }
/* Phones: just a "back to" link to the parent page */
@media (max-width: 767px) {
	.hero-breadcrumbs p#breadcrumbs > span > * { display: none !important; }
	.hero-breadcrumbs p#breadcrumbs > span > span:nth-last-child(3) { display: flex !important; align-items: center; flex-shrink: 1 !important; overflow: hidden; }
	.hero-breadcrumbs p#breadcrumbs > span > span:nth-last-child(3) a { overflow: hidden; text-overflow: ellipsis; }
	.hero-breadcrumbs p#breadcrumbs > span > span:nth-last-child(3)::before { content: "\2190"; margin-right: 8px; color: var(--wh-orange); }
}

/* No hover zoom copy over product images */
.woocommerce-product-gallery .zoomImg { display: none !important; }

/* Fit form: step numbers and ticks sit level with their field titles */
.wgh-pdp-fitform .find-part-form .fields::before, .wgh-pdp-fitform .find-part-form .fields.half::before, .wgh-pdp-fitform .find-part-form .fields.full::before { top: -6px !important; margin-top: 0 !important; }

/* Buy card head: who it fits on the left, price top right */
.wgh-pdp-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 18px; }
.wgh-pdp-head .wgh-eyebrow { margin: 0 !important; min-width: 0; }
.wgh-pdp-head p.price, .wgh-pdp-head .price { flex: none; float: none !important; margin: 0 0 0 auto !important; font-size: 30px !important; line-height: 1 !important; font-weight: 800 !important; letter-spacing: -0.03em; color: var(--wh-navy) !important; white-space: nowrap; }
.wgh-pdp-head .price small, .wgh-pdp-head .price .woocommerce-price-suffix { font-size: 13px !important; font-weight: 500; letter-spacing: 0; color: var(--wh-text-muted); }

/* Section links: pill buttons with icons */
.woocommerce div.product.wgh-pdp > .wgh-pdp-nav { display: flex !important; flex-wrap: wrap; gap: 10px; margin: 56px 0 8px !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; overflow: visible; }
.wgh-pdp-nav a { display: inline-flex !important; align-items: center; gap: 8px; height: 44px; padding: 0 18px !important; border: 1px solid var(--wh-border) !important; border-radius: 999px !important; background: #f6f8fc !important; font-size: 15px !important; font-weight: 600 !important; color: var(--wh-navy) !important; }
.wgh-pdp-nav a::before, .wgh-pdp-nav a::after { display: none !important; }
.wgh-pdp-nav a svg { flex: none; color: var(--wh-blue-dark); transition: color .15s; }
.wgh-pdp-nav a:hover { background: var(--wh-orange) !important; border-color: var(--wh-orange) !important; color: #fff !important; }
.wgh-pdp-nav a:hover svg { color: #fff; }

/* Stock + delivery on one line; trust points in one row across the card */
.wgh-pdp-buy-card .wgh-pdp-status { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center; gap: 24px !important; }
.wgh-pdp-buy-card .wgh-pdp-status li { flex: none; width: auto !important; white-space: nowrap; }
.wgh-pdp-buy-card .wgh-pdp-trust { flex-direction: row !important; flex-wrap: nowrap; justify-content: space-between; gap: 12px !important; }
.wgh-pdp-buy-card .wgh-pdp-trust li { flex: none; width: auto !important; float: none !important; gap: 8px; white-space: nowrap; font-size: 14px; }

/* Buy card in clear sections: title / buy / stock & fit / trust & payment / share,
   each split by a line with the same 24px space either side */
.wgh-pdp-buy-card .wgh-pdp-title { margin-bottom: 0 !important; }
.wgh-pdp-buy-card .wgh-pdp-excerpt { margin-top: 12px; }
.wgh-pdp-buy-card .wgh-pdp-purchase { margin: 24px 0 0 !important; padding: 24px 0 !important; border-top: 1px solid #e6ebf3 !important; border-bottom: 1px solid #e6ebf3 !important; }
.wgh-pdp-buy-card .wgh-pdp-status { margin: 24px 0 0 !important; }
.wgh-pdp-buy-card .wgh-pdp-countdown, .wgh-pdp-buy-card .wgh-pdp-fit { margin-top: 16px !important; margin-bottom: 0 !important; }
.wgh-pdp-buy-card .wgh-pdp-trust { margin: 24px 0 0 !important; padding: 24px 0 0 !important; border-top: 1px solid #e6ebf3; }
.wgh-pdp-buy-card .wgh-pdp-pay { margin: 18px 0 0 !important; }
.wgh-pdp-buy-card .wgh-pdp-share { margin-top: 24px !important; padding-top: 24px !important; border-top: 1px solid #e6ebf3 !important; }
.wgh-pdp-buy-card .wgh-pdp-status, .wgh-pdp-buy-card .wgh-pdp-trust, .wgh-pdp-buy-card .wgh-pdp-pay { float: none !important; clear: both; width: 100% !important; }
.wgh-pdp-buy-card .wgh-pdp-purchase, .wgh-pdp-buy-card .wgh-pdp-trust, .wgh-pdp-buy-card .wgh-pdp-share { border-color: #dde3ec !important; }
/* Section links: same corner radius as the site's buttons, not pills */
.wgh-pdp-nav a { border-radius: 10px !important; }
/* Trust points: three equal tiles across the card, icon above the words */
.wgh-pdp-buy-card .wgh-pdp-trust { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px !important; }
.wgh-pdp-buy-card .wgh-pdp-trust li { flex-direction: column; justify-content: center; gap: 6px !important; padding: 12px 6px !important; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 10px; text-align: center; font-size: 13.5px !important; }
.wgh-pdp-buy-card .wgh-pdp-trust li svg { width: 20px; height: 20px; }

/* Payment logos centred under the trust tiles */
.wgh-pdp-buy-card .wgh-pdp-pay { display: flex !important; justify-content: center; }
.wgh-pdp-buy-card .wgh-pdp-pay img { margin: 0 auto !important; height: 32px; }

/* Trust tiles: tight line height so the space above the icon matches the space below the words */
.wgh-pdp-buy-card .wgh-pdp-trust li, .wgh-pdp-buy-card .wgh-pdp-trust li a { line-height: 1.2 !important; }
.wgh-pdp-buy-card .wgh-pdp-trust li { padding: 16px 6px !important; gap: 8px !important; }

/* Trust tiles: bigger icons, one colour each */
.wgh-pdp-buy-card .wgh-pdp-trust li svg { width: 28px !important; height: 28px !important; }
.wgh-pdp-buy-card .wgh-pdp-trust li:nth-child(1) svg { color: #1f9d55; }
.wgh-pdp-buy-card .wgh-pdp-trust li:nth-child(2) svg { color: var(--wh-orange); }
.wgh-pdp-buy-card .wgh-pdp-trust li:nth-child(3) svg { color: var(--wh-blue-dark); }

/* Added-to-basket popup: icons drawn as lines (the old theme filled them in), proper buttons and hovers */
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added svg { display: block; fill: none !important; stroke: currentColor !important; overflow: visible; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added svg circle { fill: none !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .wgh-added-ic { color: #1f9d55 !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .wgh-added-ic svg { width: 28px; height: 28px; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added a.close-modal.wgh-modal-close { color: var(--wh-navy) !important; font-size: 0 !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added a.close-modal.wgh-modal-close svg { width: 18px; height: 18px; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added a.close-modal.wgh-modal-close:hover { background: var(--wh-orange) !important; border-color: var(--wh-orange) !important; color: #fff !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn {
	display: inline-flex !important; align-items: center; justify-content: center; gap: 10px;
	width: auto !important; height: 52px !important; padding: 0 18px !important; margin: 0 !important;
	border-radius: 10px !important; font-size: 16px !important; font-weight: 700 !important; line-height: 1 !important;
	text-decoration: none !important; box-shadow: none !important; transform: none !important;
	transition: background-color .15s, border-color .15s, color .15s !important;
}
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn svg { width: 18px; height: 18px; flex: none; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn-primary { background: var(--wh-orange) !important; border: 1px solid var(--wh-orange) !important; color: #fff !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn-primary:hover { background: #ff6600 !important; border-color: #ff6600 !important; color: #fff !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn-outline { background: #fff !important; border: 1px solid var(--wh-border) !important; color: var(--wh-navy) !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn-outline:hover { background: #fff !important; border-color: var(--wh-orange) !important; color: var(--wh-orange) !important; }
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn::before, .woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added .buttons a.wgh-btn::after { display: none !important; content: none !important; }

/* Popup: words sit closer to the buttons */
.wgh-added-items { margin-bottom: 24px !important; }
.wgh-added-card .buttons { margin-top: 0 !important; }

/* Basket: stock lines as on the product cards; article number label and value on one baseline */
.wgh-basket-meta { min-height: 0 !important; margin: 2px 0; font-size: 14px; }
.wgh-basket-info dl.variation { display: flex !important; align-items: baseline; flex-wrap: wrap; gap: 0 6px; line-height: 1.4 !important; }
.wgh-basket-info dl.variation dt, .wgh-basket-info dl.variation dd, .wgh-basket-info dl.variation dd p { float: none !important; margin: 0 !important; padding: 0 !important; font-size: 14px !important; line-height: 1.4 !important; font-weight: 500 !important; color: var(--wh-text-muted) !important; }
.wgh-basket-info dl.variation dd p { display: inline; }

/* ===================== Model finder page ===================== */
.wgh-mf-cards { padding: 80px 0 !important; background: #fff !important; }
.wgh-mf-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.wgh-mf-grid .product-cat-inner > a.wgh-cat-card { cursor: pointer; text-decoration: none !important; }
.wgh-mf-help .wgh-mf-help-ic { height: 170px; display: grid; place-items: center; background: linear-gradient(180deg, #fff3ea, #ffe7d6); border-bottom: 1px solid #fde3d0; color: var(--wh-orange); }
.wgh-mf-help .wgh-mf-help-ic svg { width: 54px; height: 54px; }
.wgh-mf-tips { padding: 80px 0 !important; background: #f6f8fc !important; border-top: 1px solid var(--wh-border); }
.wgh-mf-tips .title-row { margin-bottom: 40px; }
.wgh-mf-tip-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.wgh-mf-tip { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px; background: #fff; border: 1px solid var(--wh-border); border-radius: 14px; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); }
.wgh-mf-tip .wgh-help-ic { width: 48px; height: 48px; border-radius: 12px; margin-bottom: 6px; }
.wgh-help-ic.is-g { background: #e3f5ea; color: #1f9d55; }
.wgh-mf-tip h4 { margin: 0 !important; font-size: 18px !important; font-weight: 700 !important; line-height: 1.3 !important; color: var(--wh-navy) !important; }
.wgh-mf-tip p { margin: 0 !important; font-size: 15px; line-height: 1.6; font-weight: 400; color: var(--wh-text-muted); text-wrap: pretty; }
.wgh-mf-cta { display: flex; justify-content: center; margin-top: 40px; }
@media (max-width: 1199px) { .wgh-mf-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
	.wgh-mf-cards, .wgh-mf-tips { padding: 56px 0 !important; }
	.wgh-mf-grid, .wgh-mf-tip-grid { grid-template-columns: 1fr; gap: 16px; }
}

/* Model number popup: normal line spacing, matching picture boxes, slider arrows under the picture */
.wgh-modal .model-no-section .model-no-modal-content .content p, .wgh-modal .model-no-section .model-no-modal-content .content li { margin: 0 0 10px !important; font-size: 15.5px !important; line-height: 1.6 !important; }
.wgh-modal .model-no-section .model-no-modal-content .content > :last-child { margin-bottom: 0 !important; }
.wgh-modal .model-no-section .image-container { height: 280px; margin-top: 18px !important; overflow: hidden; }
.wgh-modal .model-no-section .image-container img { max-height: 100% !important; max-width: 100% !important; width: auto !important; height: auto !important; object-fit: contain; }
.wgh-modal .model-no-locations .image-container { margin-top: 0 !important; }
.wgh-modal .model-no-section .model-no-locations { margin-top: 18px !important; }
.wgh-modal .model-no-locations.slick-initialized { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 12px; }
.wgh-modal .model-no-locations .slick-list { flex: 0 0 100%; order: 0; }
.wgh-modal .model-no-locations .slick-arrow { position: static !important; order: 1; margin: 2px 0 0 !important; top: auto !important; left: auto !important; right: auto !important; transform: none !important; display: flex !important; align-items: center; justify-content: center; line-height: 1 !important; }
.wgh-modal .model-no-locations .slick-arrow::before { margin: 0 !important; line-height: 1 !important; }

/* Keep both picture boxes level when the right one has slider arrows underneath */
.wgh-modal .model-no-section:has(.model-no-locations .slick-arrow) .modal-content-col:first-child .model-no-modal-content > .image-container { margin-bottom: 54px; }

/* Location slider: the old theme fixed its height and clipped it, hiding the arrows */
.wgh-modal .model-no-section .model-no-locations { height: auto !important; max-height: none !important; overflow: visible !important; }
.wgh-modal .model-no-locations .slick-list { overflow: hidden; }

/* ===================== Advice Centre guide ===================== */
.wgh-article-meta { display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0 !important; padding: 0 !important; list-style: none; }
.wgh-article-meta li { display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 8px 14px; background: #fff; border: 1px solid var(--wh-border); border-radius: 10px; font-size: 14px; font-weight: 600; line-height: 1.2; color: var(--wh-navy); }
.wgh-article-meta li::before { display: none !important; }
.wgh-article-meta li svg { flex: none; color: var(--wh-blue-dark); }
.wgh-article-hero .wgh-hero-actions { margin-top: 26px; }
.wgh-article-main { min-width: 0; max-width: 760px; }
.wgh-article-video { margin: 0 0 40px; padding: 10px; background: #f6f8fc; border: 1px solid var(--wh-border); border-radius: 18px; }
.wgh-article-video-frame { position: relative; padding-top: 56.25%; border-radius: 12px; overflow: hidden; background: #0b1949; }
.wgh-article-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
/* The guide's own content block starts with a heading; no gap above it */
.wgh-article-body .wgh-prose > :first-child, .wgh-article-body .wgh-prose .standard-post-content > :first-child { margin-top: 0 !important; }
/* Numbered steps: orange number discs */
.wgh-article-body .wgh-prose ol { counter-reset: wgh-step; list-style: none; padding-left: 0; }
.wgh-article-body .wgh-prose ol > li { counter-increment: wgh-step; position: relative; margin: 0 0 14px; padding: 0 0 0 46px; }
.wgh-article-body .wgh-prose ol > li::before { content: counter(wgh-step); position: absolute; left: 0; top: .1em; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #ffe0cc; color: var(--wh-orange); font-size: 14px; font-weight: 700; line-height: 1; visibility: visible; }
.wgh-article-body .wgh-prose ol > li span[style] { font-size: inherit !important; }
.wgh-aside-ic.is-o { background: #ffe0cc !important; color: var(--wh-orange) !important; }
.wgh-article-body .wgh-aside-help + .wgh-aside-help { margin-top: 16px; }
/* More guides: light band under a line, same cards as the Advice Centre */
.wgh-article-more { padding: 80px 0; background: #f6f8fc; border-top: 1px solid var(--wh-border); }
.wgh-article-more .title-row { margin-bottom: 40px; }
.wgh-article-more-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.wgh-article-more-head .wgh-btn { flex: none; }
.wgh-article-more .wgh-advice-col { margin-bottom: 0 !important; }
@media (max-width: 991px) {
	.wgh-article-more-head { flex-direction: column; align-items: flex-start; }
	.wgh-article-more .wgh-advice-col { margin-bottom: 24px !important; }
}
@media (max-width: 767px) { .wgh-article-more { padding: 56px 0; } }

.wgh-article-meta li { flex: none !important; width: auto !important; float: none !important; }
.wgh-article-body .wgh-prose { display: flow-root; }
.wgh-article-body .wgh-prose * { float: none; }
.wgh-article-body .wgh-aside-help + .wgh-aside-help .wgh-aside-ic { background: #d9eefb !important; color: var(--wh-blue-dark) !important; }

/* Guide hero: the theme floats lists, which squeezed the buttons beside the info chips */
.wgh-article-hero .wgh-article-meta { float: none !important; width: 100% !important; }
.wgh-article-hero .wgh-hero-actions { clear: both; width: 100%; }

/* Model number popup: slider arrows on the left and right edges of the picture, half outside the box */
.wgh-modal .model-no-locations.slick-initialized { display: block !important; position: relative !important; }
.wgh-modal .model-no-locations .slick-arrow { position: absolute !important; top: 50% !important; margin: -20px 0 0 !important; order: 0; }
.wgh-modal .model-no-locations .slick-arrow.previous, .wgh-modal .model-no-locations .slick-prev { left: -20px !important; right: auto !important; }
.wgh-modal .model-no-locations .slick-arrow.next, .wgh-modal .model-no-locations .slick-next { right: -20px !important; left: auto !important; }
.wgh-modal .model-no-section:has(.model-no-locations .slick-arrow) .modal-content-col:first-child .model-no-modal-content > .image-container { margin-bottom: 0 !important; }

/* Search results hero: the search panel in its own white card, like the category page finder */
.wgh-search-hero .part-finder-slider-container.wgh-search-card {
	position: relative; float: none; width: 100%; height: auto;
	padding: 30px 30px 28px !important;
	background: #fff !important;
	border: 1px solid var(--wh-border) !important;
	border-radius: 18px !important;
	box-shadow: 0 30px 60px -28px rgba(11, 25, 73, 0.30), 0 10px 24px -14px rgba(11, 25, 73, 0.14) !important;
}
.wgh-search-hero .wgh-search-card::before, .wgh-search-hero .wgh-search-card::after { display: none !important; }
.wgh-search-hero .wgh-search-card .wgh-finder-head { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #edf1f7; }
.wgh-search-hero .wgh-search-card .wgh-search-form input[type="search"] { background: #f6f8fc; }
@media (max-width: 575px) { .wgh-search-hero .part-finder-slider-container.wgh-search-card { padding: 24px 20px 20px !important; } }

/* Breadcrumb strip: words centred top to bottom */
.container-fluid.hero-breadcrumbs { padding-top: 10px !important; padding-bottom: 10px !important; }
.hero-breadcrumbs p#breadcrumbs { margin: 0 !important; line-height: 22px !important; }
.hero-breadcrumbs p#breadcrumbs > span { align-items: center; min-height: 22px; }

/* Share strip centred in the buy card */
.wgh-pdp-buy-card .wgh-pdp-share { justify-content: center !important; }
.wgh-pdp-buy-card .wgh-pdp-share .sharethis-inline-share-buttons { flex: 1 1 auto !important; width: auto !important; min-width: 0; margin: 0 !important; text-align: center !important; }
.wgh-pdp-buy-card .wgh-pdp-share > span { display: none !important; }

/* Review cards: names in normal bold, not the theme black weight */
#customer-reviews .review-card h3, .wgh-rev-row .review-card h3 { font-weight: 700 !important; font-size: 16px !important; letter-spacing: -0.01em; }

/* Guide steps: title and text flow as one paragraph (the theme made the bold title a block),
   number disc level with the first line */
.wgh-article-body .wgh-prose ol > li { line-height: 1.7 !important; }
.wgh-article-body .wgh-prose ol > li strong, .wgh-article-body .wgh-prose ol > li b { display: inline !important; font-size: inherit !important; line-height: inherit !important; margin: 0 !important; }
.wgh-article-body .wgh-prose ol > li span { font-size: inherit !important; line-height: inherit !important; }
.wgh-article-body .wgh-prose ol > li::before { top: calc((1.7em - 30px) / 2) !important; }
/* Guide body: reading column fills the space up to the sidebar; even gaps between sidebar cards */
.wgh-article-body .wgh-article-main { max-width: none !important; }
.wgh-article-body .wgh-page-grid { gap: 56px; }
.wgh-article-body .wgh-aside-sticky { display: flex; flex-direction: column; gap: 20px; }
.wgh-article-body .wgh-aside-sticky > * { margin: 0 !important; }

/* Guide hero: picture as tall as the text beside it */
@media (min-width: 992px) {
	.wgh-article-hero .wgh-page-hero-grid { align-items: stretch; }
	.wgh-article-hero .wgh-page-hero-media-wrap { display: flex; }
	.wgh-article-hero .wgh-page-hero-media { flex: 1 1 auto; aspect-ratio: auto !important; height: auto; min-height: 340px; }
}

/* More guides heading: left aligned with its line below */
.wgh-article-more-head h3, .wgh-article-more-head .wgh-section-sub { text-align: left !important; margin-left: 0 !important; }

/* Guide hero: info chips over the top right of the picture */
.wgh-article-hero .wgh-page-hero-media { position: relative; }
.wgh-article-hero .wgh-page-hero-media .wgh-article-meta { position: absolute; top: 16px; right: 16px; z-index: 2; justify-content: flex-end; width: auto !important; max-width: calc(100% - 32px); margin: 0 !important; gap: 8px; }
.wgh-article-hero .wgh-page-hero-media .wgh-article-meta li { background: rgba(255, 255, 255, 0.94); border-color: rgba(255, 255, 255, 0.6); box-shadow: 0 8px 20px -10px rgba(11, 25, 73, 0.45); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }

/* In-page jumps (product section links, guide "On this page"): the header offset is already
   applied by html scroll-padding-top, so these only add a small breathing gap */
@media (min-width: 992px) {
	.wgh-pdp-section, .wgh-pdp-section[id], .wgh-prose h2, .wgh-prose h3, .wgh-prose h4, .wgh-prose .standard-post-content > ol > li > strong:first-child { scroll-margin-top: 24px !important; }
}
@media (max-width: 991px) {
	.wgh-pdp-section, .wgh-pdp-section[id], .wgh-prose h2, .wgh-prose h3, .wgh-prose h4 { scroll-margin-top: 96px !important; }
}

/* Technical information: spec sheet, two columns of label / value rows */
.wgh-pdp-techlist { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; margin: 0; padding: 8px 24px; background: #fff; border: 1px solid var(--wh-border); border-radius: 14px; }
.wgh-pdp-techlist > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid #edf1f7; }
.wgh-pdp-techlist dt { margin: 0; font-size: 15px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-pdp-techlist dd { margin: 0; font-size: 15px; font-weight: 700; color: var(--wh-navy); text-align: right; }
/* no line under the last row of each column */
.wgh-pdp-techlist > div:last-child, .wgh-pdp-techlist > div:nth-last-child(2) { border-bottom: 0; }
@media (max-width: 767px) {
	.wgh-pdp-techlist { grid-template-columns: 1fr; padding: 4px 18px; }
	.wgh-pdp-techlist > div:nth-last-child(2) { border-bottom: 1px solid #edf1f7; }
}

/* ===================== My Account ===================== */
.wgh-account-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 420px); gap: 56px; align-items: center; }
.wgh-account-card { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 14px 16px; padding: 24px; background: #fff; border: 1px solid var(--wh-border); border-radius: 18px; box-shadow: 0 30px 60px -28px rgba(11, 25, 73, 0.30), 0 10px 24px -14px rgba(11, 25, 73, 0.14); }
.wgh-account-avatar { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: linear-gradient(135deg, #2FA7E2, #0B1949); color: #fff; font-size: 22px; font-weight: 700; }
.wgh-account-who { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.wgh-account-name { font-size: 18px; font-weight: 700; color: var(--wh-navy); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wgh-account-email { font-size: 14px; color: var(--wh-text-muted); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wgh-account-card .wgh-btn { grid-column: 1 / -1; justify-content: center; height: 48px; cursor: pointer; }
.wgh-account-page .wgh-btn, .wgh-account-hero .wgh-btn { display: inline-flex !important; align-items: center; gap: 10px; border-radius: 10px !important; font-weight: 700 !important; text-decoration: none !important; }
.wgh-account-page .wgh-btn::before, .wgh-account-page .wgh-btn::after, .wgh-account-hero .wgh-btn::before, .wgh-account-hero .wgh-btn::after { display: none !important; }

/* Account area: sidebar menu + content */
.wgh-account-page .woocommerce { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 40px; align-items: start; }
.wgh-account-page:not(.is-signed-in) .woocommerce { display: block; }
.wgh-account-page .woocommerce::before, .wgh-account-page .woocommerce::after { display: none !important; }
.wgh-account-page .woocommerce-MyAccount-navigation, .wgh-account-page .woocommerce-MyAccount-content { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
.wgh-account-page .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.wgh-account-nav { position: sticky; top: 200px; padding: 10px !important; background: #fff; border: 1px solid var(--wh-border); border-radius: 16px; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); }
.wgh-account-nav ul { display: flex !important; flex-direction: column; gap: 2px; margin: 0 !important; padding: 0 !important; list-style: none; border: 0 !important; }
.wgh-account-nav ul + ul { margin-top: 8px !important; padding-top: 8px !important; border-top: 1px solid #edf1f7 !important; }
.wgh-account-nav li { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
.wgh-account-nav li::before, .wgh-account-nav li::after { display: none !important; }
.wgh-account-nav a, .wgh-account-nav button { display: flex !important; align-items: center; gap: 12px; width: 100%; padding: 11px 14px !important; border: 0; border-radius: 10px; background: none; font: inherit; font-size: 15px !important; font-weight: 600 !important; line-height: 1.2; letter-spacing: 0; text-transform: none !important; text-align: left; color: var(--wh-navy) !important; text-decoration: none !important; cursor: pointer; box-shadow: none !important; }
.wgh-account-nav a::before, .wgh-account-nav a::after, .wgh-account-nav button::before, .wgh-account-nav button::after { display: none !important; }
.wgh-account-nav svg { flex: none; color: var(--wh-blue-dark); }
.wgh-account-nav a:hover, .wgh-account-nav button:hover { background: #f6f8fc; }
.wgh-account-nav li.is-active a, .wgh-account-nav a[aria-current="page"] { background: #fff1e7; color: var(--wh-orange) !important; }
.wgh-account-nav li.is-active a svg, .wgh-account-nav a[aria-current="page"] svg { color: var(--wh-orange); }

/* Panels */
.wgh-acc-panel { padding: 28px; background: #fff; border: 1px solid var(--wh-border); border-radius: 16px; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); }
.wgh-acc-panel + .wgh-acc-panel { margin-top: 24px; }
.wgh-acc-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.wgh-acc-panel-head h2 { margin: 0 !important; font-size: 22px !important; font-weight: 700 !important; letter-spacing: -0.02em; color: var(--wh-navy) !important; }
.wgh-acc-more { display: inline-flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 600; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-acc-lead { margin: -8px 0 20px !important; font-size: 15px; color: var(--wh-text-muted); }

/* Dashboard tiles */
.wgh-acc-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
.wgh-acc-tile { display: flex; align-items: center; gap: 14px; padding: 20px; background: #fff; border: 1px solid var(--wh-border); border-radius: 16px; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); text-decoration: none !important; transition: transform .18s, box-shadow .18s, border-color .18s; }
.wgh-acc-tile:hover { transform: translateY(-2px); border-color: var(--wh-blue); box-shadow: 0 18px 40px -18px rgba(11, 25, 73, 0.24); }
.wgh-acc-tile .wgh-help-ic { flex: none; width: 46px; height: 46px; border-radius: 12px; }
.wgh-acc-tile-text { display: flex; flex-direction: column; gap: 3px; flex: 1 1 auto; min-width: 0; }
.wgh-acc-tile-text strong { font-size: 16px; font-weight: 700; color: var(--wh-navy); }
.wgh-acc-tile-text span { font-size: 13.5px; font-weight: 400; color: var(--wh-text-muted); }
.wgh-acc-tile .wgh-cat-arrow { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #f6f8fc; color: var(--wh-orange); }
.wgh-acc-tile:hover .wgh-cat-arrow { background: var(--wh-orange); color: #fff; }

/* Order rows */
.wgh-order-list { display: flex; flex-direction: column; gap: 12px; }
.wgh-order-row { display: flex; align-items: center; gap: 20px; padding: 18px 20px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 14px; text-decoration: none !important; transition: border-color .15s, background-color .15s; }
.wgh-order-row:hover { background: #fff; border-color: var(--wh-blue); }
.wgh-order-main { display: flex; flex-direction: column; gap: 6px; flex: 1 1 auto; min-width: 0; }
.wgh-order-top { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.wgh-order-top strong { font-size: 16px; font-weight: 700; color: var(--wh-navy); }
.wgh-order-meta { font-size: 14px; color: var(--wh-text-muted); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.wgh-order-status { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 8px; font-size: 12.5px; font-weight: 700; line-height: 1.2; }
.wgh-order-status.is-active { background: #e4effb; color: var(--wh-blue-dark); }
.wgh-order-status.is-done { background: #e3f5ea; color: #1f9d55; }
.wgh-order-status.is-off { background: #fde8e8; color: #c53030; }
.wgh-order-status.is-wait { background: #fff1e7; color: var(--wh-orange); }
.wgh-order-total { flex: none; font-size: 18px; font-weight: 800; letter-spacing: -0.02em; color: var(--wh-navy); }
.wgh-order-row .wgh-cat-arrow { flex: none; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #fff; border: 1px solid var(--wh-border); color: var(--wh-orange); }
.wgh-order-row:hover .wgh-cat-arrow { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff; }
.wgh-acc-pager { display: flex; justify-content: space-between; gap: 12px; margin-top: 20px; }

/* Empty state */
.wgh-acc-empty { display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: center; gap: 6px 16px; padding: 24px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 14px; }
.wgh-acc-empty .wgh-help-ic { width: 52px; height: 52px; border-radius: 14px; }
.wgh-acc-empty strong { display: block; margin-bottom: 4px; font-size: 17px; font-weight: 700; color: var(--wh-navy); }
.wgh-acc-empty p { margin: 0 !important; font-size: 15px; line-height: 1.5; color: var(--wh-text-muted); }
.wgh-acc-empty-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.wgh-acc-empty-actions .wgh-btn { height: 48px; padding: 0 20px !important; }

/* Addresses */
.wgh-address-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.wgh-address-card { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 22px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 14px; }
.wgh-address-head { display: flex; align-items: center; gap: 12px; }
.wgh-address-head .wgh-help-ic { width: 42px; height: 42px; border-radius: 12px; }
.wgh-address-head h3 { margin: 0 !important; font-size: 17px !important; font-weight: 700 !important; color: var(--wh-navy) !important; }
.wgh-address-card address { flex: 1 1 auto; margin: 0; font-style: normal; font-size: 15px; line-height: 1.6; color: var(--wh-navy); }
.wgh-address-none { color: var(--wh-text-muted); }
.wgh-address-card .wgh-btn { height: 46px; padding: 0 18px !important; }

/* Edit address form, view order: WooCommerce markup in the panel style */
.wgh-account-page .woocommerce-MyAccount-content > form, .wgh-account-page .woocommerce-MyAccount-content > .woocommerce-order-details, .wgh-account-page .woocommerce-MyAccount-content > .woocommerce-customer-details, .wgh-account-page .woocommerce-MyAccount-content > p:first-child { padding: 28px; background: #fff; border: 1px solid var(--wh-border); border-radius: 16px; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); }
.wgh-account-page .woocommerce-MyAccount-content > * + * { margin-top: 24px !important; }
.wgh-account-page .woocommerce-MyAccount-content h2, .wgh-account-page .woocommerce-MyAccount-content h3 { font-size: 22px !important; font-weight: 700 !important; letter-spacing: -0.02em; color: var(--wh-navy) !important; text-transform: none !important; }
.wgh-account-page .woocommerce-MyAccount-content mark { background: #fff1e7; color: var(--wh-orange); font-weight: 700; padding: 1px 6px; border-radius: 6px; }
.wgh-account-page .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.wgh-account-page .woocommerce-address-fields .form-row { float: none !important; width: auto !important; margin: 0 0 16px !important; padding: 0 !important; }
.wgh-account-page .woocommerce-address-fields .form-row-wide, .wgh-account-page .woocommerce-address-fields #billing_address_1_field, .wgh-account-page .woocommerce-address-fields #shipping_address_1_field { grid-column: 1 / -1; }
.wgh-account-page .woocommerce-address-fields label { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 600; color: var(--wh-navy); }
.wgh-account-page .woocommerce-address-fields input.input-text, .wgh-account-page .woocommerce-address-fields select, .wgh-account-page .woocommerce-address-fields .select2-selection { width: 100%; height: 50px; padding: 0 14px; background: #f6f8fc; border: 1px solid var(--wh-border) !important; border-radius: 10px !important; font-size: 15px; color: var(--wh-navy); box-shadow: none !important; }
.wgh-account-page .woocommerce-address-fields .select2-selection__rendered { line-height: 48px !important; padding: 0 !important; }
.wgh-account-page .woocommerce-address-fields .select2-selection__arrow { height: 48px !important; }
.wgh-account-page .woocommerce-address-fields input.input-text:focus { outline: none; border-color: var(--wh-blue) !important; background: #fff; box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important; }
.wgh-account-page .woocommerce-address-fields button[type="submit"] { display: inline-flex; align-items: center; height: 52px; padding: 0 26px !important; border: 0; border-radius: 10px !important; background: var(--wh-orange) !important; color: #fff !important; font-size: 16px !important; font-weight: 700 !important; cursor: pointer; }
.wgh-account-page .woocommerce-address-fields button[type="submit"]::before, .wgh-account-page .woocommerce-address-fields button[type="submit"]::after { display: none !important; }
.wgh-account-page .shop_table { width: 100%; border-collapse: collapse; border: 0 !important; }
.wgh-account-page .shop_table th, .wgh-account-page .shop_table td { padding: 12px 0 !important; border: 0 !important; border-bottom: 1px solid #edf1f7 !important; background: none !important; font-size: 15px; text-align: left; color: var(--wh-navy); }
.wgh-account-page .shop_table tfoot th { font-weight: 600; color: var(--wh-text-muted); }
.wgh-account-page .shop_table tfoot tr:last-child th, .wgh-account-page .shop_table tfoot tr:last-child td { font-size: 18px; font-weight: 800; color: var(--wh-navy); border-bottom: 0 !important; }

@media (max-width: 1199px) { .wgh-acc-tiles { grid-template-columns: 1fr; } }
@media (max-width: 991px) {
	.wgh-account-hero-grid, .wgh-account-page .woocommerce { grid-template-columns: 1fr; gap: 24px; }
	.wgh-account-nav { position: static; }
	.wgh-address-grid { grid-template-columns: 1fr; }
}
@media (max-width: 575px) {
	.wgh-acc-panel { padding: 20px; }
	.wgh-order-row { flex-wrap: wrap; gap: 12px; }
	.wgh-order-row .wgh-cat-arrow { display: none; }
	.wgh-account-page .woocommerce-address-fields__field-wrapper { grid-template-columns: 1fr; }
}

/* My Account fixes: menu padding/rounded highlight, order rows, view order */
.wgh-account-page nav.wgh-account-nav { padding: 12px !important; }
.wgh-account-page .wgh-account-nav ul li a, .wgh-account-page .wgh-account-nav ul li button { padding: 12px 14px !important; border-radius: 10px !important; }
.wgh-account-page .wgh-account-nav ul + ul { margin: 10px -12px 0 !important; padding: 10px 12px 0 !important; }

/* Order rows: date as the clear second line, part name lighter, bigger status */
.wgh-order-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 14px; overflow: visible; white-space: normal; font-weight: 400 !important; }
.wgh-order-meta * { font-weight: 400 !important; }
.wgh-order-date { display: inline-flex; align-items: center; gap: 6px; font-size: 14.5px; font-weight: 600 !important; color: var(--wh-navy); }
.wgh-order-date svg { color: var(--wh-blue-dark); }
.wgh-order-first { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; max-width: 100%; }
.wgh-order-status { gap: 6px; padding: 5px 11px 5px 9px !important; font-size: 13px !important; }
.wgh-order-status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }

/* View order */
.wgh-acc-back { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px; font-size: 15px; font-weight: 600; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-account-page .woocommerce-MyAccount-content > .wgh-acc-back + .wgh-acc-panel { margin-top: 0 !important; }
.wgh-vo-title { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; }
.wgh-vo-title h2 { margin: 0 !important; font-size: 26px !important; font-weight: 700 !important; letter-spacing: -0.02em; color: var(--wh-navy) !important; }
.wgh-vo-title .wgh-order-status { padding: 6px 13px 6px 11px !important; font-size: 14px !important; }
.wgh-vo-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0; }
.wgh-vo-facts > div { padding: 14px 16px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 12px; }
.wgh-vo-facts dt { margin: 0 0 4px; font-size: 13px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-vo-facts dd { margin: 0; font-size: 16px; font-weight: 700; color: var(--wh-navy); }
.wgh-vo-facts dd.is-total { font-size: 18px; font-weight: 800; }
.wgh-vo-items { display: flex; flex-direction: column; }
.wgh-vo-item { display: flex; align-items: center; gap: 16px; padding: 14px 0; border-bottom: 1px solid #edf1f7; }
.wgh-vo-item:first-child { padding-top: 0; }
.wgh-vo-pic { flex: none; display: grid; place-items: center; width: 64px; height: 64px; padding: 6px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 12px; overflow: hidden; }
.wgh-vo-pic img { max-width: 100%; max-height: 100%; width: auto !important; height: auto !important; object-fit: contain; mix-blend-mode: multiply; }
.wgh-vo-name { display: flex; flex-direction: column; gap: 4px; flex: 1 1 auto; min-width: 0; font-size: 15px; font-weight: 700; line-height: 1.35; color: var(--wh-navy); }
.wgh-vo-name a { color: var(--wh-navy) !important; text-decoration: none !important; }
.wgh-vo-name a:hover { color: var(--wh-orange) !important; }
.wgh-vo-qty { font-size: 14px; font-weight: 400; color: var(--wh-text-muted); }
.wgh-vo-price { flex: none; font-size: 16px; font-weight: 700; color: var(--wh-navy); }
.wgh-vo-totals { margin: 8px 0 0 auto; max-width: 380px; }
.wgh-vo-totals > div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid #edf1f7; font-size: 15px; }
.wgh-vo-totals dt { margin: 0; font-weight: 500; color: var(--wh-text-muted); }
.wgh-vo-totals dd { margin: 0; text-align: right; font-weight: 600; color: var(--wh-navy); }
.wgh-vo-totals dd small, .wgh-vo-totals dd .includes_tax, .wgh-vo-totals dd .shipped_via { font-size: 13px; font-weight: 400; color: var(--wh-text-muted); }
.wgh-vo-totals > div.is-total { border-bottom: 0; padding-top: 14px; }
.wgh-vo-totals > div.is-total dt { font-size: 17px; font-weight: 700; color: var(--wh-navy); }
.wgh-vo-totals > div.is-total dd { font-size: 20px; font-weight: 800; }
.wgh-account-page .woocommerce-MyAccount-content > .wgh-vo-addresses { margin-top: 24px !important; }
.wgh-vo-addresses .wgh-address-card { background: #fff; border-color: var(--wh-border); box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); }
.wgh-vo-contact { display: block; margin-top: 8px; color: var(--wh-text-muted); }
.wgh-vo-contact + .wgh-vo-contact { margin-top: 2px; }
.wgh-vo-notes { margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-vo-notes li { padding: 12px 0; border-bottom: 1px solid #edf1f7; font-size: 15px; color: var(--wh-navy); }
.wgh-vo-notes li:last-child { border-bottom: 0; }
.wgh-vo-notes li p { margin: 4px 0 0 !important; }
.wgh-vo-note-date { font-size: 13px; font-weight: 600; color: var(--wh-text-muted); }
.wgh-vo-help { display: flex; align-items: center; gap: 16px; padding: 18px 20px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 16px; }
.wgh-vo-help .wgh-help-ic { flex: none; width: 46px; height: 46px; border-radius: 12px; }
.wgh-vo-help p { margin: 0 !important; font-size: 15px; color: var(--wh-text-muted); }
.wgh-vo-help strong { color: var(--wh-navy); }
.wgh-vo-help a { font-weight: 600; color: var(--wh-orange) !important; }
@media (max-width: 767px) {
	.wgh-vo-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.wgh-vo-totals { max-width: none; }
}

/* Account menu: second group the same width as the first, so hovers match */
.wgh-account-page .wgh-account-nav ul + ul { margin: 10px 0 0 !important; padding: 10px 0 0 !important; width: auto !important; }
.wgh-account-page .wgh-account-nav ul li, .wgh-account-page .wgh-account-nav ul li > a, .wgh-account-page .wgh-account-nav ul li > button { width: 100% !important; max-width: none !important; box-sizing: border-box; }
.wgh-account-page .wgh-account-nav > ul { float: none !important; width: 100% !important; }

/* Order cards v2: facts strip on top (date, number, status, items, total, View), parts listed below */
.wgh-order-list { gap: 16px; }
.wgh-order-card { border: 1px solid var(--wh-border); border-radius: 14px; overflow: hidden; background: #fff; }
.wgh-order-head { display: flex; align-items: center; gap: 20px; padding: 16px 20px; background: #f6f8fc; border-bottom: 1px solid #e6ebf3; }
.wgh-order-facts { display: grid; grid-template-columns: 1.3fr 1fr 1.2fr .6fr 1fr; gap: 16px; flex: 1 1 auto; min-width: 0; margin: 0; }
.wgh-order-facts dt { margin: 0 0 4px; font-size: 12.5px; font-weight: 500; letter-spacing: .02em; text-transform: uppercase; color: var(--wh-text-muted); }
.wgh-order-facts dd { margin: 0; font-size: 15px; font-weight: 700; color: var(--wh-navy); white-space: nowrap; }
.wgh-order-facts dd.is-total { font-size: 16px; font-weight: 800; }
.wgh-order-facts .wgh-order-status { display: inline-flex; align-items: center; gap: 7px; padding: 4px 11px 4px 9px !important; border-radius: 8px; font-size: 13px !important; font-weight: 700; }
.wgh-order-status::before { display: none !important; }
.wgh-order-dot { flex: none; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.wgh-order-view { flex: none; height: 42px; padding: 0 16px !important; font-size: 14.5px !important; }
.wgh-order-items { margin: 0 !important; padding: 6px 20px !important; list-style: none; }
.wgh-order-items li { display: flex; align-items: center; gap: 14px; margin: 0; padding: 10px 0; border-bottom: 1px solid #edf1f7; }
.wgh-order-items li:last-child { border-bottom: 0; }
.wgh-order-items li::before { display: none !important; }
.wgh-order-pic { flex: none; display: grid; place-items: center; width: 48px; height: 48px; padding: 4px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 10px; overflow: hidden; }
.wgh-order-pic img { max-width: 100%; max-height: 100%; width: auto !important; height: auto !important; object-fit: contain; mix-blend-mode: multiply; }
.wgh-order-name { flex: 1 1 auto; min-width: 0; font-size: 15px; font-weight: 500; line-height: 1.35; color: var(--wh-navy); }
.wgh-order-qty { flex: none; font-size: 14.5px; font-weight: 600; color: var(--wh-text-muted); }
@media (max-width: 991px) {
	.wgh-order-head { flex-direction: column; align-items: stretch; }
	.wgh-order-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.wgh-order-view { justify-content: center; }
}
@media (max-width: 575px) { .wgh-order-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Order cards expand/collapse: click the strip; chevron turns; View order still goes to the order */
.wgh-order-card > summary { list-style: none; cursor: pointer; }
.wgh-order-card > summary::-webkit-details-marker { display: none; }
.wgh-order-card > summary::marker { content: ""; }
.wgh-order-card:not([open]) > .wgh-order-head { border-bottom: 0; }
.wgh-order-card > summary:hover { background: #eef3fa; }
.wgh-order-toggle { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; border: 1px solid var(--wh-border); color: var(--wh-navy); transition: transform .2s, background-color .15s, color .15s; }
.wgh-order-card[open] .wgh-order-toggle { transform: rotate(180deg); }
.wgh-order-card > summary:hover .wgh-order-toggle { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff; }
@media (max-width: 991px) { .wgh-order-toggle { position: absolute; top: 16px; right: 16px; } .wgh-order-head { position: relative; } }

/* My Account card avatar: the Whitegoods Help photo when there is one (set by the account script) */
.wgh-account-avatar { overflow: hidden; }
.wgh-account-avatar.has-photo { background: #fff !important; border: 1px solid var(--wh-border); }
.wgh-account-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* Account content starts level with the menu: no gap after an empty notices box */
.wgh-account-page .woocommerce-MyAccount-content > .woocommerce-notices-wrapper:empty { display: none !important; }
.wgh-account-page .woocommerce-MyAccount-content > .woocommerce-notices-wrapper:empty + * { margin-top: 0 !important; }

/* View order: "All orders" above both the menu and the order */
.wgh-account-page > .container > .wgh-acc-back { display: inline-flex; margin: 0 0 20px; }

/* "All orders" sits over the right-hand cards (menu 270px + 40px gap), with menu and cards starting level below it */
@media (min-width: 992px) { .wgh-account-page > .container > .wgh-acc-back { margin-left: 310px; } }

/* Order card parts link to the product (to buy again) */
a.wgh-order-name { color: var(--wh-navy) !important; text-decoration: none !important; }
a.wgh-order-name:hover { color: var(--wh-orange) !important; text-decoration: underline !important; text-underline-offset: 3px; }
a.wgh-order-pic { transition: border-color .15s; }
a.wgh-order-pic:hover { border-color: var(--wh-orange); }

/* ===================== Button icons: always on the right of the words =====================
   Except "back" buttons (arrow pointing left, e.g. Continue shopping), whose arrow leads. */
.wgh-btn > svg, .wgh-acc-tile > .wgh-cat-arrow { order: 2; }
.wgh-btn > svg:has(> path[d="m12 19-7-7 7-7"]) { order: -1; }

/* Header search button: Lucide search icon, after the word */
body .header .search-form-container .aws-container .aws-search-form .aws-form-btn { display: inline-flex !important; align-items: center; gap: 8px; }
body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon { order: 2; width: 17px !important; height: 17px !important; background: #fff; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill='%23000' stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat; }
body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon svg { display: none !important; }
body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after { order: 1; }

/* Icons after the words: Add to Basket, product section links */
.wgh-pdp-purchase form.cart .single_add_to_cart_button::before { order: 2; }
.wgh-pdp-nav a > svg { order: 2; }

/* Basket: Remove and Proceed to checkout icons after the words */
.wgh-basket-page a.remove { display: inline-flex !important; align-items: center; gap: 6px; }
.wgh-basket-page a.remove > svg { order: 2; }
.wgh-summary .wc-proceed-to-checkout a.checkout-button::before { order: 2; }

/* Basket summary: delivery options as a stacked block of choice cards (title above, full width) */
.wgh-summary-table tr.woocommerce-shipping-totals { display: block; padding: 14px 0; border-bottom: 1px solid #edf1f7; }
.wgh-summary-table tr.woocommerce-shipping-totals > th { display: block; width: auto !important; padding: 0 0 10px !important; border: 0 !important; text-align: left; }
.wgh-summary-table tr.woocommerce-shipping-totals > td { display: block; width: auto !important; padding: 0 !important; border: 0 !important; text-align: left !important; }
.wgh-summary-table ul#shipping_method { display: flex; flex-direction: column; gap: 8px; }
.wgh-summary-table ul#shipping_method li { position: relative; display: block; margin: 0 !important; padding: 0 !important; text-align: left !important; }
.wgh-summary-table ul#shipping_method li input.shipping_method { position: absolute; top: 50%; left: 14px; width: 18px; height: 18px; margin: -9px 0 0 !important; accent-color: var(--wh-orange); cursor: pointer; }
.wgh-summary-table ul#shipping_method li input[type="hidden"] + label { padding-left: 14px !important; }
.wgh-summary-table ul#shipping_method li label { display: block; margin: 0 !important; padding: 12px 14px 12px 44px !important; background: #fff; border: 1px solid var(--wh-border); border-radius: 10px; font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--wh-navy); text-align: left !important; cursor: pointer; transition: border-color .15s, background-color .15s; }
.wgh-summary-table ul#shipping_method li label .amount { font-weight: 700; color: var(--wh-navy); }
.wgh-summary-table ul#shipping_method li label small, .wgh-summary-table ul#shipping_method li label .tax_label { font-size: 12px; font-weight: 500; color: var(--wh-text-muted); }
.wgh-summary-table ul#shipping_method li input.shipping_method:checked + label { border-color: var(--wh-orange); background: #fff7f1; box-shadow: 0 0 0 3px rgba(255, 102, 0, 0.12); }
.wgh-summary-table ul#shipping_method li label:hover { border-color: var(--wh-blue); }
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-destination { margin: 10px 0 0 !important; font-size: 13px; font-weight: 400; line-height: 1.5; color: var(--wh-text-muted); text-align: left; }
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-destination strong { font-weight: 600; color: var(--wh-navy); }
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-calculator { margin-top: 6px; text-align: left; }
.wgh-summary-table tr.woocommerce-shipping-totals .shipping-calculator-button { font-size: 13px; font-weight: 600; color: var(--wh-orange) !important; }
/* Summary as a stack of rows (not a table) so delivery options can use the full width */
.wgh-summary table.wgh-summary-table, .wgh-summary table.wgh-summary-table > tbody { display: block !important; width: 100% !important; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(.woocommerce-shipping-totals) { display: flex !important; align-items: baseline; justify-content: space-between; gap: 16px; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(.woocommerce-shipping-totals) > th { flex: 0 0 auto; width: auto !important; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(.woocommerce-shipping-totals) > td { flex: 1 1 auto; width: auto !important; text-align: right !important; }
.wgh-summary table.wgh-summary-table tr.order-total td small.includes_tax { display: block; white-space: nowrap; }
.wgh-summary table.wgh-summary-table > tbody > tr > th, .wgh-summary table.wgh-summary-table > tbody > tr > td { border-bottom: 0 !important; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(:last-child) { border-bottom: 1px solid #edf1f7; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(.woocommerce-shipping-totals) { padding: 12px 0; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(.woocommerce-shipping-totals) > th, .wgh-summary table.wgh-summary-table > tbody > tr:not(.woocommerce-shipping-totals) > td { padding-top: 0 !important; padding-bottom: 0 !important; }
.wgh-summary table.wgh-summary-table > tbody > tr:not(:last-child) { border-bottom: 1px solid #edf1f7 !important; }
/* "Shipping to ..." as a tidy delivery-address line under the options, with a map pin */
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-destination { position: relative; margin: 12px 0 0 !important; padding: 11px 14px 11px 40px !important; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 10px; font-size: 13.5px !important; line-height: 1.5 !important; color: var(--wh-text-muted) !important; text-align: left !important; text-wrap: balance; }
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-destination::before { content: "" !important; position: absolute; left: 14px; top: 13px; width: 16px; height: 16px; display: block !important; visibility: visible !important; background: var(--wh-blue-dark) !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 384 512'%3E%3Cpath fill='%23000' stroke='none' d='M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 384 512'%3E%3Cpath fill='%23000' stroke='none' d='M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z'/%3E%3C/svg%3E%3C/svg%3E") center / contain no-repeat; }
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-destination strong { font-weight: 600; color: var(--wh-navy); }
.wgh-summary-table tr.woocommerce-shipping-totals > td { padding-bottom: 4px !important; }
.wgh-summary-table ul#shipping_method { float: none !important; width: 100% !important; }
.wgh-summary-table tr.woocommerce-shipping-totals .woocommerce-shipping-destination { clear: both; float: none !important; }

/* Back buttons keep their arrow first (Font Awesome arrow-left) */
.wgh-btn > svg:has(path[d^="M9.4 233.4"]) { order: -1; }

/* Font Awesome icons are solid shapes: always filled with the text colour, whatever older rules say */
svg path[fill="currentColor"][stroke="none"] { fill: currentColor !important; stroke: none !important; }

/* Added-to-basket popup: WooCommerce strips fill/stroke from notice HTML, so colour its icons here */
.woocommerce-notices-wrapper .custom-add-to-cart-message.wgh-added svg path { fill: currentColor !important; stroke: none !important; }

/* Basket count badge: grows into a pill for 2+ digits, number centred */
@media (min-width: 992px) {
	body .header a#cartIcon b.title { display: inline-flex !important; align-items: center; justify-content: center; box-sizing: border-box; min-width: 22px !important; width: auto !important; height: 22px !important; padding: 0 6px !important; border-radius: 999px !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1 !important; text-align: center; letter-spacing: 0; font-variant-numeric: tabular-nums; }
}

/* Basket count: always a circle; smaller digits for 10+ (99+ above that) */
@media (min-width: 992px) {
	body .header a#cartIcon b.title { width: 24px !important; min-width: 24px !important; height: 24px !important; padding: 0 !important; border-radius: 50% !important; font-size: 12px !important; }
	body .header a#cartIcon b.title.is-2 { font-size: 10.5px !important; letter-spacing: -0.03em; }
	body .header a#cartIcon b.title.is-3 { font-size: 8.5px !important; letter-spacing: -0.04em; }
}
@media (min-width: 992px) {
	body .header a#cartIcon b.title { width: 26px !important; min-width: 26px !important; height: 26px !important; }
	body .header a#cartIcon b.title.is-2 { font-size: 10px !important; }
}

/* ===================== Checkout ===================== */
.wgh-steps li.is-done { color: var(--wh-navy); }
.wgh-steps li.is-done span { position: relative; background: #e3f5ea; border-color: #bfe5cd; color: transparent; }
.wgh-steps li.is-done span::after { content: ""; position: absolute; inset: 9px; background: #1f9d55; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") center / contain no-repeat; }
.wgh-steps li.is-current span { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff; }

.wgh-checkout-page form.woocommerce-checkout.wgh-checkout { display: grid !important; grid-template-columns: minmax(0, 1fr) 410px; gap: 32px; align-items: start; float: none; width: 100%; }
.wgh-checkout-page form.wgh-checkout::before, .wgh-checkout-page form.wgh-checkout::after { display: none !important; }
.wgh-co-main { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.wgh-co-card { padding: 28px; background: #fff; border: 1px solid var(--wh-border); border-radius: 16px; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05); }
.wgh-checkout-page #customer_details { display: flex !important; flex-direction: column; gap: 20px; float: none !important; width: 100% !important; margin: 0 !important; }
.wgh-checkout-page #customer_details::before, .wgh-checkout-page #customer_details::after { display: none !important; }
.wgh-checkout-page #customer_details > .col-1, .wgh-checkout-page #customer_details > .col-2 { float: none !important; width: auto !important; max-width: none !important; margin: 0 !important; flex: none; }
.wgh-co-side { position: sticky; top: 200px; display: flex; flex-direction: column; gap: 14px; }

/* Guest sign-in prompt */
.wgh-co-signin { display: flex; align-items: center; gap: 16px; padding: 20px 24px; background: #f6f8fc; }
.wgh-co-signin .wgh-help-ic { flex: none; width: 46px; height: 46px; border-radius: 12px; }
.wgh-co-signin > div { flex: 1 1 auto; min-width: 0; }
.wgh-co-signin strong { display: block; font-size: 16px; font-weight: 700; color: var(--wh-navy); }
.wgh-co-signin p { margin: 2px 0 0 !important; font-size: 14px; line-height: 1.5; color: var(--wh-text-muted); }
.wgh-co-signin .wgh-btn { flex: none; height: 44px; padding: 0 18px !important; }

/* Section headings */
.wgh-checkout-page .woocommerce-billing-fields > h3, .wgh-checkout-page .woocommerce-shipping-fields > h3, .wgh-checkout-page .woocommerce-additional-fields > h3, .wgh-co-summary #order_review_heading { float: none !important; width: auto !important; margin: 0 0 20px !important; padding: 0 !important; font-size: 22px !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: -0.02em; text-transform: none !important; color: var(--wh-navy) !important; }
.wgh-checkout-page #ship-to-different-address { margin: 0 !important; }
.wgh-checkout-page #ship-to-different-address label { display: flex !important; align-items: center; gap: 12px; margin: 0; cursor: pointer; font-size: 17px; font-weight: 600; color: var(--wh-navy); }
.wgh-checkout-page #ship-to-different-address input { width: 20px; height: 20px; margin: 0 !important; accent-color: var(--wh-orange); }
.wgh-checkout-page .shipping_address { margin-top: 20px; padding-top: 20px; border-top: 1px solid #edf1f7; }
.wgh-checkout-page .woocommerce-additional-fields { margin-top: 24px; padding-top: 20px; border-top: 1px solid #edf1f7; }
.wgh-checkout-page .woocommerce-additional-fields > h3 { margin-bottom: 12px !important; font-size: 17px !important; }

/* Fields */
.wgh-checkout-page .woocommerce-billing-fields__field-wrapper, .wgh-checkout-page .woocommerce-shipping-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
.wgh-checkout-page .woocommerce-billing-fields__field-wrapper::before, .wgh-checkout-page .woocommerce-billing-fields__field-wrapper::after, .wgh-checkout-page .woocommerce-shipping-fields__field-wrapper::before, .wgh-checkout-page .woocommerce-shipping-fields__field-wrapper::after { display: none !important; }
.wgh-checkout-page form.wgh-checkout .form-row { grid-column: 1 / -1; float: none !important; width: auto !important; margin: 0 0 16px !important; padding: 0 !important; }
.wgh-checkout-page form.wgh-checkout .form-row-first { grid-column: 1; }
.wgh-checkout-page form.wgh-checkout .form-row-last { grid-column: 2; }
.wgh-checkout-page form.wgh-checkout .form-row label { display: block; margin: 0 0 6px !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.3; text-transform: none !important; color: var(--wh-navy) !important; }
.wgh-checkout-page form.wgh-checkout .form-row label .required { border: 0; color: var(--wh-orange); text-decoration: none; }
.wgh-checkout-page form.wgh-checkout .form-row label .optional { font-weight: 400; color: var(--wh-text-muted); }
.wgh-checkout-page form.wgh-checkout input.input-text, .wgh-checkout-page form.wgh-checkout select, .wgh-checkout-page form.wgh-checkout textarea, .wgh-checkout-page form.wgh-checkout .select2-selection { width: 100% !important; height: 50px; margin: 0 !important; padding: 0 14px !important; background: #f6f8fc !important; border: 1px solid var(--wh-border) !important; border-radius: 10px !important; box-shadow: none !important; font-size: 15px !important; text-transform: none !important; color: var(--wh-navy) !important; }
.wgh-checkout-page form.wgh-checkout textarea { height: 110px; padding: 12px 14px !important; resize: vertical; }
.wgh-checkout-page form.wgh-checkout input.input-text::placeholder, .wgh-checkout-page form.wgh-checkout textarea::placeholder { color: #8a94ab; text-transform: none; opacity: 1; }
.wgh-checkout-page form.wgh-checkout input.input-text:focus, .wgh-checkout-page form.wgh-checkout textarea:focus { outline: none; background: #fff !important; border-color: var(--wh-blue) !important; box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important; }
.wgh-checkout-page form.wgh-checkout .select2-selection__rendered { padding: 0 !important; line-height: 48px !important; color: var(--wh-navy) !important; }
.wgh-checkout-page form.wgh-checkout .select2-selection__arrow { right: 8px !important; height: 48px !important; }
.wgh-checkout-page form.wgh-checkout .woocommerce-input-wrapper strong { display: flex; align-items: center; height: 50px; padding: 0 14px; background: #f6f8fc; border: 1px solid var(--wh-border); border-radius: 10px; font-size: 15px; font-weight: 600; color: var(--wh-navy); }
.wgh-checkout-page form.wgh-checkout .form-row.woocommerce-invalid input.input-text { border-color: #e05252 !important; background: #fff6f6 !important; }

/* Coupon */
.wgh-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info { position: relative; display: flex; align-items: center; gap: 10px; margin: 0 0 20px !important; padding: 14px 18px 14px 46px !important; background: #fff !important; background-image: none !important; border: 1px solid var(--wh-border) !important; border-radius: 12px !important; font-size: 15px; color: var(--wh-navy) !important; }
.wgh-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info::before { content: "" !important; position: absolute; top: 50%; left: 18px; display: block !important; width: 16px; height: 16px; margin-top: -8px; visibility: visible !important; background: var(--wh-orange) !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M0 80L0 229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 25 90.5 0L418.7 317.3c25-25 25-65.5 0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7L48 32C21.5 32 0 53.5 0 80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M0 80L0 229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 25 90.5 0L418.7 317.3c25-25 25-65.5 0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7L48 32C21.5 32 0 53.5 0 80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") center / contain no-repeat; }
.wgh-checkout-page .woocommerce-form-coupon-toggle .woocommerce-info a { margin-left: auto; font-weight: 700; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-checkout-page form.checkout_coupon { display: flex; align-items: center; gap: 10px; margin: -8px 0 20px !important; padding: 16px !important; background: #fff; border: 1px solid var(--wh-border) !important; border-radius: 12px !important; }
.wgh-checkout-page form.checkout_coupon p:not(.form-row) { display: none; }
.wgh-checkout-page form.checkout_coupon .form-row { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; }
.wgh-checkout-page form.checkout_coupon .form-row-first { flex: 1 1 auto; }
.wgh-checkout-page form.checkout_coupon input.input-text { width: 100%; height: 46px; padding: 0 14px; background: #f6f8fc; border: 1px solid var(--wh-border); border-radius: 10px; font-size: 15px; }
.wgh-checkout-page form.checkout_coupon button { height: 46px; padding: 0 18px !important; border: 0; border-radius: 10px !important; background: var(--wh-navy) !important; color: #fff !important; font-weight: 700; cursor: pointer; }

/* Order summary */
.wgh-co-summary { padding: 24px; }
.wgh-co-review { width: 100%; margin: 0 0 4px !important; border: 0 !important; border-collapse: collapse; }
.wgh-co-review, .wgh-co-review tbody, .wgh-co-review tfoot { display: block; width: 100%; }
.wgh-co-review tr { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding: 12px 0; border-bottom: 1px solid #edf1f7; }
.wgh-co-review th, .wgh-co-review td { display: block; padding: 0 !important; background: none !important; border: 0 !important; font-size: 15px; color: var(--wh-navy); }
.wgh-co-review th { text-align: left; font-weight: 600; }
.wgh-co-review td { text-align: right; font-weight: 700; }
.wgh-co-review tbody.wgh-co-items tr { align-items: center; }
.wgh-co-review td.product-name { flex: 1 1 auto; min-width: 0; text-align: left; font-weight: 600; }
.wgh-co-item { display: flex; align-items: center; gap: 12px; }
.wgh-co-pic { position: relative; flex: none; display: grid; place-items: center; width: 52px; height: 52px; padding: 4px; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 10px; }
.wgh-co-pic img { max-width: 100%; max-height: 100%; width: auto !important; height: auto !important; object-fit: contain; mix-blend-mode: multiply; }
.wgh-co-qty { position: absolute; top: -7px; right: -7px; display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: var(--wh-navy); color: #fff; font-size: 11px; font-weight: 700; line-height: 1; }
.wgh-co-name { font-size: 14px; line-height: 1.35; color: var(--wh-navy); overflow-wrap: anywhere; }
.wgh-co-name dl.variation { margin: 3px 0 0; font-size: 12.5px; font-weight: 400; color: var(--wh-text-muted); }
.wgh-co-name dl.variation dt, .wgh-co-name dl.variation dd, .wgh-co-name dl.variation p { display: inline; float: none; margin: 0; font-size: inherit; font-weight: inherit; }
.wgh-co-review small, .wgh-co-review .includes_tax, .wgh-co-review .tax_label { display: block; font-size: 12px !important; font-weight: 400 !important; color: var(--wh-text-muted) !important; }
.wgh-co-review tr.order-total { padding-top: 16px; border-bottom: 0; }
.wgh-co-review tr.order-total th { font-size: 17px; font-weight: 700; }
.wgh-co-review tr.order-total td { font-size: 22px; font-weight: 800; letter-spacing: -0.02em; }
.wgh-co-review tr.woocommerce-shipping-totals { display: block; padding: 14px 0; }
.wgh-co-review tr.woocommerce-shipping-totals > th { display: block; padding-bottom: 10px !important; }
.wgh-co-review tr.woocommerce-shipping-totals > td { display: block; text-align: left; font-weight: 400; }
.wgh-co-review ul#shipping_method { display: flex !important; flex-direction: column; gap: 8px; float: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; list-style: none; }
.wgh-co-review ul#shipping_method li { position: relative; display: block; float: none !important; margin: 0 !important; padding: 0 !important; text-align: left; }
.wgh-co-review ul#shipping_method li::before { display: none !important; }
.wgh-co-review ul#shipping_method li input.shipping_method { position: absolute; top: 50%; left: 14px; width: 18px; height: 18px; margin: -9px 0 0 !important; accent-color: var(--wh-orange); cursor: pointer; }
.wgh-co-review ul#shipping_method li label { display: block; margin: 0 !important; padding: 12px 14px 12px 44px !important; background: #fff; border: 1px solid var(--wh-border); border-radius: 10px; font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--wh-navy); cursor: pointer; }
.wgh-co-review ul#shipping_method li input.shipping_method:checked + label { background: #fff7f1; border-color: var(--wh-orange); box-shadow: 0 0 0 3px rgba(255, 102, 0, 0.12); }

/* Payment + Place order */
.wgh-checkout-page #payment { margin-top: 8px; background: none !important; border-radius: 0 !important; }
.wgh-checkout-page #payment ul.payment_methods { margin: 0 0 16px !important; padding: 0 !important; border: 0 !important; list-style: none; }
.wgh-checkout-page #payment ul.payment_methods li { margin: 0 0 8px !important; padding: 12px 14px !important; background: #f6f8fc; border: 1px solid var(--wh-border); border-radius: 10px; font-size: 14px; color: var(--wh-navy); }
.wgh-checkout-page #payment ul.payment_methods li::before { display: none !important; }
.wgh-checkout-page #payment ul.payment_methods li.woocommerce-notice, .wgh-checkout-page #payment ul.payment_methods li.woocommerce-info { background: #fff7f1 !important; border-color: #fbd9c2; color: var(--wh-navy) !important; }
.wgh-checkout-page #payment div.payment_box { margin: 8px 0 0 !important; padding: 12px !important; background: #fff !important; border-radius: 8px; font-size: 14px; color: var(--wh-text-muted); }
.wgh-checkout-page #payment div.payment_box::before { display: none !important; }
.wgh-checkout-page #payment .place-order { margin: 0 !important; padding: 0 !important; background: none !important; }
.wgh-checkout-page .woocommerce-terms-and-conditions-wrapper, .wgh-checkout-page .woocommerce-privacy-policy-text { margin-bottom: 14px; font-size: 13px; line-height: 1.5; color: var(--wh-text-muted); }
.wgh-checkout-page .woocommerce-privacy-policy-text p { margin: 0 !important; }
.wgh-checkout-page .woocommerce-privacy-policy-text a, .wgh-checkout-page .woocommerce-terms-and-conditions-wrapper a { font-weight: 600; color: var(--wh-orange) !important; }
.wgh-checkout-page #place_order { display: inline-flex !important; align-items: center; justify-content: center; gap: 10px; float: none !important; width: 100% !important; height: 56px; margin: 0 !important; padding: 0 20px !important; border: 0 !important; border-radius: 12px !important; background: var(--wh-orange) !important; box-shadow: 0 12px 24px -12px rgba(255, 102, 0, 0.6) !important; font-size: 17px !important; font-weight: 700 !important; letter-spacing: 0; text-transform: none !important; color: #fff !important; cursor: pointer; }
.wgh-checkout-page #place_order:hover { background: var(--wh-orange-dark) !important; }
.wgh-checkout-page #place_order::after { content: "" !important; position: static !important; display: block !important; width: 18px; height: 18px; visibility: visible !important; background: currentColor !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M144 144l0 48 160 0 0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80zM80 192l0-48C80 64.5 144.5 0 224 0s144 64.5 144 144l0 48 16 0c35.3 0 64 28.7 64 64l0 192c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 256c0-35.3 28.7-64 64-64l16 0z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23000' d='M144 144l0 48 160 0 0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80zM80 192l0-48C80 64.5 144.5 0 224 0s144 64.5 144 144l0 48 16 0c35.3 0 64 28.7 64 64l0 192c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 256c0-35.3 28.7-64 64-64l16 0z'/%3E%3C/svg%3E") center / contain no-repeat; }
.wgh-checkout-page #place_order::before { display: none !important; }

/* Trust list under the summary */
.wgh-co-trust { display: flex; flex-direction: column; gap: 8px; margin: 0 !important; padding: 16px 20px !important; list-style: none; background: #f6f8fc; border: 1px solid #e6ebf3; border-radius: 14px; }
.wgh-co-trust li { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; font-size: 14px; font-weight: 600; color: var(--wh-navy); }
.wgh-co-trust li::before { display: none !important; }
.wgh-co-trust svg { flex: none; color: #1f9d55; }
.wgh-co-trust svg path { fill: currentColor !important; }

@media (max-width: 991px) {
	.wgh-checkout-page form.woocommerce-checkout.wgh-checkout { grid-template-columns: 1fr; }
	.wgh-co-side { position: static; }
}
@media (max-width: 575px) {
	.wgh-co-card { padding: 20px; }
	.wgh-checkout-page .woocommerce-billing-fields__field-wrapper, .wgh-checkout-page .woocommerce-shipping-fields__field-wrapper { grid-template-columns: 1fr; }
	.wgh-checkout-page form.wgh-checkout .form-row-first, .wgh-checkout-page form.wgh-checkout .form-row-last { grid-column: 1; }
	.wgh-co-signin { flex-wrap: wrap; }
}
/* Checkout fixes: step tick shows, VAT notes don't wrap, payment notice as a light card */
.wgh-steps li.is-done span::after { content: "" !important; display: block !important; visibility: visible !important; }
.wgh-co-review td small, .wgh-co-review td .includes_tax { white-space: nowrap; }
.wgh-co-review td.product-total { flex: none; }
.wgh-checkout-page #payment ul.payment_methods li { padding: 0 !important; background: none !important; border: 0 !important; }
.wgh-checkout-page #payment ul.payment_methods li .woocommerce-info { margin: 0 !important; padding: 14px 16px !important; background: #fff7f1 !important; background-image: none !important; border: 1px solid #fbd9c2 !important; border-radius: 10px !important; font-size: 14px !important; line-height: 1.5; color: var(--wh-navy) !important; text-align: left !important; }
.wgh-checkout-page #payment ul.payment_methods li .woocommerce-info::before { display: none !important; }
.wgh-checkout-page #payment ul.payment_methods li.wc_payment_method { padding: 12px 14px !important; background: #f6f8fc !important; border: 1px solid var(--wh-border) !important; }

/* Checkout: "Deliver to a different address?" as a clear clickable row with an on/off switch */
.wgh-checkout-page #ship-to-different-address label { position: relative; display: flex !important; align-items: center; justify-content: space-between; gap: 16px; margin: 0 !important; padding: 16px 18px !important; background: #f6f8fc; border: 1px solid var(--wh-border); border-radius: 12px; cursor: pointer; transition: border-color .15s, background-color .15s; }
.wgh-checkout-page #ship-to-different-address label:hover { border-color: var(--wh-blue); background: #fff; }
.wgh-checkout-page #ship-to-different-address input { display: none !important; }
.wgh-checkout-page #ship-to-different-address label > span { position: relative; display: flex !important; align-items: center; justify-content: space-between; width: 100%; padding-right: 64px; font-size: 16px; font-weight: 600; line-height: 1.3; color: var(--wh-navy); }
.wgh-checkout-page #ship-to-different-address label > span::after { content: "" !important; position: absolute; top: 50%; right: 0; display: block !important; width: 48px; height: 28px; margin-top: -14px; visibility: visible !important; background: #cdd6e4 !important; border-radius: 999px; transition: background-color .2s; }
.wgh-checkout-page #ship-to-different-address label > span::before { content: "" !important; position: absolute; top: 50%; right: 23px; z-index: 1; display: block !important; width: 22px; height: 22px; margin-top: -11px; visibility: visible !important; background: #fff !important; border-radius: 50%; box-shadow: 0 1px 3px rgba(11, 25, 73, 0.3); transition: right .2s; }
.wgh-checkout-page #ship-to-different-address input:checked + span::after { background: var(--wh-orange) !important; }
.wgh-checkout-page #ship-to-different-address input:checked + span::before { right: 3px; }
.wgh-checkout-page #ship-to-different-address input:checked + span { color: var(--wh-orange); }
.wgh-checkout-page #ship-to-different-address label > span::before, .wgh-checkout-page #ship-to-different-address label > span::after { left: auto !important; border: 0 !important; box-sizing: border-box !important; transform: none !important; }
.wgh-checkout-page #ship-to-different-address label > span::before { top: 50% !important; width: 22px !important; height: 22px !important; margin-top: -11px !important; }

/* Count circles (header basket, checkout quantities): dark blue, like the nav bar */
body .header a#cartIcon b.title, .wgh-co-qty { background: #1d2b5c !important; }
body .header a#cartIcon b.title, .wgh-co-qty { background: #1f5aa6 !important; }
.wgh-checkout-page #ship-to-different-address label > span::after, .wgh-checkout-page #ship-to-different-address input:checked + span::after { right: 0 !important; width: 48px !important; height: 28px !important; margin-top: -14px !important; top: 50% !important; }
.wgh-checkout-page #ship-to-different-address label > span::before { right: 23px !important; }
.wgh-checkout-page #ship-to-different-address input:checked + span::before { right: 3px !important; }
body .header a#cartIcon b.title, .wgh-co-qty { background: #1a4582 !important; }

/* Model-number step ticks on EVERY finder form (product page "Will this part fit?", popups, heroes),
   whatever class the field has: green tick once a model number is entered */
body .find-part-form-container .find-part-form > .fields:not(.d-none):not(.submit):has(input[name="model"]:not(:placeholder-shown))::before {
	content: "\2713" !important;
	background: #2fb36a !important;
	color: #fff !important;
}

/* ===== Model lock: the chosen model sits INSIDE the header search box (box doesn't move).
   The box can't be searched until the model is cleared. ===== */
body .header .search-form-container .aws-container { position: relative; }
body .header .search-form-container .aws-container p#session_model_results.wgh-model-lock {
	position: absolute !important; top: 5px; bottom: 5px; left: 6px; right: 120px; z-index: 5;
	display: flex !important; align-items: center; gap: 10px;
	margin: 0 !important; padding: 0 6px 0 10px !important;
	background: #fff3ea; border: 1px solid #fbd9c2; border-radius: 8px;
	font-size: 14px !important; font-weight: 500; line-height: 1.2 !important; color: var(--wh-navy) !important;
	text-align: left; white-space: nowrap; transform: none !important;
}
body .header .search-form-container .aws-container p#session_model_results.wgh-model-lock::before,
body .header .search-form-container .aws-container p#session_model_results.wgh-model-lock::after { display: none !important; }
.wgh-model-lock .wgh-ml-ic { flex: none; display: grid; place-items: center; width: 18px; height: 18px; color: var(--wh-orange); }
.wgh-model-lock .wgh-ml-ic svg, .wgh-model-lock .wgh-ml-clear svg { display: block; width: 100%; height: 100%; }
.wgh-model-lock .wgh-ml-txt { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; color: var(--wh-text-muted); }
.wgh-model-lock .wgh-ml-txt a#session_model { font-weight: 700; color: var(--wh-navy) !important; text-decoration: none !important; }
.wgh-model-lock a.wgh-ml-clear { flex: none; display: inline-flex !important; align-items: center; gap: 7px; height: 30px; padding: 0 11px !important; background: #fff; border: 1px solid #fbd9c2; border-radius: 7px; font-size: 13px; font-weight: 700; color: var(--wh-orange) !important; text-decoration: none !important; }
.wgh-model-lock a.wgh-ml-clear svg { width: 11px; height: 11px; }
.wgh-model-lock a.wgh-ml-clear:hover { background: var(--wh-orange); border-color: var(--wh-orange); color: #fff !important; }
/* locked: no typing, search button greyed until cleared */
body .header .search-form-container.has-model-message .aws-search-form input.aws-search-field { color: transparent !important; pointer-events: none; }
body .header .search-form-container.has-model-message .aws-search-form input.aws-search-field::placeholder { color: transparent !important; }
body .header .search-form-container.has-model-message .aws-search-form .aws-form-btn { opacity: .45; pointer-events: none; }
body .header .search-form-container.has-model-message .aws-search-form .aws-search-clear { display: none !important; }
/* the search box no longer gets pushed up by a message above it */
body .header .search-form-container.has-model-message { margin-top: 0 !important; padding-top: 0 !important; }
@media (max-width: 991px) {
	body .header .search-form-container .aws-container p#session_model_results.wgh-model-lock { right: 6px; }
	.wgh-model-lock .wgh-ml-txt { font-size: 13px; }
}

/* Model lock fixes: keep the chip clear of the button, drop theme pseudo icon, no extra height */
.header .search-form-container.has-model-message{padding-bottom:0!important}
.header .search-form-container p#session_model_results.wgh-model-lock{width:auto!important;max-width:none!important;margin:0!important}
.header .search-form-container p#session_model_results.wgh-model-lock::before,.header .search-form-container p#session_model_results.wgh-model-lock::after{content:none!important;display:none!important}
.wgh-model-lock svg,.wgh-model-lock svg path{stroke:none!important;fill:currentColor!important}
.header .search-form-container.has-model-message .aws-wrapper::before{display:none!important}

/* ==========================================================================
   Whitegoods Help area switcher (shared with the articles site, 2026-10-14)
   Top strip: the four areas on the left, the site's small links on the right.
   Phones/tablets: four equal tabs across the very top of the header.
   ========================================================================== */
.wgh-fa { display: inline-block; flex: none; width: 1em; height: 1em; }
.wgh-area.is-articles { --area: #1E40AF; }
.wgh-area.is-forum { --area: #1E8EC5; }
.wgh-area.is-engineers { --area: #1f9d55; }
.wgh-area.is-shop { --area: #FF6600; }
body .header .wgh-areas { display: flex; align-items: center; gap: 2px; margin: 0 0 0 -11px; }
body .header .wgh-areas .wgh-area { display: inline-flex; align-items: center; gap: 8px; height: 30px; padding: 0 11px; border-radius: 8px; font-size: 13.5px; font-weight: 500; line-height: 1; letter-spacing: 0; color: rgba(11, 25, 73, 0.72) !important; text-decoration: none !important; white-space: nowrap; transition: background .15s, color .15s; }
body .header .wgh-areas .wgh-area .wgh-fa { width: 13px; height: 13px; color: var(--area); }
body .header .wgh-areas .wgh-area:hover { background: #fff; color: var(--wh-navy) !important; }
body .header .wgh-areas .wgh-area.is-here { background: #fff; color: var(--area) !important; font-weight: 700; box-shadow: 0 1px 2px rgba(11, 25, 73, 0.08), 0 0 0 1px rgba(11, 25, 73, 0.06); }
body .header .top-nav p.wgh-strip-note { float: none; display: flex; align-items: center; margin: 0 16px 0 0 !important; }
body .header .top-nav p.wgh-strip-note a { display: inline-flex !important; align-items: center; gap: 8px; float: none !important; font-size: 13.5px; font-weight: 600; line-height: 1; color: var(--wh-orange) !important; text-decoration: none !important; white-space: nowrap; }
body .header .top-nav p.wgh-strip-note .wgh-fa { width: 16px; height: 16px; }
.wgh-area-tabs { display: none; }
@media (max-width: 991px) {
	body .header, body .header.fixed { height: 135px !important; padding-top: 0 !important; }
	body { padding-top: 135px !important; }
	body .mobile-menu .mobile-menu-inner { top: 135px !important; height: calc(100% - 135px) !important; }
	body .header-contents-inner .search-form-container { top: 135px !important; }
	body .header .wgh-area-tabs { display: grid; grid-template-columns: repeat(4, 1fr); height: 40px; width: 100vw; margin: 0 0 23px calc(50% - 50vw); background: #f1f5fb; border-bottom: 1px solid #e3e9f3; }
	body .header .wgh-area-tabs .wgh-area { position: relative; display: flex; align-items: center; justify-content: center; gap: 6px; font-size: 12.5px; font-weight: 600; line-height: 1; color: rgba(11, 25, 73, 0.72) !important; text-decoration: none !important; white-space: nowrap; }
	body .header .wgh-area-tabs .wgh-area .wgh-fa { width: 12px; height: 12px; color: var(--area); }
	body .header .wgh-area-tabs .wgh-area.is-here { background: #fff; color: var(--area) !important; font-weight: 700; }
	body .header .wgh-area-tabs .wgh-area.is-here::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 3px; background: var(--area); }
}
@media (max-width: 360px) { body .header .wgh-area-tabs .wgh-area .wgh-fa { display: none; } }

/* Basket: light button (white, thin border, orange icon), navy count badge */
@media (min-width: 992px) {
	body .header a#cartIcon.wgh-hdr-basket { background: #fff !important; border: 1px solid var(--wh-border); color: var(--wh-navy); }
	body .header a#cartIcon.wgh-hdr-basket:hover { background: #f6f8fc !important; border-color: #c5cedd; transform: none; }
	body .header a#cartIcon .btn.wgh-hdr-ic { color: var(--wh-orange) !important; }
	body .header a#cartIcon .wgh-hdr-txt small { color: var(--wh-text-muted) !important; opacity: 1; }
	body .header a#cartIcon .wgh-hdr-txt .wgh-basket-total, body .header a#cartIcon .wgh-hdr-txt .wgh-basket-total * { color: var(--wh-navy) !important; }
}

/* Pop-ups (Clerk sign-in) lock scrolling: keep the scrollbar space at all times and cancel the
   15px padding Clerk adds to make up for it, so neither the header nor the page moves. */
html { scrollbar-gutter: stable; }
body[style*="overflow: hidden"] { padding-right: 0 !important; }

/* Account circle with a photo: a white ring, a hairline and a soft shadow so it reads as a button */
.wgh-acct-btn.has-photo, .wgh-acct-slot button:has(img) { box-shadow: 0 0 0 2px #fff, 0 0 0 3px rgba(11, 25, 73, 0.16), 0 6px 14px -4px rgba(11, 25, 73, 0.45) !important; }

/* Logo stays solid on hover, as on the other Whitegoods Help sites */
body .header a#logo-main:hover { opacity: 1; }

/* No count badge on an empty basket (it covered the word Basket) */
body .header a#cartIcon.no-items b.title { display: none !important; }

/* Phone header: the same row as the articles site, forum and Find an Engineer (2026-10-14) */
@media (max-width: 991px) {
	body .header, body .header.fixed { height: 113px !important; }
	body { padding-top: 113px !important; }
	body .mobile-menu .mobile-menu-inner { top: 113px !important; height: calc(100% - 113px) !important; }
	body .header-contents-inner .search-form-container { top: 113px !important; }
	body .header .wgh-area-tabs { margin-bottom: 0; }
	body .header .header-contents-inner { height: 73px; align-items: center; }
	body .header a#logo-main { margin: 0 !important; }
	body .header a#logo-main img { width: 170px !important; height: auto !important; }
	body .header .buttons-container { gap: 10px; align-items: center; }
	body .header .buttons-container .wgh-acct.hidden-mobiles { display: flex !important; order: 2; }
	body .header .buttons-container .wgh-acct .wgh-acct-btn { width: 42px !important; height: 42px !important; }
	body .header a#searchMenu, body .header a#burgerMenu { position: relative !important; display: flex !important; align-items: center; justify-content: center; width: 42px !important; height: 42px !important; margin: 0 !important; padding: 0 !important; border: 1px solid #DEE2EA; border-radius: 10px; background: #fff; font-size: 0 !important; line-height: 0; color: transparent !important; float: none !important; top: auto !important; right: auto !important; transform: none !important; }
	body .header a#searchMenu { order: 1; }
	body .header a#burgerMenu { order: 3; }
	body .header a#searchMenu i, body .header a#burgerMenu span { display: none !important; }
	body .header a#searchMenu::before, body .header a#burgerMenu::before { content: ""; display: block; width: 18px; height: 18px; background: no-repeat center / contain; visibility: visible !important; opacity: 1 !important; }
	body .header a#searchMenu::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%230B1949' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E"); }
	body .header a#burgerMenu::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%230B1949' d='M0 96C0 78.3 14.3 64 32 64l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 128C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 288c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32L32 448c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E"); }
	body .header a#burgerMenu.active::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 384 512'%3E%3Cpath fill='%230B1949' d='M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z'/%3E%3C/svg%3E") !important; }
	body .header a#searchMenu:hover, body .header a#burgerMenu:hover { background: #f6f8fc; border-color: #c5cedd; }
}

/* Search box at a fixed distance from the logo (same as the other sections), so the basket total cannot nudge it */
@media (min-width: 1300px) { body .header .header-contents-inner .search-form-container { margin-left: 77.8px !important; margin-right: auto !important; } }

/* ---------- "Added to your basket" pop-up: picture, details and basket total (2026-10-14) ---------- */
.wgh-added-card { text-align: left !important; align-items: stretch !important; gap: 0 !important; }
.wgh-added-head { display: flex; align-items: center; gap: 12px; padding-right: 52px; margin-bottom: 18px; }
.wgh-added-head .wgh-added-ic { width: 36px !important; height: 36px !important; margin: 0 !important; flex: none; }
.wgh-added-head .wgh-added-ic svg { width: 18px; height: 18px; }
.wgh-added-head .message.title { margin: 0 !important; font-size: 22px !important; line-height: 1.25; text-align: left !important; }
.wgh-added-lines { display: flex; flex-direction: column; gap: 10px; margin: 0 0 14px !important; padding: 0 !important; list-style: none; }
.wgh-added-lines li::before, .wgh-added-lines li::after { display: none !important; content: none !important; }
.wgh-added-line { display: flex; align-items: center; gap: 14px; margin: 0 !important; padding: 12px !important; border: 1px solid var(--wh-border, #DEE2EA); border-radius: 14px; background: #fff; }
.wgh-added-thumb { flex: none; width: 76px; height: 76px; border: 1px solid #edf1f7; border-radius: 10px; background: #fff; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.wgh-added-thumb img { width: 100% !important; height: 100% !important; object-fit: contain; margin: 0 !important; }
.wgh-added-info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.wgh-added-name { font-size: 15px; font-weight: 700; line-height: 1.35; color: var(--wh-navy, #0B1949); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.wgh-added-sku { font-size: 12.5px; color: #64748b; }
.wgh-added-qty { font-size: 13px; color: #45526e; }
.wgh-added-price { flex: none; align-self: flex-start; font-size: 16px; font-weight: 700; color: var(--wh-navy, #0B1949); }
.wgh-added-total { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; padding: 12px 14px; border-radius: 12px; background: #f6f8fc; font-size: 14.5px; color: #45526e; }
.wgh-added-total small { font-size: 13px; color: #8a94a8; }
.wgh-added-total b, .wgh-added-total b * { font-size: 17px; font-weight: 700; color: var(--wh-navy, #0B1949) !important; }
.wgh-added-items { display: none !important; }
@media (max-width: 480px) {
	.wgh-added-thumb { width: 60px; height: 60px; }
	.wgh-added-head .message.title { font-size: 19px !important; }
}

/* Discount code icon: position the outer icon only (the inner layer was being moved too, cropping it) */
.wgh-coupon-field svg svg { position: static; left: auto; top: auto; transform: none; }
.wgh-az-search svg svg { position: static; left: auto; top: auto; transform: none; } /* same nested-icon fix */

/* Basket button the same height as the search box (52px), as on the other sections */
@media (min-width: 992px) { body .header a#cartIcon.wgh-hdr-basket { height: 52px !important; } }

/* ---------- Checkout coupon form: the same as the basket's (2026-10-14) ---------- */
.wgh-checkout-page form.checkout_coupon { align-items: center; gap: 10px; padding: 16px !important; }
.wgh-checkout-page form.checkout_coupon input.input-text {
	height: 48px !important; padding: 0 14px 0 44px !important; border: 1px solid var(--wh-border) !important; border-radius: 10px !important;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%238a94ab' d='M0 80L0 229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 25 90.5 0L418.7 317.3c25-25 25-65.5 0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7L48 32C21.5 32 0 53.5 0 80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z'/%3E%3C/svg%3E") no-repeat 15px center / 16px 16px !important; box-shadow: none !important; outline: none !important;
	font-size: 15px !important; color: var(--wh-navy);
}
.wgh-checkout-page form.checkout_coupon input.input-text::placeholder { color: #8a94ab; opacity: 1; }
.wgh-checkout-page form.checkout_coupon input.input-text:focus { border-color: var(--wh-blue) !important; box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important; }
.wgh-checkout-page form.checkout_coupon button {
	display: inline-flex !important; align-items: center; gap: 10px; height: 48px !important; padding: 0 20px !important;
	border: 1px solid var(--wh-border) !important; border-radius: 10px !important; background: #fff !important; color: var(--wh-orange) !important;
	font-size: 15px; font-weight: 700; white-space: nowrap; transition: border-color .15s;
}
.wgh-checkout-page form.checkout_coupon button:hover { border-color: var(--wh-orange) !important; }
.wgh-checkout-page form.checkout_coupon button::after { content: ""; width: 15px; height: 15px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23FF6600' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") no-repeat center / contain; }
.wgh-checkout-page form.checkout_coupon input.input-text, .wgh-checkout-page form.checkout_coupon input.input-text::placeholder { text-transform: none !important; }

/* Checkout coupon: Apply is the solid orange main button, white tick on the right */
.wgh-checkout-page form.checkout_coupon button { background: var(--wh-orange) !important; border-color: var(--wh-orange) !important; color: #fff !important; }
.wgh-checkout-page form.checkout_coupon button:hover { background: var(--wh-orange-dark, #ff6600) !important; border-color: var(--wh-orange-dark, #ff6600) !important; }
.wgh-checkout-page form.checkout_coupon button::after { content: "" !important; display: block !important; position: static !important; width: 15px !important; height: 15px !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%23ffffff' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E") no-repeat center / contain !important; border: 0 !important; opacity: 1 !important; visibility: visible !important; transform: none !important; }

/* Checkout steps: a finished step is the same solid green tick as the part finder steps */
.wgh-steps li.is-done span { background: #2fb36a !important; border-color: #2fb36a !important; }
.wgh-steps li.is-done span::after { background: #fff !important; }

/* Product fit check: the form gives way to the result once an appliance is known (2026-10-14) */
.wgh-pdp-fitform .find-part-form-container.d-none { display: none !important; }

/* Selection remove crosses: solid orange with a white cross on hover (2026-10-14) */
.wgh-sel-card .wgh-sel-remove { cursor: pointer; }
.wgh-sel-card .wgh-sel-remove:hover, .wgh-sel-card .wgh-sel-remove:focus-visible { background: var(--wh-orange) !important; border-color: var(--wh-orange) !important; color: #fff !important; }

/* Phones: the same 16px side gutter as the articles, forum and engineers sites (2026-10-14).
   Bootstrap gives 15px, and doubles it where a .container sits inside a padded .container-fluid. */
@media (max-width: 767px) {
	.container, .container-sm, .container-md { padding-left: 16px !important; padding-right: 16px !important; }
	.container-fluid:has(> .container), .container-fluid:has(> .container-xxl), .container-fluid:has(> .container-xl) { padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 767px) {
	.hero-home-page .part-finder-slider-container { padding-left: 20px !important; padding-right: 20px !important; }
}

/* Eyebrows: the Find an Engineer label on every Whitegoods Help site (2026-10-14).
   White, hairline border, soft shadow, one orange dot, navy capitals. */
.wgh-eyebrow,
body .wgh-brand-hero .wgh-eyebrow,
body .wgh-pdp-buy-card .wgh-eyebrow {
	display: inline-flex !important; align-items: center; gap: 8px;
	width: fit-content; max-width: 100%;
	padding: 6px 12px 6px 10px; border: 1px solid #dee2ea; border-radius: 8px;
	background: rgba(255, 255, 255, 0.85); box-shadow: 0 8px 18px 0 rgba(11, 25, 73, 0.05);
	color: #0b1949; font-size: 11.52px; font-weight: 700; line-height: 1.6; letter-spacing: 0.13em; text-transform: uppercase;
}
.wgh-eyebrow::before { content: ""; flex: none; width: 6px; height: 6px; border-radius: 50%; background: #ff6600; }

/* Phones: the shop hero centres like the other sites' heroes (its heading and intro already do) */
@media (max-width: 767px) {
	body .hero-home-page .wgh-eyebrow { display: flex !important; margin-left: auto; margin-right: auto; }
	body .hero-home-page .wgh-hero-actions { justify-content: center; }
}
body .hero-home-page .wgh-eyebrow { margin-bottom: 28px !important; } body .hero-home-page h1 { margin-top: 0 !important; } /* eyebrow to heading: 28px, the same as Find an Engineer */
/* custom.css hides every ::before; the eyebrow dot must show */
.wgh-eyebrow::before { visibility: visible !important; }

/* Phones: the hero type and spacing of the articles homepage, the reference for every site (2026-10-14).
   Tag 48px under the header, 28px to the heading, 28px to the intro, 34px to the buttons; no text shadow. */
@media (max-width: 767px) {
	body .hero-home-page { padding-top: 48px !important; }
	body .hero-home-page h1 {
		margin: 0 0 28px !important; font-size: 33.6px !important; font-weight: 700 !important;
		line-height: 1.05 !important; letter-spacing: -0.03em !important; text-shadow: none !important;
	}
	body .hero-home-page h1 * { text-shadow: none !important; }
	body .hero-home-page h1 ~ p {
		margin: 0 0 34px !important; font-size: 18.08px !important; line-height: 1.6 !important;
		letter-spacing: normal !important; color: rgba(11, 25, 73, 0.72) !important; text-shadow: none !important;
	}
	body .hero-home-page .wgh-hero-actions { margin-top: 0 !important; }
}
@media (max-width: 767px) {
	body .hero-home-page h1 + .content { margin: 0 0 34px !important; padding: 0 !important; }
	body .hero-home-page h1 + .content p {
		margin: 0 !important; font-size: 18.08px !important; line-height: 1.6 !important;
		letter-spacing: normal !important; color: rgba(11, 25, 73, 0.72) !important; text-shadow: none !important;
	}
}

/* Hero background: the articles masthead exactly (2026-10-14). The shop hero is taller (it holds the
   part finder), so the wash, graph paper and colour glows are sized in px to the articles hero
   rather than stretching with this one. */
body .hero-home-page {
	background: linear-gradient(180deg, #eaf3fd 0px, #f4f9fe 339px, #ffffff 770px) !important;
	overflow: visible; overflow-x: clip;
}
body .hero-home-page::before {
	inset: 0 0 auto 0 !important; height: 770px !important; z-index: -2 !important;
	background-image:
		linear-gradient(to right, rgba(11, 25, 73, 0.055) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(11, 25, 73, 0.055) 1px, transparent 1px) !important;
	background-size: 68px 68px !important;
	-webkit-mask-image: radial-gradient(ellipse 85% 70% at 50% 0%, #000 25%, transparent 82%) !important;
	mask-image: radial-gradient(ellipse 85% 70% at 50% 0%, #000 25%, transparent 82%) !important;
}
body .hero-home-page::after {
	inset: -14rem -10rem auto -12rem !important; height: 42rem !important; z-index: -2 !important;
	background-image:
		radial-gradient(circle at 18% 30%, rgba(47, 167, 226, 0.20), transparent 55%),
		radial-gradient(circle at 88% 62%, rgba(255, 102, 0, 0.10), transparent 55%) !important;
	filter: blur(60px) !important;
}
/* The glow layer ends partway down this taller hero: fade its lower half out so it leaves no line */
body .hero-home-page::after { -webkit-mask-image: linear-gradient(#000 45%, transparent 100%) !important; mask-image: linear-gradient(#000 45%, transparent 100%) !important; }

/* Brand hero: the Brands tag sits above the brand logo, each on its own line (2026-10-14) */
body .wgh-brand-hero .wgh-eyebrow { display: flex !important; margin: 0 0 16px !important; }
body .wgh-brand-hero .wgh-brand-hero-logo { display: flex; width: fit-content; }


/* Phones: the drop-down search bar is the shop's desktop search field, word for word, in the same
   panel as the other sites' bars, with a line saying what it searches (2026-10-14). */
@media (max-width: 991px) {
	body .header .search-form-container .aws-container .aws-search-form { height: 52px; }
	body .header .search-form-container .aws-container .aws-wrapper { position: relative; }
	body .header .search-form-container .aws-container .aws-wrapper::before {
		content: "";
		position: absolute;
		left: 18px;
		top: 50%;
		width: 16px;
		height: 16px;
		transform: translateY(-50%);
		z-index: 2;
		pointer-events: none;
		visibility: visible;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b1949' stroke-opacity='.55' stroke-width='2' stroke-linecap='round'%3E%3Csvg x='0' y='0' width='24' height='24' viewBox='0 0 512 512'%3E%3Cpath fill=%27%230B1949%27 stroke='none' d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E%3C/svg%3E") no-repeat center / contain;
	}
	body .header .search-form-container .aws-container input[type=search].aws-search-field {
		height: 52px !important;
		padding: 0 120px 0 46px !important;
		background: #f6f8fc !important;
		border: 1.5px solid #cfd8e6 !important;
		border-radius: 12px !important;
		box-shadow: none !important;
		font-size: 15.5px;
		color: var(--wh-navy);
		transition: border-color .15s, box-shadow .15s, background-color .15s;
	}
	body .header .search-form-container .aws-container input[type=search].aws-search-field::placeholder { color: rgba(11, 25, 73, 0.5); }
	body .header .search-form-container .aws-container input[type=search].aws-search-field:hover { border-color: #b7c4d8 !important; }
	body .header .search-form-container .aws-container input[type=search].aws-search-field:focus {
		background: #fff !important;
		border-color: var(--wh-blue) !important;
		box-shadow: 0 0 0 4px rgba(47, 167, 226, 0.15) !important;
		outline: none;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn {
		top: 6px;
		right: 6px;
		bottom: 6px;
		width: auto;
		height: auto;
		padding: 0 16px;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		border-radius: 9px !important;
		cursor: pointer;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after {
		content: "Search";
		position: static;
		visibility: visible;
		color: #fff;
		font-size: 15px;
		font-weight: 600;
		background: none !important;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn svg { width: 18px; height: 18px; fill: #fff; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon { display: flex; margin: 0; height: auto; line-height: 1; }
	body .header .search-form-container .aws-container .aws-search-clear { right: 118px; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn {
		flex-direction: row !important;
		height: 40px !important;
		top: 6px !important;
		overflow: visible;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon { width: auto !important; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::before { display: none !important; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after {
		opacity: 1 !important;
		width: auto !important;
		height: auto !important;
		line-height: 1.2;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn { line-height: 1.2; justify-content: center; }
	body .header .search-form-container .aws-container .aws-wrapper::before { z-index: 10; }
	body .header .search-form-container .aws-container input[type=search].aws-search-field { position: relative; z-index: 1; }
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon {
		position: static !important;
		transform: none !important;
		left: auto !important;
		top: auto !important;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn::after,
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn:hover::after {
		transform: none !important;
		left: auto !important;
		top: auto !important;
		z-index: auto !important;
		display: inline !important;
	}
	body .header .search-form-container .aws-container .aws-search-form .aws-form-btn { overflow: visible !important; box-shadow: none !important; }
	body .header-contents-inner .search-form-container { padding: 14px 16px 16px !important; background: #fff !important; border-top: 1px solid rgba(11, 25, 73, 0.06); border-bottom: 1px solid rgba(11, 25, 73, 0.08); box-shadow: 0 18px 30px -22px rgba(11, 25, 73, 0.35) !important; }
	body .header-contents-inner .search-form-container::before { content: "Search spare parts by brand, part or model"; display: block; margin: 0 0 10px; font-size: 13.5px; font-weight: 600; line-height: 1.35; letter-spacing: -0.01em; color: #0b1949; text-align: left; visibility: visible !important; }
	body .header .search-form-container .aws-container .aws-search-form { height: 52px; }
}
@media (max-width: 991px) { body .header .search-form-container .aws-container .aws-search-form .aws-form-btn { gap: 8px !important; } body .header .search-form-container .aws-container .aws-search-form .aws-form-btn .aws-search-btn_icon { flex: none; width: 17px !important; height: 17px !important; } }

/* Phones: a lighter account circle, 36px with a thin ring, so the header row breathes (2026-10-14) */
@media (max-width: 991px) {
	.wgh-acct-slot > button, .wgh-hdr .wgh-acct-btn, .header .wgh-acct .wgh-acct-btn { width: 36px !important; height: 36px !important; min-width: 36px; }
	.wgh-acct-slot > button > *, .wgh-acct-slot > button img, .wgh-acct-btn img { width: 36px !important; height: 36px !important; }
	.wgh-acct-btn.is-initials, .wgh-acct-slot > button .is-initials { font-size: 13px !important; }
	.wgh-acct-slot > button, .wgh-acct-slot > button *, .wgh-acct-btn, .wgh-acct-btn *, .wgh-acct-slot .wgh-av-pre, .wgh-acct .wgh-av-pre { box-shadow: none !important; }
	.wgh-acct-slot > button:has(img), .wgh-acct-slot > button:has(.wgh-av-pre), .wgh-acct-btn.has-photo, .wgh-acct-btn.wgh-av-pre, .header .wgh-acct-btn:has(img) {
		box-shadow: 0 0 0 1.5px #fff, 0 0 0 2.5px rgba(11, 25, 73, 0.14), 0 3px 8px -3px rgba(11, 25, 73, 0.35) !important;
	}
}
/* Phones: the text stops before the rating-plate camera, which sits just left of the Search button */
@media (max-width: 991px) { body .header .search-form-container .aws-container input[type=search].aws-search-field { padding-right: 160px !important; text-overflow: ellipsis; } }
@media (max-width: 991px) { body .header .buttons-container .wgh-acct .wgh-acct-btn { width: 36px !important; height: 36px !important; min-width: 36px; } }

/* Phones: the account menu drops from the bottom of the header at full width, like the search bar (2026-10-14) */
@media (max-width: 991px) {
	.wgh-acct-menu, .wgh-acct-panel {
		position: fixed !important; top: 113px !important; left: 0 !important; right: 0 !important; bottom: auto !important;
		width: auto !important; max-width: none !important; margin: 0 !important; transform: none !important;
		max-height: calc(100dvh - 113px); overflow-y: auto; overscroll-behavior: contain;
		padding: 8px 10px 12px !important; border-radius: 0 !important; border-width: 1px 0 !important; border-color: rgba(11, 25, 73, 0.08) !important;
		box-shadow: 0 18px 30px -22px rgba(11, 25, 73, 0.35) !important;
	}
	[data-radix-popper-content-wrapper]:has(> .wgh-acct-panel) { position: fixed !important; top: 0 !important; left: 0 !important; transform: none !important; width: 100% !important; min-width: 0 !important; }
}
/* Logo: the link wraps the image exactly, so the row centres it level with the buttons (it sat 4px high) */
body .header a#logo-main { display: flex !important; align-items: center; line-height: 0; }

/* Site switcher: the site you're on is filled with its own colour, white text and icon (2026-10-14) */
.wgh-hdr .wgh-areas .wgh-area.is-here, .wgh-hdr .wgh-areas .wgh-area.is-here:hover,
.wgh-hdr .wgh-area-tabs .wgh-area.is-here, body .header .wgh-areas .wgh-area.is-here, body .header .wgh-area-tabs .wgh-area.is-here {
	background: var(--area) !important; color: #fff !important; font-weight: 700; box-shadow: 0 2px 6px -2px rgba(11, 25, 73, 0.35) !important;
}
.wgh-hdr .wgh-area.is-here .wgh-fa, body .header .wgh-area.is-here .wgh-fa, body .header .wgh-area.is-here svg { color: #fff !important; fill: #fff !important; }
.wgh-hdr .wgh-area-tabs .wgh-area.is-here::after, body .header .wgh-area-tabs .wgh-area.is-here::after { display: none !important; }

/* Site switcher colours: palette A, chosen 2026-10-14 (brand orange is #FF6600) */
.wgh-hdr .wgh-area.is-articles, body .header .wgh-area.is-articles { --area: #0B1949; }
.wgh-hdr .wgh-area.is-forum, body .header .wgh-area.is-forum { --area: #1676A8; }
.wgh-hdr .wgh-area.is-engineers, body .header .wgh-area.is-engineers { --area: #0F766E; }
.wgh-hdr .wgh-area.is-shop, body .header .wgh-area.is-shop { --area: #FF6600; }

/* Desktop: the account menu opens as a centred card over a dimmed, blurred page (2026-10-14).
   The menu box itself is transparent: ::before is the full-screen backdrop, ::after the white card
   (both behind the menu's items). A click on the backdrop sends Escape, which every site's menu
   already closes on. Phones keep the full-width drop-down. */
@keyframes wgh-acct-in { from { opacity: 0; } to { opacity: 1; } }
@media (min-width: 992px) {
	.wgh-acct-menu, .wgh-acct-panel {
		position: fixed !important; inset: 0 !important; margin: auto !important; transform: none !important;
		width: 420px !important; max-width: calc(100vw - 32px) !important; height: fit-content !important; max-height: calc(100vh - 64px);
		z-index: 3000 !important; padding: 14px !important; overflow: visible !important;
		background: transparent !important; border: 0 !important; border-radius: 16px !important; box-shadow: none !important;
		animation: wgh-acct-in .16s ease-out !important;
	}
	.wgh-acct-menu::before, .wgh-acct-panel::before {
		content: "" !important; display: block !important; visibility: visible !important; position: fixed; inset: 0; z-index: -2;
		background: rgba(11, 25, 73, 0.45); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
	}
	.wgh-acct-menu::after, .wgh-acct-panel::after {
		content: "" !important; display: block !important; visibility: visible !important; position: absolute; inset: 0; z-index: -1;
		background: #fff; border: 1px solid #e3e9f2; border-radius: 16px; box-shadow: 0 30px 80px -24px rgba(11, 25, 73, 0.55);
	}
	[data-radix-popper-content-wrapper]:has(> .wgh-acct-panel) { position: fixed !important; inset: 0 !important; transform: none !important; width: 100% !important; height: 100% !important; min-width: 0 !important; z-index: 3000 !important; pointer-events: none; }
	[data-radix-popper-content-wrapper]:has(> .wgh-acct-panel) > .wgh-acct-panel { pointer-events: auto; }
}

/* Site switcher: hairline dividers between the items, none beside the filled (current) one (2026-10-14) */
.wgh-hdr .wgh-areas .wgh-area, body .header .wgh-areas .wgh-area, .wgh-hdr .wgh-area-tabs .wgh-area, body .header .wgh-area-tabs .wgh-area { position: relative; }
.wgh-hdr .wgh-areas .wgh-area + .wgh-area::before, body .header .wgh-areas .wgh-area + .wgh-area::before {
	content: ""; position: absolute; left: -1px; top: 50%; width: 1px; height: 14px; transform: translateY(-50%); background: rgba(11, 25, 73, 0.16); visibility: visible !important; display: block !important;
}
.wgh-hdr .wgh-area-tabs .wgh-area + .wgh-area::before, body .header .wgh-area-tabs .wgh-area + .wgh-area::before {
	content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 1px; background: rgba(11, 25, 73, 0.14); visibility: visible !important; display: block !important;
}
.wgh-hdr .wgh-area.is-here::before, .wgh-hdr .wgh-area.is-here + .wgh-area::before,
body .header .wgh-area.is-here::before, body .header .wgh-area.is-here + .wgh-area::before { display: none !important; }

/* Desktop switcher: items fill the strip top to bottom with square edges, like the phone tabs (2026-10-14) */
.wgh-hdr .wgh-areas, body .header .wgh-areas { align-self: stretch; height: 40px; gap: 0 !important; }
.wgh-hdr .wgh-areas .wgh-area, body .header .wgh-areas .wgh-area { height: 40px !important; padding: 0 14px !important; border-radius: 0 !important; }
.wgh-hdr .wgh-areas .wgh-area.is-here, body .header .wgh-areas .wgh-area.is-here { box-shadow: none !important; }
/* Switcher dividers run the full height of the strip / tab bar */
.wgh-hdr .wgh-areas .wgh-area + .wgh-area::before, body .header .wgh-areas .wgh-area + .wgh-area::before,
.wgh-hdr .wgh-area-tabs .wgh-area + .wgh-area::before, body .header .wgh-area-tabs .wgh-area + .wgh-area::before {
	top: 0 !important; bottom: 0 !important; height: auto !important; transform: none !important; left: 0 !important; background: rgba(11, 25, 73, 0.12) !important;
}
/* No divider on either side of the filled (current) item */
.wgh-hdr .wgh-areas .wgh-area.is-here::before, .wgh-hdr .wgh-areas .wgh-area.is-here + .wgh-area::before,
.wgh-hdr .wgh-area-tabs .wgh-area.is-here::before, .wgh-hdr .wgh-area-tabs .wgh-area.is-here + .wgh-area::before,
body .header .wgh-areas .wgh-area.is-here::before, body .header .wgh-areas .wgh-area.is-here + .wgh-area::before,
body .header .wgh-area-tabs .wgh-area.is-here::before, body .header .wgh-area-tabs .wgh-area.is-here + .wgh-area::before { display: none !important; }
/* Switcher dividers as real borders: they snap to whole pixels (a 1px pseudo line on a fractional
   position smeared across two pixels and looked thick). None beside the current item. */
.wgh-hdr .wgh-areas .wgh-area + .wgh-area::before, body .header .wgh-areas .wgh-area + .wgh-area::before,
.wgh-hdr .wgh-area-tabs .wgh-area + .wgh-area::before, body .header .wgh-area-tabs .wgh-area + .wgh-area::before { display: none !important; }
.wgh-hdr .wgh-areas .wgh-area + .wgh-area, body .header .wgh-areas .wgh-area + .wgh-area,
.wgh-hdr .wgh-area-tabs .wgh-area + .wgh-area, body .header .wgh-area-tabs .wgh-area + .wgh-area { border-left: 1px solid rgba(11, 25, 73, 0.12) !important; }
.wgh-hdr .wgh-areas .wgh-area.is-here, .wgh-hdr .wgh-areas .wgh-area.is-here + .wgh-area,
.wgh-hdr .wgh-area-tabs .wgh-area.is-here, .wgh-hdr .wgh-area-tabs .wgh-area.is-here + .wgh-area,
body .header .wgh-areas .wgh-area.is-here, body .header .wgh-areas .wgh-area.is-here + .wgh-area,
body .header .wgh-area-tabs .wgh-area.is-here, body .header .wgh-area-tabs .wgh-area.is-here + .wgh-area { border-left-color: transparent !important; }

/* Phones: the floating basket says what it is — "Basket" and the running total beside the cart icon,
   item count on the corner — and only appears once something is in the basket (2026-10-14) */
@media (max-width: 991px) {
	html body .header a#cartIcon.wgh-hdr-basket {
		display: inline-flex !important; align-items: center; gap: 8px; width: auto !important; height: 52px !important;
		right: 16px !important; bottom: 16px !important; left: auto !important; top: auto !important; padding: 0 18px 0 8px !important;
		border-radius: 12px !important; background: #ff6600 !important; color: #fff !important; z-index: 1040 !important;
		box-shadow: 0 10px 24px -8px rgba(11, 25, 73, 0.45) !important; text-decoration: none !important;
	}
	html body .header a#cartIcon.wgh-hdr-basket.no-items { display: none !important; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-ic { width: 36px !important; height: 36px !important; background: transparent !important; box-shadow: none !important; display: inline-flex !important; align-items: center; justify-content: center; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-ic svg { width: 20px !important; height: 20px !important; color: #fff; fill: currentColor; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt { display: flex !important; flex-direction: column; justify-content: center; gap: 2px; line-height: 1.1; text-align: left; color: #fff; white-space: nowrap; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt small { display: block !important; font-size: 11.5px; font-weight: 500; opacity: .9; color: #fff; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total, html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total * { display: block; font-size: 15px !important; font-weight: 700 !important; color: #fff !important; }
	html body .header a#cartIcon.wgh-hdr-basket b.title { display: flex !important; align-items: center; justify-content: center; position: absolute !important; top: -8px !important; right: -8px !important; left: auto !important; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: #0b1949 !important; border: 2px solid #fff; color: #fff !important; font-size: 12px; font-weight: 700; line-height: 1; }
}
@media (max-width: 991px) {
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total * { display: inline !important; font-size: inherit !important; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total .tax_label, html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total small, html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total .includes_tax { display: none !important; }
}

/* Coupon error ("Please enter a coupon code.") sits under the field instead of squeezing into the row (2026-10-14) */
.wgh-basket-coupon, form.checkout_coupon { position: relative; }
.wgh-basket-coupon .coupon-error-notice, form.checkout_coupon .coupon-error-notice {
	position: absolute; left: 0; top: calc(100% + 6px); margin: 0 !important; padding: 0 !important; width: max-content; max-width: 100%;
	font-size: 13px; font-weight: 500; line-height: 1.3; color: #c0392b !important; background: none !important; border: 0 !important;
}
.wgh-basket-coupon input.has-error, form.checkout_coupon input.has-error { border-color: #c0392b !important; box-shadow: 0 0 0 3px rgba(192, 57, 43, 0.12) !important; }

/* Phones: hero bottom spacing like the other sites (it was 100px) */
@media (max-width: 767px) { body .hero-home-page { padding-bottom: 48px !important; } }

/* Phones: shop page heroes (category, brand, basket, pages) centre like the homepage hero (2026-10-14) */
@media (max-width: 767px) {
	body .wgh-page-hero .wgh-page-hero-copy { text-align: center; }
	body .wgh-page-hero .wgh-page-hero-copy .wgh-eyebrow { display: flex !important; margin-left: auto !important; margin-right: auto !important; }
	body .wgh-page-hero .wgh-page-hero-copy h1, body .wgh-page-hero .wgh-page-hero-copy .wgh-page-intro { text-align: center; margin-left: auto; margin-right: auto; }
	body .wgh-page-hero .wgh-page-hero-copy .wgh-hero-actions { justify-content: center; }
	body .wgh-page-hero .wgh-brand-hero-logo { margin-left: auto; margin-right: auto; }
}

/* Phones: shop page heroes use the homepage hero rules (tag 48px down, 28px to the title, 33.6px title,
   28px to the intro, 18.08px intro, 34px to the buttons, 48px at the bottom) (2026-10-14) */
@media (max-width: 767px) {
	body .wgh-page-hero { padding-top: 48px !important; padding-bottom: 48px !important; }
	body .wgh-page-hero .wgh-page-hero-copy .wgh-eyebrow { margin-top: 0 !important; margin-bottom: 28px !important; }
	body .wgh-page-hero .wgh-page-hero-copy h1 {
		margin: 0 !important; font-size: 33.6px !important; font-weight: 700 !important; line-height: 1.05 !important;
		letter-spacing: -0.03em !important; text-shadow: none !important;
	}
	body .wgh-page-hero .wgh-page-hero-copy .wgh-page-intro {
		margin: 28px auto 0 !important; font-size: 18.08px !important; line-height: 1.6 !important; letter-spacing: normal !important;
		color: rgba(11, 25, 73, 0.72) !important; text-shadow: none !important;
	}
	body .wgh-page-hero .wgh-page-hero-copy .wgh-hero-actions { margin-top: 34px !important; }
	/* Brand pages: tag, then the brand logo, then the title */
	body .wgh-brand-hero .wgh-page-hero-copy .wgh-eyebrow { margin-bottom: 16px !important; }
	body .wgh-brand-hero .wgh-brand-hero-logo { margin-bottom: 28px !important; }
}
@media (max-width: 767px) { body .wgh-brand-hero .wgh-brand-hero-logo { margin-left: auto !important; margin-right: auto !important; } }
/* Phones: the hero grid column can not be pushed wider than the page by the finder card */
@media (max-width: 991px) { body .wgh-cat-hero-grid { grid-template-columns: minmax(0, 1fr) !important; } }

/* Phone menu footer links: regular weight and size, as on the other sites (the theme bolds every link) */
.wgh-drawer .wgh-d-util a { font-size: 13.5px !important; font-weight: 400 !important; letter-spacing: normal !important; line-height: 1.4 !important; }

/* Narrow phones (360px and below): keep the switcher icons, just a little tighter (2026-10-15) */
@media (max-width: 360px) {
	.wgh-hdr .wgh-area-tabs .wgh-area, body .header .wgh-area-tabs .wgh-area { gap: 4px !important; font-size: 12px !important; letter-spacing: -0.01em; }
	.wgh-hdr .wgh-area-tabs .wgh-area .wgh-fa, body .header .wgh-area-tabs .wgh-area .wgh-fa, body .header .wgh-area-tabs .wgh-area svg { display: inline-block !important; width: 11px !important; height: 11px !important; }
}

/* Shipping and payment choices: our own radio (no browser black ring) — grey circle, orange ring and dot when chosen (2026-10-15) */
.woocommerce-shipping-methods input[type="radio"], #shipping_method input[type="radio"], .wc_payment_methods input[type="radio"], .woocommerce-checkout input[type="radio"].input-radio {
	-webkit-appearance: none !important; appearance: none !important; flex: none; width: 20px !important; height: 20px !important; margin: 0 10px 0 0;
	border: 2px solid #cfd8e6 !important; border-radius: 50% !important; background: #fff !important; box-shadow: none !important; outline: none !important;
	cursor: pointer; vertical-align: middle; transition: border-color .15s, box-shadow .15s;
}
.woocommerce-shipping-methods input[type="radio"]:checked, #shipping_method input[type="radio"]:checked, .wc_payment_methods input[type="radio"]:checked, .woocommerce-checkout input[type="radio"].input-radio:checked {
	border-color: #ff6600 !important; background: radial-gradient(circle, #ff6600 0 4.5px, #fff 5px) !important;
}
.woocommerce-shipping-methods input[type="radio"]:focus-visible, #shipping_method input[type="radio"]:focus-visible, .wc_payment_methods input[type="radio"]:focus-visible { box-shadow: 0 0 0 3px rgba(255, 102, 0, 0.2) !important; }

/* Phones: 20px side gutter on every Whitegoods Help site (2026-10-15, was 16px) */
@media (max-width: 767px) {
	.container, .container-sm, .container-md { padding-left: 20px !important; padding-right: 20px !important; }
	.wgh-dropsearch, .wgh-crumbs-in { padding-left: 20px !important; padding-right: 20px !important; }
}

/* Desktop heroes: one spec on all four sites (2026-10-15). Content starts 72px below the nav, tag 28 title 24 intro
   (18.5px, 576px wide) 32 buttons/search, 80px bottom; the right panel lines up with the tag. */
@media (min-width: 992px) {
	body .hero-home-page { padding-top: 72px !important; padding-bottom: 80px !important; min-height: 0 !important; }
	body .hero-home-page > .container, body .hero-home-page > .container > .row { height: auto !important; min-height: 0 !important; }
	body .hero-home-page > .container > .row { align-items: flex-start !important; }
	body .hero-home-page h1 { margin-bottom: 24px !important; }
	body .hero-home-page .content p { margin-top: 0 !important; max-width: 576px !important; font-size: 18.5px !important; line-height: 1.6 !important; color: rgba(11, 25, 73, 0.72) !important; }
	body .hero-home-page .wgh-hero-actions { margin-top: 32px !important; }
}

/* Text wrapping: normal everywhere (2026-10-15). The balance / no-orphan rules held lines short of the full width. */
*, *::before, *::after { text-wrap-style: auto !important; }

/* ---------- Hub heroes (2026-10-15): pieces every homepage hero shares ----------
   .wgh-trust: three facts in one white bar. .wgh-next: "Also on Whitegoods Help" links to the other areas.
   .wgh-phead: the panel header (uppercase label + green pill). Area colour comes from --c on each link. */
.wgh-trust { display: grid; grid-template-columns: repeat(3, auto); width: max-content; max-width: 100%; margin: 34px 0 0; padding: 0; list-style: none; border: 1px solid #e6ebf3; border-radius: 12px; background: #fff; box-shadow: 0 10px 24px -20px rgba(11, 25, 73, 0.35); text-align: left; }
.wgh-trust li { display: flex; align-items: center; gap: 11px; margin: 0; padding: 12px 18px 12px 16px; white-space: nowrap; }
.wgh-trust li::before { content: none !important; }
.wgh-trust li + li { border-left: 1px solid #edf1f7; }
.wgh-trust svg { flex: none; width: 18px; height: 18px; color: #2fb36a; fill: currentColor; }
.wgh-trust b { display: block; font-size: 14.5px; font-weight: 700; line-height: 1.3; color: #0b1949; }
.wgh-trust small { display: block; margin-top: 1px; font-size: 13px; line-height: 1.3; color: rgba(11, 25, 73, 0.72); }
.wgh-next { display: grid; grid-template-columns: auto repeat(3, minmax(0, 1fr)); align-items: center; gap: 12px; margin: 0; padding: 0 0 40px; }
.wgh-next-l { padding-right: 8px; font-size: 12.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(11, 25, 73, 0.5); white-space: nowrap; }
.wgh-next a { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid #e6ebf3; border-radius: 12px; background: #fff; color: #0b1949 !important; text-decoration: none !important; text-align: left; transition: border-color .15s, transform .15s; }
.wgh-next a:hover { border-color: var(--c); transform: translateY(-2px); }
.wgh-next-ic { display: flex; align-items: center; justify-content: center; flex: none; width: 36px; height: 36px; border-radius: 50%; background: var(--c); color: #fff; }
.wgh-next-ic svg { width: 16px; height: 16px; fill: currentColor; }
.wgh-next-t { flex: 1; min-width: 0; }
.wgh-next-t small { display: block; font-size: 12px; font-weight: 700; line-height: 1.3; color: var(--c); }
.wgh-next-t b { display: block; margin-top: 1px; font-size: 14.5px; font-weight: 700; line-height: 1.3; }
.wgh-next-go { flex: none; width: 13px; height: 13px; color: var(--c); fill: currentColor; }
.wgh-next .is-articles { --c: var(--hub-articles, #1E40AF); } .wgh-next .is-forum { --c: var(--hub-forum, #0891B2); }
.wgh-next .is-engineers { --c: var(--hub-engineers, #16A34A); } .wgh-next .is-shop { --c: var(--hub-shop, #FF6600); }
.wgh-phead { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 13px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: rgba(11, 25, 73, 0.55); }
.wgh-phead em { display: inline-flex; align-items: center; gap: 6px; padding: 5px 11px 5px 9px; border-radius: 999px; background: #e3f5ea; color: #1f7a45; font-style: normal; font-size: 13.5px; font-weight: 700; letter-spacing: normal; text-transform: none; white-space: nowrap; }
.wgh-phead em svg { width: 15px; height: 15px; color: #2fb36a; fill: currentColor; }
@media (max-width: 1199px) {
	.wgh-next { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.wgh-next-l { grid-column: 1 / -1; }
}
@media (max-width: 991px) {
	.wgh-trust { margin-left: auto; margin-right: auto; }
	.wgh-next-l { text-align: center; }
}
@media (max-width: 767px) {
	.wgh-trust { grid-template-columns: 1fr; width: 100%; }
	.wgh-trust li + li { border-left: 0; border-top: 1px solid #edf1f7; }
	.wgh-next { grid-template-columns: 1fr; gap: 10px; padding-bottom: 40px; }
	.wgh-phead { font-size: 12px; }
	.wgh-phead em { font-size: 12.5px; padding: 4px 9px 4px 7px; }
}

/* Shop hero search (hub heroes, 2026-10-15): the shared .wgh-field-search, which the shop otherwise doesn't load */
.wgh-field-search { position: relative; display: flex; align-items: center; gap: 8px; width: 100%; height: 52px; padding: 5px 5px 5px 46px; border: 1.5px solid #cfd8e6; border-radius: 12px; background: #f6f8fc; box-shadow: none; text-align: left; }
.wgh-field-search .wgh-field-ic { position: absolute; left: 17px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); color: #0b1949; pointer-events: none; }
.wgh-field-search input { flex: 1; min-width: 0; height: 100%; margin: 0; padding: 0; border: 0 !important; background: transparent !important; box-shadow: none !important; outline: none !important; font: inherit; font-size: 15.5px; font-weight: 400; letter-spacing: -0.02em; color: #0b1949; text-overflow: ellipsis; -webkit-appearance: none; appearance: none; }
.wgh-field-search input::placeholder { color: rgba(11, 25, 73, 0.5); opacity: 1; text-transform: none; }
.wgh-field-search input::-webkit-search-cancel-button, .wgh-field-search input::-webkit-search-decoration { -webkit-appearance: none; appearance: none; display: none; }
.wgh-field-search button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; flex: none; height: 40px; margin: 0; padding: 0 16px; border: 0; border-radius: 9px; background: #ff6600; color: #fff; font: inherit; font-size: 15px; font-weight: 600; letter-spacing: -0.32px; line-height: 1; white-space: nowrap; cursor: pointer; box-shadow: none; transition: background .15s; }
.wgh-field-search button:hover { background: #ff6600; }
.wgh-field-search button svg { width: 17px; height: 17px; flex: none; }
body .hero-home-page .wgh-hero-search { max-width: 576px; margin: 34px auto 0; }
body .hero-home-page .wgh-hero-search .wgh-field-ic { width: 16px; height: 16px; }
body .hero-home-page .wgh-hero-search input[type="search"] { height: 100%; padding: 0 !important; border: 0 !important; background: transparent !important; font-size: 15.5px !important; }
body .hero-home-page .wgh-trust svg { width: 18px; height: 18px; }
body .hero-home-page { padding-bottom: 0 !important; }
body .wgh-shop-next { position: relative; margin-top: 40px; }
body .wgh-shop-next .wgh-next a { font-size: inherit; line-height: normal; }
body .wgh-shop-next .wgh-next-ic svg { width: 16px; height: 16px; }
@media (min-width: 992px) {
	body .hero-home-page { padding-bottom: 0 !important; }
	body .hero-home-page .wgh-hero-search { margin: 32px 0 0; }
	body .wgh-shop-next { margin-top: 56px; }
}

/* Title highlight: same 700 weight as the title (theme made spans 900) */
body .hero-home-page h1 span, body .wgh-cat-hero h1 span, body .wgh-brand-hero h1 span { font-weight: inherit !important; }

/* Trust facts, option A (2026-10-15): a plain row under the search, no white box, so it can't read as part of the field.
   Icons sit in soft green circles. Phones: one fact per line, the group centred. */
.wgh-trust, .wh-hub-hero-trust { display: flex !important; flex-wrap: wrap; gap: 14px 32px !important; width: auto !important; min-width: 0 !important; max-width: none !important; margin: 44px 0 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
.wgh-trust li, .wh-hub-hero-trust li { display: flex !important; align-items: center; gap: 12px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; white-space: nowrap; text-align: left; }
.wgh-trust li > svg, .wh-hub-hero-trust li > svg { box-sizing: border-box; flex: none; width: 38px !important; height: 38px !important; padding: 11px; border-radius: 50%; background: #e3f5ea; color: #1f7a45 !important; }
.wgh-trust b, .wh-hub-hero-trust b { display: block; font-size: 14.5px; font-weight: 700; line-height: 1.3; color: #0b1949; }
.wgh-trust small, .wh-hub-hero-trust small { display: block; margin-top: 1px; font-size: 13px; line-height: 1.3; color: rgba(11, 25, 73, 0.72); }
@media (max-width: 991px) {
	.wgh-trust, .wh-hub-hero-trust { justify-content: center; }
}
@media (max-width: 767px) {
	.wgh-trust, .wh-hub-hero-trust { flex-direction: column; align-items: flex-start !important; width: max-content !important; max-width: 100% !important; margin: 36px auto 0 !important; }
}

body .hero-home-page .wgh-trust li { width: auto !important; flex: none !important; float: none !important; }

/* Phones: shop hero on the shared spacing (intro 34 search 36 facts 40 panel), facts centred (2026-10-15) */
body .hero-home-page .wgh-trust { float: none !important; }
@media (max-width: 991px) {
	body .hero-home-page .content { margin-bottom: 0 !important; }
	body .hero-home-page .part-finder-slider-container { margin-top: 5px; }
}

/* Trust facts on phones (2026-10-15): three across, icon above a centred label and line, so the row centres cleanly. */
@media (max-width: 767px) {
	.wgh-trust, .wh-hub-hero-trust { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); flex-direction: row; align-items: start !important; gap: 0 10px !important; width: 100% !important; max-width: 100% !important; margin: 36px 0 0 !important; }
	.wgh-trust li, .wh-hub-hero-trust li { flex-direction: column; align-items: center; gap: 9px !important; min-width: 0; white-space: normal; text-align: center !important; }
	.wgh-trust b, .wh-hub-hero-trust b { font-size: 13.5px; }
	.wgh-trust small, .wh-hub-hero-trust small { margin-top: 2px; font-size: 12px; line-height: 1.35; }
}

/* Shop hero on phones: the theme floats these, which broke the spacing */
body .hero-home-page .content, body .hero-home-page .wgh-hero-search, body .hero-home-page .wgh-trust { float: none !important; clear: both; }
@media (max-width: 991px) { body .hero-home-page .col-lg-7 .content.to-animate { margin-bottom: 0 !important; } body .hero-home-page .wgh-hero-search { width: 100%; } }

@media (max-width: 991px) { body .hero-home-page .part-finder-slider-container { margin-top: 40px !important; } }

/* Trust facts on phones (2026-10-15, v2): one per line, stacked and centred, icon above its label and line. */
@media (max-width: 767px) {
	.wgh-trust, .wh-hub-hero-trust { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 20px !important; width: 100% !important; }
	.wgh-trust li, .wh-hub-hero-trust li { width: auto !important; flex-direction: column !important; align-items: center !important; gap: 8px !important; text-align: center !important; white-space: nowrap; }
	.wgh-trust b, .wh-hub-hero-trust b { font-size: 14.5px; }
	.wgh-trust small, .wh-hub-hero-trust small { font-size: 13px; }
}

/* Trust facts on phones (2026-10-15, v3, interim): icon on the left, rows left-aligned in a centred block. */
@media (max-width: 767px) {
	.wgh-trust, .wh-hub-hero-trust { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 14px !important; width: max-content !important; max-width: 100% !important; margin: 36px auto 0 !important; }
	.wgh-trust li, .wh-hub-hero-trust li { flex-direction: row !important; align-items: center !important; gap: 12px !important; text-align: left !important; }
}

/* Trust facts on phones (2026-10-15, chosen: option B): icon-left rows in a centred block, hairlines between rows. */
@media (max-width: 767px) {
	.wgh-trust, .wh-hub-hero-trust { gap: 0 !important; }
	.wgh-trust li, .wh-hub-hero-trust li { padding: 12px 4px !important; }
	.wgh-trust li + li, .wh-hub-hero-trust li + li { border-top: 1px solid #e1e8f1 !important; }
	.wgh-trust li:first-child, .wh-hub-hero-trust li:first-child { padding-top: 0 !important; }
	.wgh-trust li:last-child, .wh-hub-hero-trust li:last-child { padding-bottom: 0 !important; }
	.wgh-trust li, .wh-hub-hero-trust li { align-self: stretch; }
}

/* Header search in the exact centre on desktop (2026-10-15), as on the other three sites */
@media (min-width: 992px) {
	body .header .header-contents-inner { display: grid !important; grid-template-columns: minmax(0, 1fr) 560px minmax(0, 1fr); column-gap: 24px; align-items: center; }
	body .header .header-contents-inner > a#logo-main { grid-column: 1; justify-self: start; }
	body .header .header-contents-inner > .search-form-container { grid-column: 2; width: 560px; margin: 0 !important; }
	body .header .header-contents-inner > .buttons-container { grid-column: 3; justify-self: end; margin: 0 !important; }
}

/* Phones: search buttons show the magnifier only (2026-10-15). The word stays for screen readers (font-size 0, not removed). */
@media (max-width: 767px) {
	.wgh-field-search button { width: 44px; padding: 0 !important; gap: 0 !important; font-size: 0 !important; letter-spacing: 0 !important; }
	.wgh-field-search button svg { width: 18px !important; height: 18px !important; }
}
@media (max-width: 767px) {
	body .search-form-container .aws-container .aws-search-form .aws-form-btn { width: 44px !important; min-width: 44px !important; padding: 0 !important; justify-content: center; }
	body .search-form-container .aws-container .aws-search-form .aws-form-btn::after { content: none !important; display: none !important; }
}

/* Phones: icon-only search button is 44px, so the camera and clear button move right and the field gets the room back (2026-10-15) */
@media (max-width: 767px) {
	body .header .search-form-container .wgh-plate-cam { right: 56px !important; }
	body .header .search-form-container .aws-container input[type=search].aws-search-field, body .header .aws-wrapper.has-plate-cam input[type=search].aws-search-field { padding-right: 100px !important; }
	body .header .search-form-container .aws-container .aws-search-clear { right: 96px !important; }
}
@media (max-width: 767px) { body .header .header-contents-inner > .search-form-container { padding-left: 20px !important; padding-right: 20px !important; } }

/* Delivery van in the top strip and the search camera: the nav navy (2026-10-15) */
body .delivery-notice.wgh-strip-note svg, body .wgh-strip-note svg.wgh-fa { color: #000E42 !important; }
body .wgh-plate-cam, body .wgh-plate-cam svg { color: #000E42 !important; }

/* Scan your rating plate (finder): camera tile and arrow in the nav navy, tile a pale navy tint (2026-10-15) */
body .wgh-plate-finder-ic { color: #000E42 !important; background: #eceef4 !important; }
body .wgh-plate-finder-ic svg, body .wgh-plate-fa.is-go { color: #000E42 !important; }

/* How to find your model number: link and question-mark icon in the nav navy (2026-10-15) */
body a.model-no-link { color: #000E42 !important; }
body a.model-no-link::before { background-color: #000E42 !important; color: #000E42 !important; }
body a.model-no-link:hover { color: #000E42 !important; text-decoration: underline; }
html body .hero-home-page .wgh-finder-help a.model-no-link, html body p.wgh-finder-help a.model-no-link, html body a.model-no-link:not(#x) { color: #000E42 !important; }
html body a.model-no-link:not(#x)::before { background-color: #FF6600 !important; color: #FF6600 !important; }

/* Model finder: no white gap between the tips band and the help strip (2026-10-15) */
body .wgh-mf-tips { margin-bottom: 0 !important; }

/* Shop: "Find your part by category" band in the shop colours, not the old blue (2026-10-15): faint warm base, same grid, soft orange wash */
html body .category-listing { background-color: #fdf8f4 !important; background-image: linear-gradient(90deg, rgba(11, 25, 73, 0.043) 1px, transparent 1px), linear-gradient(rgba(11, 25, 73, 0.043) 1px, transparent 1px), radial-gradient(65% 150% at 80% 45%, rgba(255, 102, 0, 0.09), transparent 70%), radial-gradient(50% 120% at 10% 90%, rgba(255, 176, 32, 0.07), transparent 70%) !important; background-size: 68px 68px, 68px 68px, 100% 100%, 100% 100% !important; }

/* Shop: the advice and brands bands in the shop colours too (2026-10-15) */
html body :is(.advice-listing, .home-advice, .brands-listing) { background-color: #fdf8f4 !important; background-image: linear-gradient(90deg, rgba(11, 25, 73, 0.043) 1px, transparent 1px), linear-gradient(rgba(11, 25, 73, 0.043) 1px, transparent 1px), radial-gradient(65% 150% at 80% 45%, rgba(255, 102, 0, 0.09), transparent 70%), radial-gradient(50% 120% at 10% 90%, rgba(255, 176, 32, 0.07), transparent 70%) !important; background-size: 68px 68px, 68px 68px, 100% 100%, 100% 100% !important; }

/* Shop hero: the finder card sits a touch lower (2026-10-15) */
@media (min-width: 992px) { body .hero-home-page .part-finder-slider-container { margin-top: 16px !important; } }

/* Shop bands v2 (2026-10-15): neutral light grey (the warm wash clashed with the cool card pictures), grid kept; card picture areas neutral grey too */
html body :is(.category-listing, .advice-listing, .home-advice, .brands-listing) { background-color: #f6f7f9 !important; background-image: linear-gradient(90deg, rgba(11, 25, 73, 0.04) 1px, transparent 1px), linear-gradient(rgba(11, 25, 73, 0.04) 1px, transparent 1px) !important; background-size: 68px 68px, 68px 68px !important; }
html body .wgh-cat-card .wgh-cat-pic { background-image: linear-gradient(#f8f8f9, #eff0f2) !important; }
html body .wgh-cat-card .wgh-cat-arrow { background: #fff1e6 !important; }
html body .wgh-brand-cta { background-color: #f6f7f9 !important; background-image: none !important; }
html body .wgh-advice-pic { background-color: #f3f4f6 !important; background-image: none !important; }

/* Shop crumbs on phones: the full trail with its separators, no hidden arrow leaving a gap (2026-10-15) */
@media (max-width: 767px) {
	html body .hero-breadcrumbs p#breadcrumbs > span > span:nth-last-child(3)::before { content: none !important; display: none !important; }
	html body .hero-breadcrumbs p#breadcrumbs > span > b { display: inline-block !important; margin: 0 8px !important; }
}

/* Model-number pop-ups on phones: full screen like the rating-plate scanner (2026-10-15). White page, no scrollbar
   track, centred heading, close button fixed top right, scan banner stacked and centred. */
@media (max-width: 767px) {
	html body .modal-container-block.wgh-modal { position: fixed !important; inset: 0 !important; overflow-y: auto !important; background: #fff !important; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	html body .modal-container-block.wgh-modal::-webkit-scrollbar { display: none; }
	html body .modal-container-block.wgh-modal > .overlay { height: auto !important; min-height: 100%; padding: 0 !important; background: #fff !important; overflow: visible !important; scrollbar-width: none; }
	html body .modal-container-block.wgh-modal > .overlay::-webkit-scrollbar { display: none; }
	html body .modal-container-block.wgh-modal > .overlay > .container { max-width: none !important; padding: 64px 20px 32px !important; }
	html body .modal-container-block.wgh-modal .wgh-modal-card { margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
	html body .modal-container-block.wgh-modal .wgh-modal-close { position: fixed !important; top: 14px !important; right: 14px !important; z-index: 5 !important; }
	html body .modal-container-block.wgh-modal .wgh-modal-head { flex-direction: column !important; align-items: center !important; gap: 12px !important; margin-bottom: 22px !important; padding: 0 0 20px !important; text-align: center !important; }
	html body .modal-container-block.wgh-modal .wgh-modal-head .title { display: block; font-size: 24px !important; line-height: 1.2 !important; }
	html body .modal-container-block.wgh-modal .wgh-modal-head .wgh-finder-sub { display: block; margin-top: 4px; }
	html body .modal-container-block.wgh-modal .model-no-modal-content .content { text-align: center !important; }
	html body .modal-container-block.wgh-modal .wgh-plate-banner.is-modal { flex-direction: column !important; align-items: center !important; text-align: center !important; gap: 12px !important; }
	html body .modal-container-block.wgh-modal .wgh-plate-banner.is-modal .wgh-plate-btn { width: 100% !important; }
}
@media (max-width: 767px) { html body .modal-container-block.wgh-modal .wgh-modal-card > .row { margin-left: 0 !important; margin-right: 0 !important; } html body .modal-container-block.wgh-modal .wgh-modal-card > .row > [class*=col-] { padding-left: 0 !important; padding-right: 0 !important; } }
@media (max-width: 767px) { html body .modal-container-block.wgh-modal .wgh-modal-card > .row { width: 100% !important; align-self: stretch !important; } }

/* Shop crumbs on phones: the full trail on one line, swipe sideways, no scrollbar, no truncation (2026-10-15) */
@media (max-width: 767px) {
	html body .hero-breadcrumbs p#breadcrumbs { overflow-x: auto !important; overflow-y: hidden !important; white-space: nowrap !important; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	html body .hero-breadcrumbs p#breadcrumbs::-webkit-scrollbar { display: none; }
	html body .hero-breadcrumbs p#breadcrumbs > span { display: flex !important; flex-wrap: nowrap !important; width: max-content !important; max-width: none !important; }
	html body .hero-breadcrumbs p#breadcrumbs > span > * { display: inline-flex !important; flex: none !important; min-width: auto !important; max-width: none !important; overflow: visible !important; text-overflow: clip !important; white-space: nowrap !important; }
	html body .hero-breadcrumbs p#breadcrumbs > span > span:nth-last-child(n)::before { content: none !important; }
}

/* ---------- Checkout tidy (2026-10-15) ---------- */
/* Coupon: the message sits inside the field, on the right, and the field turns red */
body.woocommerce-checkout form.checkout_coupon .form-row-first { position: relative !important; }
body.woocommerce-checkout form.checkout_coupon .input-text.has-error { border-color: #d64545 !important; box-shadow: 0 0 0 3px rgba(214, 69, 69, 0.12) !important; padding-right: 230px !important; }
body.woocommerce-checkout form.checkout_coupon .coupon-error-notice { position: absolute !important; top: 50% !important; right: 16px !important; transform: translateY(-50%); max-width: 60%; margin: 0 !important; padding: 0 !important; overflow: hidden; font-size: 13.5px !important; font-weight: 600 !important; line-height: 1.2 !important; color: #c23434 !important; white-space: nowrap; text-overflow: ellipsis; pointer-events: none; }
@media (max-width: 767px) {
	body.woocommerce-checkout form.checkout_coupon .input-text.has-error { padding-right: 150px !important; }
	body.woocommerce-checkout form.checkout_coupon .coupon-error-notice { font-size: 12.5px !important; max-width: 55%; }
}

/* Payment: one clean card instead of three nested boxes */
body.woocommerce-checkout #payment { background: none !important; }
body.woocommerce-checkout #payment ul.payment_methods { margin: 0 !important; padding: 0 !important; border: 0 !important; }
body.woocommerce-checkout #payment ul.payment_methods > li { margin: 0 !important; padding: 18px 18px 20px !important; border: 1px solid #e6ebf3 !important; border-radius: 14px !important; background: #fff !important; line-height: 1.5 !important; list-style: none !important; }
body.woocommerce-checkout #payment ul.payment_methods > li > input[type="radio"] { display: none !important; }
body.woocommerce-checkout #payment ul.payment_methods > li > label { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px; width: 100% !important; margin: 0 !important; padding: 0 !important; font-size: 16px !important; font-weight: 700 !important; line-height: 1.3 !important; color: #0B1949 !important; }
body.woocommerce-checkout #payment ul.payment_methods > li > label img { flex: none; width: auto !important; height: 22px !important; max-height: 22px !important; margin: 0 !important; padding: 0 !important; background: none !important; box-shadow: none !important; float: none !important; }
body.woocommerce-checkout #payment div.payment_box { margin: 14px 0 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; font-size: 14px !important; line-height: 1.5 !important; color: rgba(11, 25, 73, 0.75) !important; }
body.woocommerce-checkout #payment div.payment_box::before { display: none !important; content: none !important; }
body.woocommerce-checkout #payment .testmode-info { margin: 0 0 14px !important; padding: 10px 12px !important; border-radius: 10px; background: #fff6ef; font-size: 13px !important; line-height: 1.55 !important; }
body.woocommerce-checkout #payment .testmode-info .wc-stripe-copy-test-number { display: inline !important; height: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; font: inherit !important; font-weight: 700 !important; line-height: inherit !important; color: #0B1949 !important; }
body.woocommerce-checkout #payment .testmode-info .wc-stripe-copy-test-number i { display: none !important; }
body.woocommerce-checkout #payment fieldset.wc-payment-form { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew { display: flex !important; align-items: center !important; gap: 10px; margin: 14px 0 0 !important; padding: 0 !important; font-size: 14px !important; font-weight: 500 !important; line-height: 1.4 !important; color: rgba(11, 25, 73, 0.8) !important; }
body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew input { flex: none; width: 18px !important; height: 18px !important; margin: 0 !important; }
body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label { margin: 0 !important; font-weight: 500 !important; line-height: 1.4 !important; }

/* Terms: checkbox beside the text, link never splits, the * follows the text */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin: 18px 0 16px !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p.form-row { margin: 0 !important; padding: 0 !important; line-height: 1.5 !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox { position: relative !important; display: block !important; margin: 0 !important; padding: 0 0 0 30px !important; font-size: 14.5px !important; font-weight: 500 !important; line-height: 1.5 !important; color: #0B1949 !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox input#terms { position: absolute !important; left: 0 !important; top: 2px !important; width: 18px !important; height: 18px !important; margin: 0 !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text { display: inline !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-link { white-space: nowrap !important; font-weight: 600 !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper abbr.required { display: inline !important; margin: 0 !important; text-decoration: none !important; border: 0 !important; color: #c23434 !important; }
body.woocommerce-checkout #place_order { width: 100% !important; justify-content: center !important; }
body.woocommerce-checkout form.checkout_coupon .coupon-error-notice { left: auto !important; }
body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method.payment_method_stripe { background: #fff !important; }
body.woocommerce-checkout .screen-reader-text { position: absolute !important; width: 1px !important; height: 1px !important; margin: -1px !important; padding: 0 !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
@media (max-width: 767px) {
	body.woocommerce-checkout form.checkout_coupon .form-row-first, body.woocommerce-checkout form.checkout_coupon .form-row-last { float: none !important; width: 100% !important; margin: 0 !important; }
	body.woocommerce-checkout form.checkout_coupon .form-row-last { margin-top: 10px !important; }
	body.woocommerce-checkout form.checkout_coupon .form-row-last .button { width: 100% !important; justify-content: center !important; }
	body.woocommerce-checkout ol.wgh-steps { max-width: 100% !important; overflow-x: auto !important; scrollbar-width: none; }
	body.woocommerce-checkout ol.wgh-steps::-webkit-scrollbar { display: none; }
}
@media (max-width: 767px) {
	body.woocommerce-checkout form.checkout_coupon { flex-wrap: wrap !important; }
	body.woocommerce-checkout form.checkout_coupon .form-row-first, body.woocommerce-checkout form.checkout_coupon .form-row-last { flex: 0 0 100% !important; }
}
@media (max-width: 767px) {
	body.woocommerce-checkout form.checkout_coupon .input-text.has-error { padding-right: 200px !important; }
	body.woocommerce-checkout form.checkout_coupon .coupon-error-notice { max-width: 72% !important; right: 14px !important; font-size: 12.5px !important; }
}
/* Payment card fixes: heading left-aligned (hidden radio pseudo took space), no grey fieldset round "save payment", even padding */
body.woocommerce-checkout #payment ul.payment_methods > li.wc_payment_method.payment_method_stripe { padding: 18px 18px 20px !important; }
body.woocommerce-checkout #payment ul.payment_methods > li > label::before, body.woocommerce-checkout #payment ul.payment_methods > li > label::after { display: none !important; content: none !important; }
body.woocommerce-checkout #payment ul.payment_methods > li > label { justify-content: flex-start !important; text-align: left !important; }
body.woocommerce-checkout #payment ul.payment_methods > li > label img { margin-left: auto !important; }
body.woocommerce-checkout #payment .payment_box fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew { margin: 16px 0 0 !important; }
body.woocommerce-checkout #payment .woocommerce-SavedPaymentMethods-saveNew label { display: inline !important; font-size: 14px !important; color: rgba(11, 25, 73, 0.8) !important; }
/* Terms: room above and below, star right after the link */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin: 22px 0 22px !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-link { padding: 0 !important; margin: 0 !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper abbr.required { margin-left: -2px !important; }
body.woocommerce-checkout #payment .form-row.place-order .woocommerce-terms-and-conditions-wrapper p.form-row.validate-required { margin: 22px 0 22px !important; }
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox { margin: 22px 0 22px !important; }

/* Basket: the floating phone basket matches the desktop header basket (white, grey border, orange icon, navy text) (2026-10-15) */
html body a#cartIcon.wgh-hdr-basket b.title { background: #0B1949 !important; }
@media (max-width: 991px) {
	html body a#cartIcon.wgh-hdr-basket { background: #fff !important; border: 1px solid #DEE2EA !important; color: #0B1949 !important; box-shadow: 0 10px 24px -8px rgba(11, 25, 73, 0.35) !important; }
	html body a#cartIcon.wgh-hdr-basket .wgh-hdr-ic, html body a#cartIcon.wgh-hdr-basket .wgh-hdr-ic svg { background: transparent !important; color: #FF6600 !important; }
	html body a#cartIcon.wgh-hdr-basket .wgh-hdr-txt, html body a#cartIcon.wgh-hdr-basket .wgh-basket-total, html body a#cartIcon.wgh-hdr-basket .wgh-basket-total * { color: #0B1949 !important; }
	html body a#cartIcon.wgh-hdr-basket .wgh-hdr-txt small { color: rgba(11, 25, 73, 0.72) !important; }
}

/* Basket: the floating phone basket matches the desktop header basket (white, grey border, orange icon, navy text) (2026-10-15) */
html body .header a#cartIcon.wgh-hdr-basket b.title { background: #0B1949 !important; }
@media (max-width: 991px) {
	html body .header a#cartIcon.wgh-hdr-basket { background: #fff !important; border: 1px solid #DEE2EA !important; color: #0B1949 !important; box-shadow: 0 10px 24px -8px rgba(11, 25, 73, 0.35) !important; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-ic, html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-ic svg { background: transparent !important; color: #FF6600 !important; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt, html body .header a#cartIcon.wgh-hdr-basket .wgh-basket-total, html body .header a#cartIcon.wgh-hdr-basket .wgh-basket-total * { color: #0B1949 !important; }
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt small { color: rgba(11, 25, 73, 0.72) !important; }
}
@media (max-width: 991px) {
	html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total, html body .header a#cartIcon.wgh-hdr-basket .wgh-hdr-txt .wgh-basket-total * { color: #0B1949 !important; }
}

/* ---------- Order confirmation page (2026-10-15) ---------- */
.wgh-ty { display: flex; flex-direction: column; gap: 22px; padding: 8px 0 20px; color: #0B1949; font-family: "WGH Inter", InterLocal, Inter, sans-serif; }
.wgh-ty * { box-sizing: border-box; }
.wgh-ty .wgh-ty-ic { display: block; width: 1em; height: 1em; fill: currentColor; }
.wgh-ty-card { padding: 26px; border: 1px solid #E5E7EB; border-radius: 16px; background: #fff; }
.wgh-ty h2 { margin: 0; font-size: 26px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; color: #0B1949; }
.wgh-ty h3 { margin: 0 0 16px; font-size: 18px; font-weight: 700; letter-spacing: -0.01em; color: #0B1949; }
.wgh-ty p { margin: 0; }
/* confirmation card */
.wgh-ty-hero { display: grid; grid-template-columns: auto 1fr; gap: 18px 18px; align-items: center; border-top: 4px solid #2fb36a; }
.wgh-ty-tick { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: #2fb36a; color: #fff; }
.wgh-ty-tick .wgh-ty-ic { width: 24px; height: 24px; }
.wgh-ty-hero-tx p { margin-top: 6px; font-size: 15.5px; line-height: 1.55; color: rgba(11, 25, 73, 0.72); }
.wgh-ty-hero-tx b { color: #0B1949; font-weight: 600; }
.wgh-ty-facts { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 6px 0 0; border: 1px solid #E5E7EB; border-radius: 12px; background: #F9FAFB; }
.wgh-ty-facts > div { padding: 14px 16px; }
.wgh-ty-facts > div + div { border-left: 1px solid #E5E7EB; }
.wgh-ty-facts dt { margin: 0 0 3px; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: rgba(11, 25, 73, 0.5); }
.wgh-ty-facts dd { margin: 0; font-size: 16px; font-weight: 700; color: #0B1949; }
.wgh-ty-facts dd .woocommerce-Price-amount { font-weight: 700; color: #0B1949; }
/* items + side */
.wgh-ty-grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 22px; align-items: start; }
.wgh-ty-side { display: flex; flex-direction: column; gap: 22px; }
.wgh-ty-list { list-style: none; margin: 0; padding: 0; }
.wgh-ty-list li { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 14px; align-items: center; margin: 0; padding: 14px 0; border-top: 1px solid #EEF1F6; list-style: none; }
.wgh-ty-list li:first-child { border-top: 0; padding-top: 0; }
.wgh-ty-list li::before { content: none !important; }
.wgh-ty-thumb { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; overflow: hidden; border: 1px solid #EEF1F6; border-radius: 10px; background: #fff; }
.wgh-ty-thumb img { width: 100% !important; height: 100% !important; object-fit: contain; }
.wgh-ty-name { min-width: 0; font-size: 15px; font-weight: 600; line-height: 1.35; }
.wgh-ty-name a { color: #0B1949 !important; text-decoration: none; }
.wgh-ty-name a:hover { color: #FF6600 !important; }
.wgh-ty-name small { display: block; margin-top: 3px; font-size: 13px; font-weight: 400; color: rgba(11, 25, 73, 0.6); }
.wgh-ty-price { font-size: 15px; font-weight: 700; white-space: nowrap; }
.wgh-ty-totals { margin: 14px 0 0; padding: 14px 0 0; border-top: 1px solid #E5E7EB; }
.wgh-ty-totals > div { display: flex; justify-content: space-between; gap: 16px; padding: 6px 0; font-size: 14.5px; }
.wgh-ty-totals dt { margin: 0; font-weight: 500; color: rgba(11, 25, 73, 0.7); }
.wgh-ty-totals dd { margin: 0; text-align: right; color: #0B1949; }
.wgh-ty-totals dd small, .wgh-ty-totals dd .includes_tax, .wgh-ty-totals dd .shipped_via { font-size: 12.5px; color: rgba(11, 25, 73, 0.6); }
.wgh-ty-totals > div.is-total { margin-top: 6px; padding-top: 12px; border-top: 1px solid #E5E7EB; font-size: 17px; }
.wgh-ty-totals > div.is-total dt, .wgh-ty-totals > div.is-total dd { font-weight: 700; color: #0B1949; }
/* what happens next */
.wgh-ty-next { list-style: none; margin: 0; padding: 0; counter-reset: none; }
.wgh-ty-next li { display: flex; gap: 14px; margin: 0 0 16px; list-style: none; }
.wgh-ty-next li:last-child { margin-bottom: 0; }
.wgh-ty-next li::before { content: none !important; }
.wgh-ty-next li > span { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 36px; height: 36px; border-radius: 50%; background: #fff1e6; color: #FF6600; }
.wgh-ty-next li > span .wgh-ty-ic { width: 15px; height: 15px; }
.wgh-ty-next b { display: block; font-size: 15px; font-weight: 700; line-height: 1.35; }
.wgh-ty-next small { display: block; margin-top: 2px; font-size: 13.5px; line-height: 1.5; color: rgba(11, 25, 73, 0.66); }
.wgh-ty-next a { color: #0B1949; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
/* addresses */
.wgh-ty-addr { display: grid; gap: 20px; }
.wgh-ty-addr h3 { margin-bottom: 8px; font-size: 15px; }
.wgh-ty-addr address { font-style: normal; font-size: 14.5px; line-height: 1.6; color: rgba(11, 25, 73, 0.75); }
/* actions */
.wgh-ty-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.wgh-ty-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 50px; padding: 0 24px; border: 1px solid #FF6600; border-radius: 10px; background: #FF6600; color: #fff !important; font-size: 16px; font-weight: 600; text-decoration: none !important; transition: background-color .15s ease; }
.wgh-ty-btn .wgh-ty-ic { width: 14px; height: 14px; }
.wgh-ty-btn:hover { background: #DB5800; border-color: #DB5800; }
.wgh-ty-btn.is-ghost { background: #fff; border-color: #DEE2EA; color: #0B1949 !important; }
.wgh-ty-btn.is-ghost:hover { border-color: #FF6600; background: #fff; }
.wgh-ty-failed { border-top: 4px solid #d64545; }
.wgh-ty-failed p { margin: 8px 0 18px; color: rgba(11, 25, 73, 0.72); }
/* hide WooCommerce's own order table/addresses if any plugin still prints them */
.wgh-ty ~ .woocommerce-order-details, .wgh-ty ~ .woocommerce-customer-details, .wgh-ty .woocommerce-order-details, .wgh-ty .woocommerce-customer-details { display: none !important; }
@media (max-width: 991px) {
	.wgh-ty-grid { grid-template-columns: 1fr; }
	.wgh-ty-facts { grid-template-columns: 1fr 1fr; }
	.wgh-ty-facts > div:nth-child(3) { border-left: 0; }
	.wgh-ty-facts > div:nth-child(n+3) { border-top: 1px solid #E5E7EB; }
}
@media (max-width: 600px) {
	.wgh-ty-card { padding: 20px; }
	.wgh-ty-hero { grid-template-columns: 1fr; justify-items: start; }
	.wgh-ty-tick { width: 48px; height: 48px; }
	.wgh-ty h2 { font-size: 22px; }
	.wgh-ty-list li { grid-template-columns: 56px minmax(0, 1fr); }
	.wgh-ty-thumb { width: 56px; height: 56px; }
	.wgh-ty-price { grid-column: 2; }
	.wgh-ty-actions .wgh-ty-btn { width: 100%; }
}

/* Confirmation page: totals clear any floats from the theme */
.wgh-ty .wgh-ty-list, .wgh-ty .wgh-ty-totals { display: flow-root !important; clear: both !important; width: 100% !important; }
.wgh-ty .wgh-ty-list li { float: none !important; width: auto !important; }
.wgh-ty .wgh-ty-totals > div { display: flex !important; width: 100% !important; float: none !important; clear: both; }
.wgh-ty .wgh-ty-totals dt, .wgh-ty .wgh-ty-totals dd { float: none !important; width: auto !important; }

/* Confirmation page layout C: left = confirmation, next steps, addresses, buttons; right = order summary card */
.wgh-ty .wgh-ty-gridC { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.wgh-ty .wgh-ty-main { display: flex; flex-direction: column; gap: 22px; min-width: 0; }
.wgh-ty .wgh-ty-sum { position: sticky; top: 20px; display: flex; flex-direction: column; min-width: 0; }
.wgh-ty .wgh-ty-sum .wgh-ty-items { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.wgh-ty .wgh-ty-facts-v { grid-template-columns: 1fr !important; margin: 0; border: 1px solid #E5E7EB; border-top: 0; border-radius: 0 0 16px 16px; }
.wgh-ty .wgh-ty-facts-v > div + div { border-left: 0 !important; border-top: 1px solid #E5E7EB !important; }
.wgh-ty .wgh-ty-addr.is-two { grid-template-columns: 1fr 1fr; }
.wgh-ty .wgh-ty-hero { grid-template-columns: auto 1fr; }
@media (max-width: 991px) {
	.wgh-ty .wgh-ty-gridC { grid-template-columns: 1fr; }
	.wgh-ty .wgh-ty-sum { position: static; order: -1; }
	.wgh-ty .wgh-ty-main { display: contents; }
	.wgh-ty .wgh-ty-main > .wgh-ty-hero { order: -2; }
	.wgh-ty .wgh-ty-main > .wgh-ty-actions { order: 5; }
	.wgh-ty .wgh-ty-facts-v > div:nth-child(n+2) { border-top: 1px solid #E5E7EB !important; }
}
@media (max-width: 600px) { .wgh-ty .wgh-ty-addr.is-two { grid-template-columns: 1fr; } }

/* Confirmation page: buttons under the order summary (right column); last on phones */
.wgh-ty .wgh-ty-sum .wgh-ty-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 16px; }
.wgh-ty .wgh-ty-sum .wgh-ty-actions .wgh-ty-btn { width: 100%; padding: 0 14px; font-size: 15px; white-space: nowrap; }
.wgh-ty .wgh-ty-sum .wgh-ty-actions .wgh-ty-btn:only-child { grid-column: 1 / -1; }
@media (max-width: 991px) {
	.wgh-ty .wgh-ty-gridC { display: flex; flex-direction: column; }
	.wgh-ty .wgh-ty-sum { display: contents; }
	.wgh-ty .wgh-ty-main > .wgh-ty-hero { order: -3; }
	.wgh-ty .wgh-ty-sum .wgh-ty-items { order: -2; }
	.wgh-ty .wgh-ty-sum .wgh-ty-facts-v { order: -1; margin-top: -24px; }
	.wgh-ty .wgh-ty-sum .wgh-ty-actions { order: 5; margin-top: 0; }
}
@media (max-width: 600px) { .wgh-ty .wgh-ty-sum .wgh-ty-actions { grid-template-columns: 1fr; } }
@media (max-width: 991px) {
	.wgh-ty .wgh-ty-gridC { align-items: stretch !important; }
	.wgh-ty .wgh-ty-gridC > *, .wgh-ty .wgh-ty-sum > *, .wgh-ty .wgh-ty-main > * { width: 100% !important; }
}

/* ---------- Guest checkout with an optional account (2026-10-15) ---------- */
.wgh-ga-strip { display: flex; align-items: center; gap: 14px; margin: 0 0 22px; padding: 14px 16px; border: 1px solid #E5E7EB; border-radius: 14px; background: #fff; font-family: "WGH Inter", InterLocal, Inter, sans-serif; }
.wgh-ga-strip-ic { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 38px; height: 38px; border-radius: 50%; background: #fff1e6; color: #FF6600; }
.wgh-ga-strip-ic svg { width: 15px; height: 15px; }
.wgh-ga-strip p { flex: 1; margin: 0 !important; font-size: 15px; line-height: 1.45; color: rgba(11, 25, 73, 0.72); }
.wgh-ga-strip p b { color: #0B1949; font-weight: 700; }
.wgh-ga-strip-btn { display: inline-flex; align-items: center; justify-content: center; flex: none; height: 42px; padding: 0 20px; border: 1px solid #DEE2EA; border-radius: 9px; background: #fff; color: #0B1949 !important; font-size: 15px; font-weight: 600; text-decoration: none !important; }
.wgh-ga-strip-btn:hover { border-color: #FF6600; color: #FF6600 !important; }
@media (max-width: 600px) {
	.wgh-ga-strip { flex-wrap: wrap; }
	.wgh-ga-strip p { flex-basis: calc(100% - 52px); }
	.wgh-ga-strip-btn { width: 100%; }
}

/* checkout opt-in under the email */
.woocommerce-checkout .wgh-ga-optin { margin: 4px 0 14px !important; padding: 12px 14px !important; border: 1px solid #E5E7EB; border-radius: 12px; background: #F9FAFB; }
.woocommerce-checkout .wgh-ga-optin label.checkbox, .woocommerce-checkout .wgh-ga-optin label { position: relative; display: block !important; margin: 0 !important; padding-left: 30px !important; font-size: 14.5px !important; font-weight: 600 !important; line-height: 1.45 !important; color: #0B1949 !important; cursor: pointer; }
.woocommerce-checkout .wgh-ga-optin input[type="checkbox"] { position: absolute !important; left: 0; top: 1px; width: 18px !important; height: 18px !important; margin: 0 !important; }
.woocommerce-checkout .wgh-ga-optin .optional { display: none !important; }
.woocommerce-checkout .wgh-ga-optin .description { display: block !important; position: static !important; margin: 4px 0 0 30px !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; font-size: 13px !important; line-height: 1.45 !important; color: rgba(11, 25, 73, 0.62) !important; }
.woocommerce-checkout .wgh-ga-optin .description::before { display: none !important; }

/* confirmation page card */
.wgh-ty .wgh-ga-card { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; margin-top: 16px; border-top: 3px solid #FF6600; }
.wgh-ty .wgh-ga-card b { font-size: 17px; font-weight: 700; color: #0B1949; }
.wgh-ty .wgh-ga-card p { margin: 0 0 8px; font-size: 14.5px; line-height: 1.55; color: rgba(11, 25, 73, 0.72); }
.wgh-ty .wgh-ga-card p span { font-weight: 600; color: #0B1949; word-break: break-all; }
.wgh-ty .wgh-ga-card .wgh-ga-card-btn { width: 100%; }
.wgh-ty .wgh-ga-card small { font-size: 12.5px; color: rgba(11, 25, 73, 0.55); }
@media (max-width: 991px) { .wgh-ty .wgh-ga-card { order: 4; margin-top: 0; } }
@media (max-width: 767px) {
	body ol.wgh-steps { max-width: 100% !important; overflow-x: auto !important; scrollbar-width: none; }
	body ol.wgh-steps::-webkit-scrollbar { display: none; }
}
@media (max-width: 767px) {
	body ol.wgh-steps { display: flex !important; width: 100% !important; overflow: visible !important; }
	body ol.wgh-steps > li { flex: 0 0 auto; white-space: nowrap; }
	body ol.wgh-steps > li + li { flex: 1 1 auto !important; min-width: 0; }
	body ol.wgh-steps > li + li::before { flex: 1 1 auto !important; width: auto !important; min-width: 10px; margin: 0 8px !important; }
}
@media (max-width: 767px) {
	body ol.wgh-steps > li { gap: 6px !important; font-size: 12.5px !important; }
	body ol.wgh-steps > li > span { width: 24px !important; height: 24px !important; font-size: 12px !important; }
	body ol.wgh-steps > li + li::before { min-width: 8px; margin: 0 6px !important; }
}
@media (max-width: 359px) {
	body ol.wgh-steps > li { gap: 4px !important; font-size: 11.5px !important; }
	body ol.wgh-steps > li > span { width: 22px !important; height: 22px !important; }
	body ol.wgh-steps > li + li::before { min-width: 6px; margin: 0 4px !important; }
}
/* Basket: long part names wrap instead of widening the card */
body .wgh-basket-name, body .wgh-basket-name a, body .wgh-ty-name a { overflow-wrap: anywhere; word-break: normal; }
body .wgh-basket-info { min-width: 0 !important; }

/* Shipping options: name on the left, price in its own block on the right (2026-10-15) */
body #shipping_method li label, body .woocommerce-shipping-methods li label { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 14px; width: 100%; }
body #shipping_method .wgh-sm-name, body .woocommerce-shipping-methods .wgh-sm-name { flex: 1 1 auto; min-width: 0; font-weight: 600; line-height: 1.35; color: #0B1949; }
body #shipping_method .wgh-sm-price, body .woocommerce-shipping-methods .wgh-sm-price { display: flex; flex-direction: column; align-items: flex-end; flex: none; text-align: right; font-weight: 700; line-height: 1.3; color: #0B1949; white-space: nowrap; }
body #shipping_method .wgh-sm-price small, body .woocommerce-shipping-methods .wgh-sm-price small { display: block; margin-top: 2px; font-size: 12.5px; font-weight: 400; color: rgba(11, 25, 73, 0.6); }

/* ---------- WooCommerce notices in the house style (2026-10-15): white card, soft border, coloured icon + left edge ---------- */
body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice:not(.wgh-ty *)) { position: relative !important; display: flex !important; flex-wrap: wrap; align-items: center !important; gap: 10px 16px; margin: 0 0 22px !important; padding: 16px 18px 16px 58px !important; border: 1px solid #E5E7EB !important; border-left: 4px solid #2fb36a !important; border-radius: 14px !important; background: #fff no-repeat 20px center / 22px 22px !important; box-shadow: none !important; font-family: "WGH Inter", InterLocal, Inter, sans-serif !important; font-size: 15px !important; font-weight: 500 !important; line-height: 1.5 !important; color: #0B1949 !important; list-style: none !important; outline: 0 !important; }
body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice:not(.wgh-ty *))::before, body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice:not(.wgh-ty *))::after { display: none !important; content: none !important; }
body .woocommerce-message { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20512%20512'%3E%3Cpath%20fill%3D'%232fb36a'%20d%3D'M256%20512A256%20256%200%201%200%20256%200a256%20256%200%201%200%200%20512zM369%20209L241%20337c-9.4%209.4-24.6%209.4-33.9%200l-64-64c-9.4-9.4-9.4-24.6%200-33.9s24.6-9.4%2033.9%200l47%2047L335%20175c9.4-9.4%2024.6-9.4%2033.9%200s9.4%2024.6%200%2033.9z'%2F%3E%3C%2Fsvg%3E") !important; border-left-color: #2fb36a !important; }
body .woocommerce-info { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20512%20512'%3E%3Cpath%20fill%3D'%231E40AF'%20d%3D'M256%20512A256%20256%200%201%200%20256%200a256%20256%200%201%200%200%20512zM216%20336l24%200%200-64-24%200c-13.3%200-24-10.7-24-24s10.7-24%2024-24l48%200c13.3%200%2024%2010.7%2024%2024l0%2088%208%200c13.3%200%2024%2010.7%2024%2024s-10.7%2024-24%2024l-80%200c-13.3%200-24-10.7-24-24s10.7-24%2024-24zm40-208a32%2032%200%201%201%200%2064%2032%2032%200%201%201%200-64z'%2F%3E%3C%2Fsvg%3E") !important; border-left-color: #1E40AF !important; }
body .woocommerce-error { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20512%20512'%3E%3Cpath%20fill%3D'%23d64545'%20d%3D'M256%20512A256%20256%200%201%200%20256%200a256%20256%200%201%200%200%20512zm0-384c13.3%200%2024%2010.7%2024%2024l0%20112c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24l0-112c0-13.3%2010.7-24%2024-24zM224%20352a32%2032%200%201%201%2064%200%2032%2032%200%201%201%20-64%200z'%2F%3E%3C%2Fsvg%3E") !important; border-left-color: #d64545 !important; }
body .woocommerce-error li { margin: 0 !important; padding: 0 !important; list-style: none !important; color: #0B1949 !important; }
body .woocommerce-error li + li { margin-top: 4px !important; }
body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a:not(.button) { color: #0B1949 !important; font-weight: 700 !important; text-decoration: underline !important; text-underline-offset: 2px; }
body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) .button { order: 2; float: none !important; margin: 0 0 0 auto !important; display: inline-flex !important; align-items: center; height: 38px !important; padding: 0 16px !important; border: 1px solid #DEE2EA !important; border-radius: 9px !important; background: #fff !important; color: #0B1949 !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1 !important; text-decoration: none !important; box-shadow: none !important; }
body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) .button:hover { border-color: #FF6600 !important; color: #FF6600 !important; }
@media (max-width: 600px) { body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice:not(.wgh-ty *)) { padding: 14px 14px 14px 50px !important; background-position: 16px 16px !important; font-size: 14.5px !important; } body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) .button { margin: 4px 0 0 !important; } }

/* notices: per-type icon + edge colour, stronger than the shared notice rule */
html body .woocommerce-message.woocommerce-message { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20512%20512'%3E%3Cpath%20fill%3D'%232fb36a'%20d%3D'M256%20512A256%20256%200%201%200%20256%200a256%20256%200%201%200%200%20512zM369%20209L241%20337c-9.4%209.4-24.6%209.4-33.9%200l-64-64c-9.4-9.4-9.4-24.6%200-33.9s24.6-9.4%2033.9%200l47%2047L335%20175c9.4-9.4%2024.6-9.4%2033.9%200s9.4%2024.6%200%2033.9z'%2F%3E%3C%2Fsvg%3E") !important; border-left-color: #2fb36a !important; }
html body .woocommerce-info.woocommerce-info { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20512%20512'%3E%3Cpath%20fill%3D'%231E40AF'%20d%3D'M256%20512A256%20256%200%201%200%20256%200a256%20256%200%201%200%200%20512zM216%20336l24%200%200-64-24%200c-13.3%200-24-10.7-24-24s10.7-24%2024-24l48%200c13.3%200%2024%2010.7%2024%2024l0%2088%208%200c13.3%200%2024%2010.7%2024%2024s-10.7%2024-24%2024l-80%200c-13.3%200-24-10.7-24-24s10.7-24%2024-24zm40-208a32%2032%200%201%201%200%2064%2032%2032%200%201%201%200-64z'%2F%3E%3C%2Fsvg%3E") !important; border-left-color: #1E40AF !important; }
html body .woocommerce-error.woocommerce-error { background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%20512%20512'%3E%3Cpath%20fill%3D'%23d64545'%20d%3D'M256%20512A256%20256%200%201%200%20256%200a256%20256%200%201%200%200%20512zm0-384c13.3%200%2024%2010.7%2024%2024l0%20112c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24l0-112c0-13.3%2010.7-24%2024-24zM224%20352a32%2032%200%201%201%2064%200%2032%2032%200%201%201%20-64%200z'%2F%3E%3C%2Fsvg%3E") !important; border-left-color: #d64545 !important; }
html body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.button { background: #fff !important; background-color: #fff !important; border: 1px solid #DEE2EA !important; color: #0B1949 !important; }
html body :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) a.button.button:hover { border-color: #FF6600 !important; color: #FF6600 !important; }

/* Account menu + "blue" icon tiles in the shop colours (2026-10-15): no old light blue left */
.wgh-account-page .wgh-account-nav svg, .wgh-account-nav svg { color: rgba(11, 25, 73, 0.55) !important; transition: color .15s ease; }
.wgh-account-nav a:hover svg, .wgh-account-nav button:hover svg { color: #FF6600 !important; }
.wgh-account-nav li.is-active a svg, .wgh-account-nav a[aria-current="page"] svg { color: #FF6600 !important; }
.wgh-help-ic.is-b, .wgh-spec-ic.is-b { background: #eef0f6 !important; color: #0B1949 !important; }

/* Shop: "Find your part by category" on the same background as the hero (2026-10-15): white, the two corner glows,
   and the hero grid fading out from the top. The grid is a ::before so it can carry the hero mask. */
html body .category-listing { position: relative !important; isolation: isolate; background: radial-gradient(660px 480px at 100% 0%, rgba(255, 102, 0, 0.42), transparent 72%), radial-gradient(580px 440px at 0% 100%, rgba(255, 176, 32, 0.36), transparent 72%), #fff !important; }
html body .category-listing::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background-image: linear-gradient(90deg, rgba(11, 25, 73, 0.055) 1px, transparent 1px), linear-gradient(rgba(11, 25, 73, 0.055) 1px, transparent 1px); background-size: 68px 68px; -webkit-mask-image: radial-gradient(85% 70% at 50% 0%, #000 25%, transparent 82%); mask-image: radial-gradient(85% 70% at 50% 0%, #000 25%, transparent 82%); }
@media (max-width: 767px) { html body .category-listing { background: radial-gradient(260px 220px at 100% 0%, rgba(255, 102, 0, 0.36), transparent 72%), radial-gradient(260px 240px at 0% 100%, rgba(255, 176, 32, 0.28), transparent 72%), #fff !important; } }

/* Shop category cards (2026-10-15): orange border on hover, not blue; the arrow fills orange with a white arrow
   (the pale circle rule above was !important, so on hover it gave a white arrow on pale orange). */
html body .category-listing .product-cat-inner > a.wgh-cat-card:hover, html body .product-cat-inner > a.wgh-cat-card:hover, html body a.wgh-cat-card:hover { border-color: #FF6600 !important; }
html body .wgh-cat-card:hover .wgh-cat-arrow { background: #FF6600 !important; color: #fff !important; }

/* Shop: every card/tile hover border in the shop orange, not the old blue (2026-10-15). */
html body .brands-listing .brand-block a:hover,
html body nav.nav-container .wgh-mega-brands a:hover,
html body .wgh-advice-link:hover,
html body .wgh-help-card:hover,
html body .wgh-contact-way:hover,
html body .wgh-prod-card:hover,
html body .wgh-guide-card:hover,
html body .wgh-variants .dropdown-item-row a.set_session_model:hover,
html body a.wgh-pdp-fit:hover,
html body .wgh-acc-tile:hover,
html body .wgh-order-row:hover,
html body .wgh-summary-table ul#shipping_method li label:hover,
html body .wgh-checkout-page #ship-to-different-address label:hover { border-color: #FF6600 !important; }
html body .wgh-brand-tile:hover, html body .category-listing .product-cat-inner > a:hover { border-color: #FF6600 !important; }

/* Shop: field focus outlines in orange too, not the old blue (2026-10-15). */
html body .find-part-form-container form .fields input[name="model"]:focus,
html body .find-part-form-container form .fields select:not(.selectized):focus,
html body .header .search-form-container .aws-container input[type=search].aws-search-field:focus,
html body :is(.wgh-contact-form, .wgh-prose .form-block) :is(input, select, textarea):focus,
html body :is(.wgh-contact-form, .wgh-prose .form-block) .selectize-input.dropdown-active,
html body .wgh-basket-qty:focus-within,
html body .wgh-basket-coupon #coupon_code:focus,
html body .wgh-az-search input:focus,
html body .wgh-search-form input[type="search"]:focus,
html body .wgh-account-page .woocommerce-address-fields input.input-text:focus,
html body .wgh-checkout-page form.wgh-checkout :is(input.input-text, textarea):focus,
html body .wgh-checkout-page form.checkout_coupon input.input-text:focus { border-color: #FF6600 !important; box-shadow: 0 0 0 4px rgba(255, 102, 0, 0.14) !important; }

/* Shop hero search: the rating plate camera, identical to the header search camera (2026-10-15): 36px, no fill, navy
   icon 19px, grey hover. Overrides the hero form's orange button style; sits in the flow, not absolute. */
html body .hero-home-page form.wgh-hero-search button.wgh-plate-cam.is-inline { position: static !important; flex: none !important; display: inline-flex !important; align-items: center; justify-content: center; width: 36px !important; height: 36px !important; min-width: 0 !important; margin: 0 6px 0 2px !important; padding: 0 !important; border: 0 !important; border-radius: 9px !important; background: transparent !important; box-shadow: none !important; color: #000E42 !important; transform: none !important; }
html body .hero-home-page form.wgh-hero-search button.wgh-plate-cam.is-inline svg { width: 19px !important; height: 19px !important; margin: 0 !important; color: #000E42 !important; }
html body .hero-home-page form.wgh-hero-search button.wgh-plate-cam.is-inline:hover { background: #eef0f6 !important; }
html body .header .wgh-plate-cam { border-radius: 9px !important; }

/* Shop page heroes (basket, checkout, account, etc.) on the shop hero background (2026-10-16): white with the orange
   and amber corner glows instead of the old pale-blue gradient; the grid stays (::before). */
html body .wgh-page-hero { background: radial-gradient(520px 340px at 100% 0%, rgba(255, 102, 0, 0.30), transparent 72%), radial-gradient(460px 300px at 0% 100%, rgba(255, 176, 32, 0.24), transparent 72%), #fff !important; }
@media (max-width: 767px) { html body .wgh-page-hero { background: radial-gradient(240px 200px at 100% 0%, rgba(255, 102, 0, 0.26), transparent 72%), radial-gradient(240px 200px at 0% 100%, rgba(255, 176, 32, 0.2), transparent 72%), #fff !important; } }

/* Sign-in card buttons link to the forum sign-in pages; the palette paints forum links purple. Keep them shop. */
html.wgh-pal body .wgh-signin .wgh-signin-actions a.wgh-btn.wgh-signin-go[href], html.wgh-pal body .wgh-signin .wgh-signin-actions a.wgh-btn.wgh-signin-go[href]:is(:hover, :focus-visible) { background: #FF6600 !important; border-color: #FF6600 !important; color: #fff !important; }
html.wgh-pal body .wgh-signin .wgh-signin-actions a.wgh-btn.wgh-signin-go[href]:hover { background: #E65C00 !important; border-color: #E65C00 !important; }
html.wgh-pal body .wgh-signin .wgh-signin-actions a.wgh-btn.wgh-signin-new[href], html.wgh-pal body .wgh-signin .wgh-signin-actions a.wgh-btn.wgh-signin-new[href]:is(:hover, :focus-visible) { background: #fff !important; color: #0B1949 !important; }
html.wgh-pal body .wgh-signin .wgh-signin-actions a.wgh-btn.wgh-signin-new[href]:hover { border-color: #FF6600 !important; }

/* Clerk sign-in / sign-up pop-up (2026-10-16): the shop theme input and button styles leaked in (borderless fields,
   orange close button). Pin Clerk's own look: bordered fields, grey round close button that goes orange on hover. */
html body .cl-formFieldInput, html body .cl-formFieldInput:-webkit-autofill { height: 44px !important; padding: 0 14px !important; border: 1px solid #DEE2EA !important; border-radius: 10px !important; background: #fff !important; box-shadow: none !important; font-size: 15px !important; color: #0B1949 !important; -webkit-box-shadow: 0 0 0 40px #fff inset !important; }
html body .cl-formFieldInput:focus { outline: none !important; border-color: #FF6600 !important; -webkit-box-shadow: 0 0 0 40px #fff inset, 0 0 0 3px rgba(255, 102, 0, 0.14) !important; box-shadow: 0 0 0 3px rgba(255, 102, 0, 0.14) !important; }
html body .cl-formFieldInputShowPasswordButton { background: transparent !important; border: 0 !important; box-shadow: none !important; }
html body button.cl-modalCloseButton { width: 40px !important; height: 40px !important; padding: 0 !important; border: 1px solid #DEE2EA !important; border-radius: 50% !important; background: #f6f8fc !important; color: #0B1949 !important; box-shadow: none !important; }
html body button.cl-modalCloseButton:hover { background: #FF6600 !important; border-color: #FF6600 !important; color: #fff !important; }
html body .cl-footerActionLink { color: #FF6600 !important; }

/* Part finder card on phones (2026-10-16): tidier. The search icon box goes so the title and the subtext each sit on
   one line; smaller step numbers give the fields more room; "Scan your rating plate" is a single-line button. */
@media (max-width: 767px) {
	html body .wgh-finder-head { gap: 0 !important; margin-bottom: 18px !important; }
	html body .wgh-finder-head .wgh-finder-icon { display: none !important; }
	html body .wgh-finder-head .title { font-size: 21px !important; line-height: 1.2 !important; }
	html body .wgh-finder-head .wgh-finder-sub { margin-top: 4px !important; font-size: 14px !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	html body .find-part-form-container .find-part-form > .fields { padding-left: 36px !important; }
	html body .find-part-form-container .find-part-form > .fields::before { width: 24px !important; height: 24px !important; font-size: 12.5px !important; line-height: 24px !important; }
	html body .wgh-plate-finder-btn { min-height: 0 !important; padding: 12px 14px !important; gap: 12px !important; }
	html body .wgh-plate-finder-btn .wgh-plate-finder-ic { width: 36px !important; height: 36px !important; }
	html body .wgh-plate-finder-txt small { display: none !important; }
	html body .wgh-plate-finder-txt b { font-size: 15.5px !important; }
}

/* Breadcrumb: the house sat a touch high beside "Home" (centred on the 22px line box, the text sits lower in it). */
html body #breadcrumbs > span > span:first-child > a::before { transform: translateY(-1px); }

/* Part finder on phones: title and subtext centred (2026-10-16). */
@media (max-width: 767px) {
	html body .wgh-finder-head { justify-content: center !important; text-align: center !important; }
	html body .wgh-finder-head > div { width: 100%; }
}

/* Homepage "online store" section (2026-10-16): the photo frame had a min-height bigger than the photo (a grey band
   showed under it); it now fits the photo exactly. Phones: the photo sits between the title and the text, with less
   space above the section. */
html body .about-us-section .about-image-wrapper { min-height: 0 !important; background: none !important; }
html body .about-us-section .about-image-wrapper img { display: block; width: 100% !important; height: auto !important; }
@media (max-width: 991px) {
	html body .about-us-section { padding-top: 56px !important; }
	html body .about-us-section .title-row-circular { margin-bottom: 22px !important; }
	html body .about-us-section .wgh-about-img-m { margin: 0 0 26px !important; border-top-left-radius: 80px !important; border-bottom-right-radius: 80px !important; }
}
/* "Found your rating plate?" box on the model finder page: centred on phones like the other finder boxes. */
@media (max-width: 767px) {
	html body .wgh-plate-banner { text-align: center !important; justify-content: center !important; }
	html body .wgh-plate-banner .wgh-plate-banner-txt { width: 100%; }
}

/* Help cards strip (Advice Centre / model number / help me find my part): less space above and below on phones. */
@media (max-width: 767px) { html body .container-fluid.wgh-help-strip { padding-top: 32px !important; padding-bottom: 32px !important; } }

/* Shop sections on phones (2026-10-16): 32px top and bottom, the same as the other three sites (were 56-96px). */
@media (max-width: 767px) {
	html body :is(.container-fluid.category-listing, .container-fluid.brands-listing, .container.about-us-section, .container-fluid.advice-listing, .container-fluid.product-slider-section, .container-fluid.wgh-mf-cards, .container-fluid.wgh-mf-tips, .wgh-page-body.wgh-basket-page, .wgh-page-body.wgh-listing, .wgh-page-body.wgh-checkout-page, .wgh-page-body.wgh-account-page) { padding-top: 32px !important; padding-bottom: 32px !important; }
}

/* Product listing filters on phones (2026-10-16), rebuilt: a full-screen panel on a light grey ground with a sticky
   header (title + close), cards that contain their content (the selections list was floated, so the card collapsed
   and the list ran over the next card) with space between them, and a sticky "Show parts" button. */
@media (max-width: 991px) {
	html body .product-list .product-filters-container.wgh-filters { padding: 0 0 96px !important; background: #F4F6FA !important; -webkit-overflow-scrolling: touch; }
	html body .product-list .product-filters-container.wgh-filters > .modal-buttons { position: sticky; top: 0; z-index: 3; display: flex !important; align-items: center; justify-content: space-between; height: 60px; margin: 0 0 14px !important; padding: 0 16px 0 20px !important; background: #fff; border-bottom: 1px solid #E3E7EF; }
	html body .product-list .wgh-filters .wgh-filters-title { font-size: 18px; font-weight: 700; color: #0B1949; }
	html body .product-list .wgh-filters .wgh-filters-close { position: static !important; display: inline-grid !important; place-items: center; width: 40px; height: 40px; margin: 0 !important; padding: 0 !important; border: 1px solid #DEE2EA; border-radius: 50%; background: #fff; color: #0B1949 !important; }
	html body .product-list .wgh-filters .wgh-filters-close svg { width: 16px; height: 16px; }
	html body .product-list .wgh-filters > .wgh-filter-card { display: flow-root !important; margin: 0 16px 12px !important; padding: 16px !important; border: 1px solid #E3E7EF !important; border-radius: 14px !important; background: #fff !important; box-shadow: none !important; }
	html body .product-list .wgh-filters .wgh-filter-card ul, html body .product-list .wgh-filters .wgh-filter-card li { float: none !important; width: 100% !important; }
	html body .product-list .wgh-filters .wgh-selections { display: grid !important; gap: 8px; margin: 12px 0 0 !important; padding: 0 !important; }
	html body .product-list .wgh-filters .wgh-selections > li { margin: 0 !important; }
	html body .product-list .wgh-filters .wgh-filters-done { position: fixed; left: 0; right: 0; bottom: 0; z-index: 4; display: block !important; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #E3E7EF; }
	html body .product-list .wgh-filters .wgh-filters-done .wgh-btn { display: flex !important; justify-content: center; width: 100%; height: 50px; font-size: 16px !important; }
}
@media (min-width: 992px) { html body .wgh-filters .wgh-filters-title, html body .wgh-filters .wgh-filters-done { display: none !important; } }

/* Product page on phones (2026-10-16), redone: the title comes first, above the photo; the buy panel loses its inner
   frame so it has the full width (a 28px-padded card inside the page gutter left 277px and squashed everything);
   one-line Add to basket; stock and dispatch stacked; trust items that fit; the section tabs on one scrolling line;
   the fit form steps no longer push the fields off the right of the screen. */
@media (min-width: 992px) { html body .wgh-pdp-mhead { display: none !important; } }
@media (max-width: 991px) {
	html body .wgh-pdp-mhead { display: block; margin: 0; }
	html body .wgh-pdp-mhead .wgh-eyebrow { margin: 0 0 10px; }
	html body .wgh-pdp-mhead .wgh-pdp-title { margin: 0 !important; font-size: 26px !important; line-height: 1.15 !important; overflow-wrap: anywhere; }
	html body .wgh-pdp-top { display: flex !important; flex-direction: column; gap: 22px !important; }
	html body .wgh-pdp-buy-card > .wgh-pdp-title, html body .wgh-pdp-buy-card .wgh-pdp-head .wgh-eyebrow { display: none !important; }
	html body .wgh-pdp-buy-card { padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
	html body .wgh-pdp-buy-card .wgh-pdp-head { justify-content: flex-start !important; margin: 0 0 16px !important; padding: 0 !important; border: 0 !important; }
	html body .wgh-pdp-buy-card .wgh-pdp-head .price { margin: 0 !important; font-size: 32px !important; }
	html body .wgh-pdp-purchase { margin: 0 !important; padding: 0 0 20px !important; }
	html body .wgh-pdp-purchase form.cart { display: flex !important; gap: 10px; align-items: stretch; margin: 0 !important; }
	html body .wgh-pdp-purchase form.cart .quantity { flex: 0 0 124px !important; width: 124px !important; height: 54px !important; margin: 0 !important; }
	html body .wgh-pdp-purchase form.cart .single_add_to_cart_button { flex: 1 1 auto !important; width: auto !important; min-width: 0; height: 54px !important; margin: 0 !important; padding: 0 14px !important; white-space: nowrap; font-size: 16px !important; line-height: 1 !important; }
	html body .wgh-pdp-purchase #wc-stripe-express-checkout-element { margin-top: 10px !important; }
	html body .wgh-pdp-status { display: flex !important; flex-direction: column; align-items: flex-start; gap: 10px; margin: 0 0 16px !important; padding: 20px 0 0 !important; }
	html body .wgh-pdp-status li { margin: 0 !important; white-space: normal !important; }
	html body .wgh-pdp-fit { padding: 16px !important; gap: 14px !important; }
	html body .wgh-pdp-trust { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px !important; margin: 20px 0 16px !important; padding: 20px 0 0 !important; }
	html body .wgh-pdp-trust li { display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-width: 0; margin: 0 !important; padding: 14px 6px !important; font-size: 13px !important; line-height: 1.25 !important; text-align: center; white-space: normal !important; }
	html body .wgh-pdp-trust li svg { width: 24px !important; height: 24px !important; margin: 0 !important; }
	html body .wgh-pdp-pay { margin: 0 0 16px !important; }
	html body .wgh-pdp-pay img { display: block; width: 100% !important; max-width: 340px; height: auto !important; margin: 0 auto; }
	html body .wgh-pdp-share { flex-wrap: wrap; justify-content: center; gap: 10px; }

	/* Section tabs: one line that scrolls sideways, edge to edge, no scroll-right note. */
	html body .wgh-pdp-nav { display: flex !important; flex-wrap: nowrap !important; gap: 8px !important; margin-left: -20px !important; margin-right: -20px !important; padding: 0 20px 4px !important; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	html body .wgh-pdp-nav::-webkit-scrollbar { display: none; }
	html body .wgh-pdp-nav::before { content: none !important; display: none !important; }
	html body .wgh-pdp-nav a { flex: 0 0 auto !important; margin: 0 !important; white-space: nowrap; }
	html body .wgh-pdp-nav a svg { color: #FF6600 !important; }

	/* Section heads: icon and title on one row, the line under them full width. */
	html body .wgh-pdp-section-head { display: grid !important; grid-template-columns: 48px minmax(0, 1fr); align-items: center; column-gap: 14px !important; row-gap: 10px; }
	html body .wgh-pdp-section-head > div { display: contents; }
	html body .wgh-pdp-section-head h2 { margin: 0 !important; font-size: 22px !important; line-height: 1.2 !important; }
	html body .wgh-pdp-section-head p { grid-column: 1 / -1; margin: 0 !important; line-height: 1.55 !important; }

	/* Fit form: the step number sits beside its label, not in a 36px column that pushed every field off screen. */
	html body #scrollPartFit .wgh-pdp-fitform { padding: 20px 16px !important; }
	html body #scrollPartFit .find-part-form .fields { float: none !important; width: 100% !important; max-width: 100% !important; margin: 0 0 18px !important; padding: 0 !important; }
	html body #scrollPartFit .find-part-form .fields::before { top: -2px !important; left: 0 !important; }
	html body #scrollPartFit .find-part-form .fields > label > b { margin: 0 0 10px !important; padding-left: 34px !important; min-height: 24px; line-height: 20px !important; }
	html body #scrollPartFit .find-part-form .selectize-control, html body #scrollPartFit .find-part-form .input-wrapper { width: 100% !important; }
	html body #scrollPartFit .find-part-form .selectize-input input { width: 100% !important; }

	/* Reviews: the arrows sit under the cards (they covered the title). */
	html body #customer-reviews { position: relative; padding-bottom: 72px !important; }
	html body #customer-reviews .wgh-rev-arrow { top: auto !important; bottom: 8px !important; transform: none !important; }
	html body #customer-reviews .wgh-rev-arrow.is-prev { left: calc(50% - 54px) !important; right: auto !important; }
	html body #customer-reviews .wgh-rev-arrow.is-next { left: calc(50% + 6px) !important; right: auto !important; }
}

/* Phone filters: the Not sure it fits card centred with room to breathe. */
@media (max-width: 991px) {
	html body .product-list .wgh-filters .wgh-filter-help { padding: 22px 18px !important; text-align: center; }
	html body .product-list .wgh-filters .wgh-filter-help .wgh-aside-ic { display: flex !important; align-items: center; justify-content: center; width: 48px !important; height: 48px !important; margin: 0 auto 14px !important; }
	html body .product-list .wgh-filters .wgh-filter-help .wgh-aside-title { display: block; margin: 0 0 8px !important; }
	html body .product-list .wgh-filters .wgh-filter-help p { margin: 0 0 18px !important; line-height: 1.55 !important; }
	html body .product-list .wgh-filters .wgh-filter-help .wgh-btn { display: flex !important; justify-content: center; align-items: center; gap: 10px; width: 100%; }
}

/* Rating plate scanner on phones: more room between its parts. */
@media (max-width: 767px) {
	html body .wgh-plate-step > * + * { margin-top: 28px !important; }
	html body .wgh-plate-tips { display: grid !important; gap: 12px !important; }
	html body .wgh-plate-tips li { margin: 0 !important; }
}
@media (max-width: 991px) { html body .wgh-pdp-nav a { padding: 0 11px !important; gap: 7px !important; font-size: 15px !important; } }
@media (max-width: 991px) { html body .wgh-pdp-mhead { text-align: center; } html body .wgh-pdp-mhead .wgh-eyebrow { display: inline-flex !important; } html body .wgh-pdp-mhead .wgh-pdp-title { text-wrap: balance; } }
@media (max-width: 991px) { html body .wgh-pdp-buy-card .wgh-pdp-head { justify-content: center !important; text-align: center; } }
@media (max-width: 991px) { html body .wgh-pdp-mhead .wgh-pdp-title { text-align: center !important; } }
@media (max-width: 991px) { html body .wgh-pdp-status { flex-direction: row !important; flex-wrap: wrap !important; justify-content: center !important; align-items: center !important; gap: 10px 22px !important; text-align: center; } }
html body .wgh-pdp-fit span, html body .wgh-pdp-fit strong { text-wrap: balance; }
html body .wgh-pdp-fit span, html body .wgh-pdp-fit strong { text-wrap: balance !important; }
html body .wgh-pdp-nav a:hover svg, html body .wgh-pdp-nav a:focus-visible svg, html body .wgh-pdp-nav a.active svg, html body .wgh-pdp-nav a.is-active svg, html body .wgh-pdp-nav a[aria-current] svg { color: #fff !important; fill: #fff !important; }
html body .wgh-pdp-nav a svg { color: #FF6600 !important; }
html body .wgh-pdp-nav a:hover svg, html body .wgh-pdp-nav a:focus-visible svg { color: #fff !important; fill: #fff !important; }
@media (max-width: 991px) { html body .wgh-pdp-buy-card .wgh-pdp-status { margin-top: 0 !important; padding-top: 24px !important; } }

/* My account orders on phones (2026-10-16), rethought: nothing floats over anything. Order number and status first,
   then date and total (items are listed underneath anyway); the open/close button sits beside View order at the foot
   of the card instead of being pinned over the order number. */
@media (max-width: 767px) {
	html body .wgh-order-card > .wgh-order-head { position: static !important; display: grid !important; grid-template-columns: minmax(0, 1fr) 48px; gap: 18px 10px !important; padding: 18px !important; }
	html body .wgh-order-head .wgh-order-facts { grid-column: 1 / -1; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px 14px !important; }
	html body .wgh-order-facts > div:nth-child(2) { order: 1; }
	html body .wgh-order-facts > div:nth-child(3) { order: 2; }
	html body .wgh-order-facts > div:nth-child(1) { order: 3; }
	html body .wgh-order-facts > div:nth-child(5) { order: 4; }
	html body .wgh-order-facts > div:nth-child(4) { display: none !important; }
	html body .wgh-order-facts dt { margin: 0 0 6px !important; font-size: 12px !important; }
	html body .wgh-order-facts dd { font-size: 15px !important; }
	html body .wgh-order-head .wgh-order-view { grid-column: 1; display: flex !important; align-items: center; justify-content: center; gap: 8px; width: 100% !important; height: 48px !important; margin: 0 !important; }
	html body .wgh-order-head .wgh-order-toggle { position: static !important; grid-column: 2; width: 48px !important; height: 48px !important; border-radius: 10px !important; }
	html body .wgh-order-items { padding: 4px 18px !important; }
	html body .wgh-order-items li { gap: 12px !important; padding: 12px 0 !important; }
	html body .wgh-order-name { font-size: 14.5px !important; }

	/* View order: the facts as a tidy list (label left, value right) rather than boxes with wrapping values. */
	html body .wgh-vo-facts { display: block !important; margin: 0 !important; }
	html body .wgh-vo-facts > div { display: flex !important; align-items: baseline; justify-content: space-between; gap: 16px; margin: 0 !important; padding: 13px 0 !important; background: none !important; border: 0 !important; border-bottom: 1px solid #edf1f7 !important; border-radius: 0 !important; box-shadow: none !important; }
	html body .wgh-vo-facts > div:last-child { border-bottom: 0 !important; padding-bottom: 0 !important; }
	html body .wgh-vo-facts dt { margin: 0 !important; font-size: 14.5px !important; font-weight: 500 !important; color: var(--wh-text-muted) !important; text-transform: none !important; }
	html body .wgh-vo-facts dd { margin: 0 !important; font-size: 15px !important; text-align: right; }
	html body .wgh-vo-title { display: flex !important; flex-wrap: wrap; align-items: center; gap: 10px 12px; }

	/* Totals: long shipping text goes under its label, the tax note under the total. */
	html body .wgh-vo-totals > div { flex-wrap: wrap; gap: 4px 16px; }
	html body .wgh-vo-totals > div:has(.shipped_via) { display: block !important; }
	html body .wgh-vo-totals > div:has(.shipped_via) dd { margin-top: 4px !important; text-align: left !important; }
	html body .wgh-vo-totals .shipped_via { display: block; margin-top: 2px; font-size: 13px; color: var(--wh-text-muted); }
	html body .wgh-vo-totals > div.is-total dd { text-align: right; }
	html body .wgh-vo-totals > div.is-total dd small, html body .wgh-vo-totals > div.is-total dd .includes_tax { display: block; margin-top: 2px; font-size: 13px; }
}
/* Basket page: the Added to your basket card repeats what the basket shows, and inline it ran off the screen. */
html body .wgh-basket-page .woocommerce-message:has(.wgh-added) { display: none !important; }
@media (max-width: 991px) { html body .wgh-basket { grid-template-columns: minmax(0, 1fr) !important; } html body .wgh-basket > *, html body .wgh-basket-card, html body .wgh-basket-items, html body .cart-collaterals, html body .cart_totals.wgh-summary { min-width: 0 !important; max-width: 100% !important; } html body .wgh-basket-item { grid-template-columns: 76px minmax(0, 1fr) !important; } html body .wgh-basket-item .wgh-basket-info, html body .wgh-basket-item .wgh-basket-line { min-width: 0 !important; overflow-wrap: anywhere; } }

/* Basket (and checkout steps) on phones (2026-10-16), redone. */
@media (max-width: 767px) {
	/* Steps: three equal columns, the number above its label, a line joining the circles. */
	html body .wgh-steps { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 !important; width: 100%; max-width: 340px; margin-left: auto !important; margin-right: auto !important; padding: 0 !important; }
	html body .wgh-steps li { position: relative; display: flex !important; flex-direction: column; align-items: center; gap: 8px !important; margin: 0 !important; padding: 0 !important; font-size: 13.5px !important; line-height: 1.2; text-align: center; white-space: nowrap; }
	html body .wgh-steps li > span { position: relative; z-index: 1; width: 32px !important; height: 32px !important; font-size: 14px !important; }
	html body .wgh-steps li + li::before { position: absolute; top: 15px; right: calc(50% + 24px); width: calc(100% - 48px) !important; height: 2px; margin: 0 !important; }

	/* Item: name and details beside the picture; quantity, remove and line price on one row underneath. */
	html body .wgh-basket-item { grid-template-columns: 76px minmax(0, 1fr) auto !important; grid-template-areas: "pic info info" "qty remove line"; align-items: center; gap: 14px 12px !important; }
	html body .wgh-basket-item .wgh-basket-thumb { grid-area: pic; align-self: start; }
	html body .wgh-basket-item .wgh-basket-info { grid-area: info; }
	html body .wgh-basket-item .wgh-basket-qty { grid-area: qty; grid-column: 1 / span 2; justify-self: start; }
	html body .wgh-basket-item .wgh-basket-remove { grid-area: remove; justify-self: end; }
	html body .wgh-basket-item .wgh-basket-line { grid-area: line; justify-self: end; text-align: right; margin: 0 !important; }
	html body .wgh-basket-item .wgh-basket-info a { overflow-wrap: anywhere; }

	/* Summary: shipping note under its label, the secure note centred. */
	html body .wgh-sum tr.shipping, html body .wgh-sum tr.woocommerce-shipping-totals { display: block !important; }
	html body .wgh-sum tr.shipping > th, html body .wgh-sum tr.shipping > td, html body .wgh-sum tr.woocommerce-shipping-totals > th, html body .wgh-sum tr.woocommerce-shipping-totals > td { display: block !important; width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; text-align: left !important; }
	html body .wgh-sum tr.shipping > td, html body .wgh-sum tr.woocommerce-shipping-totals > td { padding-top: 4px !important; }
	html body .wgh-summary-secure { display: flex !important; align-items: center; justify-content: center; gap: 8px; margin: 14px 0 0 !important; font-size: 13.5px !important; line-height: 1.4 !important; text-align: center; }
	html body .wgh-summary-secure svg { flex: none; }

	/* Help cards under the basket: centred, the icon above. */
	html body .wgh-help-grid .wgh-help-card { flex-direction: column !important; align-items: center !important; text-align: center; gap: 12px !important; padding: 22px 18px !important; }
	html body .wgh-help-grid .wgh-help-body { display: flex; flex-direction: column; align-items: center; }
	html body .wgh-help-grid .wgh-help-more { justify-content: center; }
}
/* The floating basket button is not needed on the basket or checkout itself (it covered the totals). */
@media (max-width: 991px) {
	html body.woocommerce-cart .wgh-hdr-basket, html body.woocommerce-checkout .wgh-hdr-basket { display: none !important; }
}
@media (max-width: 767px) { html body .wgh-steps li + li::before { left: calc(-50% + 24px) !important; right: calc(50% + 24px) !important; width: auto !important; transform: none !important; } html body.woocommerce-cart #cartIcon.wgh-hdr-basket, html body.woocommerce-checkout #cartIcon.wgh-hdr-basket { display: none !important; } }
@media (max-width: 991px) { html body.woocommerce-cart .header a#cartIcon.wgh-hdr-basket, html body.woocommerce-checkout .header a#cartIcon.wgh-hdr-basket { display: none !important; } }
@media (max-width: 767px) { html body .wgh-summary-table tr.shipping { display: block !important; } html body .wgh-summary-table tr.shipping > th, html body .wgh-summary-table tr.shipping > td { display: block !important; width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; text-align: left !important; } html body .wgh-summary-table tr.shipping > th { padding-bottom: 4px !important; } html body .wgh-summary-table tr.shipping > td { padding-top: 0 !important; } html body .wgh-summary-table tr.shipping > td::before { display: none !important; } html body #wc-stripe-express-checkout-element { max-width: 100%; overflow: hidden; border-radius: 10px; } }
@media (max-width: 767px) { html body .wgh-summary-secure { display: block !important; text-align: center !important; text-wrap: balance; } html body .wgh-summary-secure svg { display: inline-block; margin: 0 6px 0 0 !important; vertical-align: -2px; } }
@media (max-width: 767px) { html body .wgh-summary-secure { font-size: 12.5px !important; text-wrap: pretty !important; } }
/* Checkout: Have a coupon? on phones, centred: the tag icon and question on one line, the link under it. */
@media (max-width: 767px) { html body .woocommerce-form-coupon-toggle .woocommerce-info { display: block !important; padding: 18px 16px !important; text-align: center !important; line-height: 1.4 !important; } html body .woocommerce-form-coupon-toggle .woocommerce-info::before { position: static !important; display: inline-block !important; margin: 0 8px 0 0 !important; vertical-align: -2px; transform: none !important; } html body .woocommerce-form-coupon-toggle .woocommerce-info a.showcoupon { display: block !important; margin: 6px 0 0 !important; text-align: center !important; } }
@media (max-width: 767px) { html body.woocommerce-checkout div.woocommerce .woocommerce-form-coupon-toggle div.woocommerce-info::before { display: inline-block !important; position: static !important; margin: 0 8px 0 0 !important; vertical-align: -2px; } }
@media (max-width: 767px) { html body.woocommerce-checkout div.woocommerce .woocommerce-form-coupon-toggle div.woocommerce-info { padding: 18px 16px !important; text-align: center !important; } }
/* Checkout: the create-an-account option had no padding inside its box. */
html body .woocommerce-checkout p#wgh_create_account_field.wgh-ga-optin, html body form.checkout p#wgh_create_account_field.wgh-ga-optin { padding: 16px !important; border-radius: 12px; }
/* Checkout on phones: the layout column is locked to the screen (opening the terms, with their wide tables, pushed the page 40px wider), and those tables stack. */
@media (max-width: 991px) { html body form.checkout.wgh-checkout { grid-template-columns: minmax(0, 1fr) !important; } html body form.checkout.wgh-checkout > * { min-width: 0 !important; max-width: 100% !important; } }
@media (max-width: 767px) { html body .woocommerce-terms-and-conditions { overflow-x: hidden !important; overflow-wrap: anywhere; } html body .woocommerce-terms-and-conditions :is(table, tbody, tr, td, th) { display: block !important; width: 100% !important; max-width: 100% !important; } html body .woocommerce-terms-and-conditions td, html body .woocommerce-terms-and-conditions th { padding: 6px 0 !important; } }

/* Checkout, signed in (2026-10-16): the saved-card choice and the "Save payment information" tick box. The radio sat
   indented and the tick box floated outside the card box with its label squeezed into a 50px column. Now: a plain row
   for each choice, and the save option full width under the card fields. */
html body .payment_box .woocommerce-SavedPaymentMethods { margin: 0 0 14px !important; padding: 0 !important; list-style: none !important; }
html body .payment_box .woocommerce-SavedPaymentMethods > li { display: flex !important; align-items: center; gap: 10px; margin: 0 0 8px !important; padding: 0 !important; }
html body .payment_box .woocommerce-SavedPaymentMethods > li::before { display: none !important; }
html body .payment_box .woocommerce-SavedPaymentMethods > li input[type="radio"] { flex: none; position: static !important; margin: 0 !important; }
html body .payment_box .woocommerce-SavedPaymentMethods > li label { flex: 1 1 auto; min-width: 0; margin: 0 !important; padding: 0 !important; }
html body .payment_box p.woocommerce-SavedPaymentMethods-saveNew { display: flex !important; align-items: flex-start; gap: 10px; float: none !important; clear: both; position: static !important; width: 100% !important; max-width: 100% !important; margin: 16px 0 0 !important; padding: 0 !important; }
html body .payment_box p.woocommerce-SavedPaymentMethods-saveNew input[type="checkbox"] { flex: none; position: static !important; margin: 2px 0 0 !important; }
html body .payment_box p.woocommerce-SavedPaymentMethods-saveNew label { flex: 1 1 auto; min-width: 0; display: block !important; width: auto !important; margin: 0 !important; padding: 0 !important; font-size: 14.5px; line-height: 1.45; white-space: normal !important; }
html body .payment_box fieldset { min-width: 0 !important; max-width: 100% !important; }
@media (max-width: 767px) {
	html body form.checkout #place_order { display: flex !important; justify-content: center; align-items: center; width: 100% !important; }
}
/* Stripe adds an invisible style-probe input; on phones it sat past the right edge and widened the whole page. */
html body #wc-stripe-hidden-style-input { left: 0 !important; right: auto !important; width: 10px !important; max-width: 10px !important; pointer-events: none; }
@media (max-width: 767px) { html body form.checkout.wgh-checkout button#place_order.button { display: flex !important; justify-content: center; align-items: center; width: 100% !important; max-width: 100% !important; } }
/* The saved-card list was floated, and the Stripe card fields (a fieldset) squeezed in beside it at 0px wide. */
html body .payment_box ul.woocommerce-SavedPaymentMethods { float: none !important; width: 100% !important; } html body .payment_box fieldset { clear: both; width: 100% !important; }
/* Shop page heroes on phones: the text block spans the full width, so a short intro cannot shrink it off-centre. */
@media (max-width: 991px) { html body .wgh-shop-head-grid > .wgh-page-hero-copy { width: 100% !important; flex: 1 1 100%; } }
/* Homepage online-store section on phones: heading and text at the same sizes as every other section on all four sites (27.2px heading, 16.8px text), with even 28px gaps around the photo. */
@media (max-width: 991px) { html body .about-us-section h3 { font-size: 27.2px !important; line-height: 1.15 !important; } html body .about-us-section .title-row-circular { margin-bottom: 28px !important; } html body .about-us-section .wgh-about-img-m { margin-bottom: 28px !important; } html body .about-us-section .content, html body .about-us-section .content p { font-size: 16.8px !important; line-height: 27.3px !important; } }
/* Phones: panel headings inside boxes (basket, checkout, account, contact, returns, listing) all one size, matching the product page (22px). */
@media (max-width: 767px) { html body .wgh-page-body h2, html body .wgh-listing-head h2, html body .wgh-acc-panel h2, html body .cart_totals h2 { font-size: 22px !important; line-height: 1.25 !important; } }
@media (max-width: 767px) { html body .wpcf7-form .wgh-form-head h2 { font-size: 22px !important; line-height: 1.25 !important; } }

/* Speed (2026-10-16): the outside Font Awesome 7 icon font is no longer loaded. The few icons still written as
   <i class="fa…"> are drawn here from the official Font Awesome 6.6.0 shapes, in the text colour. */
html body i:is(.fa-minus, .fa-plus, .fa-rotate-left, .fa-magnifying-glass, .fa-user) { display: inline-block; width: 1em; height: 1em; vertical-align: -0.125em; background-color: currentColor; -webkit-mask: var(--wgh-ic) center / contain no-repeat; mask: var(--wgh-ic) center / contain no-repeat; font-style: normal; }
html body i:is(.fa-minus, .fa-plus, .fa-rotate-left, .fa-magnifying-glass, .fa-user)::before { content: none !important; }
html body i.fa-minus { --wgh-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z'/%3E%3C/svg%3E"); }
html body i.fa-plus { --wgh-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z'/%3E%3C/svg%3E"); }
html body i.fa-rotate-left { --wgh-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z'/%3E%3C/svg%3E"); }
html body i.fa-magnifying-glass { --wgh-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z'/%3E%3C/svg%3E"); }
html body i.fa-user { --wgh-ic: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M224 256A128 128 0 1 0 224 0a128 128 0 1 0 0 256zm-45.7 48C79.8 304 0 383.8 0 482.3C0 498.7 13.3 512 29.7 512l388.6 0c16.4 0 29.7-13.3 29.7-29.7C448 383.8 368.2 304 269.7 304l-91.4 0z'/%3E%3C/svg%3E"); }
/* Touch screens (2026-10-16): no hover effects on cards. On iPhones the first tap showed the hover state (lifted card,
   orange arrow) instead of opening the link; without a hover change the first tap opens it. Mouse users keep hover. */
@media (hover: none) {
	html body .product-cat-inner > a.wgh-cat-card:hover { transform: none !important; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.05) !important; border-color: inherit !important; }
	html body :is(.wgh-cat-card, .wgh-guide-card, .wgh-acc-tile):hover .wgh-cat-arrow { background: #f6f8fc !important; color: var(--wh-orange) !important; }
	html body .wgh-order-row:hover .wgh-cat-arrow { background: #fff !important; border-color: var(--wh-border) !important; color: var(--wh-orange) !important; }
	html body .wgh-help-card:hover { transform: none !important; }
}
/* Fit check panel (2026-10-16): white instead of grey, so the green "Good news" (and red) result boxes inside it sit on white rather than clashing with grey. The inputs keep their own borders. */
html body .wgh-pdp-fitform, html body #scrollPartFit .wgh-pdp-fitform { background: #fff !important; border: 1px solid #E3E7EF !important; box-shadow: 0 8px 18px rgba(11, 25, 73, 0.04); }
html body .wgh-pdp-fitform .find-part-form input[type=text], html body .wgh-pdp-fitform .selectize-input { background: #F6F8FC !important; }
