/* Retained Tuingigant markup compatibility; single active stylesheet. */
/* Tuingigant — design tokens (de huisstijl op één plek).
   ~70% neutraal, ~30% kleur; tuin-groen leidt, koraal is de tegenhanger
   op conversiepunten (koopknoppen, sale).

   Let op: de variabele heet historisch --sr-coral maar draagt nu het
   PRIMAIRE groen; zo kleurt de hele bestaande opmaak in één keer om.
   Het echte koraal leeft door als --sr-accent. */

:root {
	/* Basis (warm-neutraal met een groene ondertoon) */
	--sr-bg: #F8FAF6;
	--sr-white: #FFFFFF;
	--sr-ink: #20281F;
	--sr-muted: #66705F;
	--sr-line: #E5EAE0;
	--sr-surface-soft: #EEF3EA;

	/* Primair: tuin-groen (via de historische --sr-coral-slot) */
	--sr-coral: #2E7D4E;
	--sr-yellow: #FFC53D;
	--sr-mint: #1FC4A0;
	--sr-purple: #7C9A4E; /* olijf — vervangt paars in de confetti */
	--sr-cobalt: #3D6CF0;

	/* Tegenhanger: het Schoenenreus-koraal als accent */
	--sr-accent: #E8512B;
	--sr-accent-tint: #FFE4DC;
	--sr-accent-text: #4A1B0C;

	/* Tinted varianten — voor gekleurde stat-cards, headers en accent-vlakken.
	   Tekst-kleur die er goed op leest = sr-<kleur>-text (donkerste shade). */
	--sr-coral-tint: #E7F2EA;
	--sr-coral-text: #16432A;
	--sr-mint-tint: #E1F5EE;
	--sr-mint-text: #04342C;
	--sr-yellow-tint: #FFF1D1;
	--sr-yellow-text: #412402;
	--sr-purple-tint: #EFF4E6;
	--sr-purple-text: #33421C;
	--sr-cobalt-tint: #E6F1FB;
	--sr-cobalt-text: #042C53;

	/* Vorm */
	--sr-radius: 14px;
	--sr-radius-sm: 10px;
	--sr-radius-lg: 16px;
	--sr-radius-pill: 999px;
	--sr-shadow: 0 6px 20px rgba(35, 32, 38, 0.08);

	/* Typografie */
	--sr-font-head: "Poppins", "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
	--sr-font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* Body + koppen op onze pagina's (typografie ->  tegen thema-conflicten) */
.sr-listing,
.sr-pdp {
	font-family: var(--sr-font-body) ;
	color: var(--sr-ink) ;
}

.sr-listing__title,
.sr-pdp__title,
.sr-pdp h2,
.sr-listing h2,
.sr-filters__label,
.sr-section-title {
	font-family: var(--sr-font-head) ;
	letter-spacing: -0.01em ;
}

/* "X shops"-badge */
.sr-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: var(--sr-coral);
	color: var(--sr-white) ;
	font-family: var(--sr-font-body) ;
	font-size: 0.78rem ;
	font-weight: 600 ;
	line-height: 1 ;
	padding: 4px 11px;
	border-radius: var(--sr-radius-pill);
	white-space: nowrap;
}

.sr-badge svg {
	width: 13px;
	height: 13px;
	flex: none;
}

.sr-badge--outline {
	background: var(--sr-white);
	color: var(--sr-coral) ;
	box-shadow: inset 0 0 0 1px var(--sr-coral);
}

/* Status-badges (op productkaarten, naast de X shops-badge) */
.sr-status {
	display: inline-flex;
	align-items: center;
	font-family: var(--sr-font-body) ;
	font-size: 0.72rem ;
	font-weight: 500 ;
	line-height: 1 ;
	padding: 3px 9px;
	border-radius: var(--sr-radius-pill);
	white-space: nowrap;
}

.sr-status--sale {
	/* Korting = het koraal-accent: knalt op de groene huisstijl. */
	background: var(--sr-accent);
	color: var(--sr-white) ;
}

.sr-status--tip {
	background: var(--sr-mint);
	color: var(--sr-mint-text) ;
}

.sr-status--last {
	background: var(--sr-yellow);
	color: var(--sr-yellow-text) ;
}

/* Gedeelde knoppen/CTA's */
.sr-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--sr-white);
	color: var(--sr-ink) ;
	font-family: var(--sr-font-body) ;
	font-weight: 500 ;
	text-decoration: none ;
	border: 1px solid var(--sr-ink);
	border-radius: var(--sr-radius-sm);
	padding: 8px 14px;
	cursor: pointer;
	font-size: 0.88rem ;
	transition: border-color .15s, color .15s, background .15s, transform .15s;
}

.sr-cta:not(.sr-cta--primary):hover {
	border-color: var(--sr-coral);
	color: var(--sr-coral) ;
	background: var(--sr-coral-tint);
}

.sr-cta--primary {
	/* Primaire koopknop = het koraal-accent (de tegenhanger van het groen). */
	background: var(--sr-accent);
	color: var(--sr-white) ;
	border-color: var(--sr-accent);
	padding: 11px 20px;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.95rem ;
	border-radius: 12px;
}

.sr-cta--primary:hover {
	filter: brightness(0.96);
	transform: translateY(-1px);
}

/**
 * Branded site-chrome: header (menu) + footer.
 * Gebruikt de merk-tokens uit sr-tokens.css (var(--sr-*)).
 * Geladen via de [sr_header] / [sr_footer] shortcodes (SR_Chrome).
 */

/* ---------- HEADER ---------- */
.sr-header {
	background: var(--sr-bg);
	border-bottom: 1px solid var(--sr-line);
	font-family: var(--sr-font-body);
}

.sr-header *,
.sr-footer * {
	box-sizing: border-box;
}

.sr-header__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 14px 22px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.sr-header__logo {
	font-family: var(--sr-font-head);
	font-weight: 700;
	font-size: 22px;
	letter-spacing: -0.02em;
	color: var(--sr-ink);
	text-decoration: none;
	flex: none;
}

.sr-header__logo span {
	color: var(--sr-coral);
}

/* Custom-logo-afbeelding (Weergave → Aanpassen → Site-identiteit) i.p.v. het
   tekst-logo: netjes op hoogte schalen zodat 'ie in de header past. */
.sr-header__logo.sr-logo--img {
	display: inline-flex;
	align-items: center;
	line-height: 0;
}

.sr-header__logo .sr-logo-img {
	height: 40px;
	width: auto;
	max-width: min(70vw, 260px);
	display: block;
}

.sr-nav {
	display: flex;
	align-items: center;
	gap: 4px;
}

.sr-nav a {
	position: relative;
	font-size: 14px;
	color: var(--sr-muted);
	text-decoration: none;
	padding: 8px 12px;
	border-radius: 8px;
	transition: color .15s, background .15s;
}

.sr-nav a:hover {
	color: var(--sr-ink);
	background: var(--sr-white);
}

.sr-nav a::after {
	content: "";
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 3px;
	height: 2px;
	background: var(--sr-coral);
	border-radius: 2px;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .18s;
}

.sr-nav a:hover::after {
	transform: scaleX(1);
}

.sr-header__actions {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: none;
}

.sr-header__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	color: var(--sr-ink);
	background: transparent;
	border: 0;
	cursor: pointer;
	text-decoration: none;
	transition: background .15s, color .15s;
}

.sr-header__icon:hover {
	background: var(--sr-coral-tint);
	color: var(--sr-coral);
}

.sr-header__icon svg {
	width: 20px;
	height: 20px;
}

.sr-header .sr-burger {
	display: none ;
}

/* Merken: klein utility-link rechts (géén hoofdcategorie). */
.sr-header__merken {
	display: inline-flex;
	align-items: center;
	font-size: 13px;
	font-weight: 500;
	color: var(--sr-ink);
	text-decoration: none;
	padding: 8px 10px;
	border-radius: 8px;
	white-space: nowrap;
	transition: color .15s, background .15s;
}

.sr-header__merken:hover {
	color: var(--sr-coral);
	background: var(--sr-coral-tint);
}

/* ---------- MOBIEL/COMPACT menu (onder 1200px past de volle balk met 7
   hoofdcategorieën niet meer naast logo en zoekveld; dan het off-canvas
   paneel) ---------- */
@media (max-width: 1199px) {
	.sr-header__merken {
		display: none ;
	}

	.sr-nav {
		position: fixed;
		inset: 0 0 0 auto;
		width: min(80vw, 320px);
		background: var(--sr-white);
		flex-direction: column;
		align-items: stretch;
		gap: 2px;
		padding: 74px 16px 24px;
		box-shadow: -12px 0 40px rgba(35, 32, 38, .12);
		transform: translateX(100%);
		transition: transform .25s ease;
		z-index: 100000;
	}

	.sr-nav.is-open {
		transform: translateX(0);
	}

	.sr-nav a {
		font-size: 16px;
		padding: 12px 14px;
		color: var(--sr-ink);
	}

	.sr-nav a::after {
		display: none;
	}

	.sr-header .sr-burger {
		display: inline-flex ;
	}

	.sr-scrim {
		position: fixed;
		inset: 0;
		background: rgba(35, 32, 38, .4);
		opacity: 0;
		visibility: hidden;
		transition: opacity .25s;
		z-index: 99999;
	}

	.sr-scrim.is-open {
		opacity: 1;
		visibility: visible;
	}
}

/* ---------- FOOTER ---------- */
.sr-footer {
	background: var(--sr-ink);
	color: #fff;
	font-family: var(--sr-font-body);
}

.sr-footer__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px 22px 22px;
}

.sr-footer__top {
	display: grid;
	grid-template-columns: 1.5fr repeat(5, 1fr);
	gap: 24px;
}

.sr-footer__logo {
	font-family: var(--sr-font-head);
	font-weight: 700;
	font-size: 20px;
	color: #fff;
	text-decoration: none;
}

.sr-footer__logo span {
	color: var(--sr-coral);
}

.sr-footer__tag {
	margin: 10px 0 0;
	font-size: 13px;
	color: rgba(255, 255, 255, .6);
	line-height: 1.5;
	max-width: 260px;
}

.sr-footer__col h4 {
	font-family: var(--sr-font-head);
	font-weight: 600;
	font-size: 13px;
	color: #fff;
	margin: 0 0 12px;
}

.sr-footer__col ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.sr-footer__col a {
	font-size: 13px;
	color: rgba(255, 255, 255, .65);
	text-decoration: none;
	transition: color .15s, padding-left .15s;
}

.sr-footer__col a:hover {
	color: #fff;
	padding-left: 3px;
}

.sr-footer__bar {
	margin-top: 30px;
	padding-top: 16px;
	border-top: 1px solid rgba(255, 255, 255, .14);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	flex-wrap: wrap;
}

.sr-footer__note {
	font-size: 11px;
	color: rgba(255, 255, 255, .5);
	line-height: 1.5;
	max-width: 720px;
	margin: 0;
}

.sr-footer__socials {
	display: flex;
	gap: 14px;
	align-items: center;
}

.sr-footer__social {
	color: rgba(255, 255, 255, .55);
	display: inline-flex;
	transition: color .14s ease, transform .14s ease;
}

.sr-footer__social svg {
	width: 18px;
	height: 18px;
}

a.sr-footer__social:hover {
	color: var(--sr-coral);
	transform: translateY(-2px);
}

@media (max-width: 1024px) {
	.sr-footer__top {
		grid-template-columns: repeat(3, 1fr);
		gap: 24px;
	}

	.sr-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 860px) {
	.sr-footer__top {
		grid-template-columns: 1fr 1fr;
		gap: 24px;
	}

	.sr-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 480px) {
	.sr-footer__top {
		grid-template-columns: 1fr;
	}
}

/* ---------- MEGA-MENU (per hoofdkop) ---------- */
/* De header is de positioneer-context zodat elk paneel full-width kan zijn. */
.sr-header {
	position: relative;
	z-index: 50;
}

.sr-nav__item {
	position: static;
	display: flex;
	align-items: center;
}

.sr-nav__head {
	display: inline-flex;
	align-items: center;
}

/* Hoofd-link iets minder rechter-padding zodat de chevron er strak tegenaan zit. */
.sr-nav__head .sr-nav__link {
	padding-right: 3px;
}

/* Trigger-label (kop zonder eigen bestemming, bv. "Soorten schoenen"). */
.sr-nav__trigger {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-family: var(--sr-font-body);
	font-size: 14px;
	line-height: 1;
	color: var(--sr-muted);
	background: transparent;
	border: 0;
	cursor: pointer;
	padding: 8px 12px;
	border-radius: 8px;
	transition: color .15s, background .15s;
}

.sr-nav__item--mega:hover .sr-nav__link,
.sr-nav__item--mega:hover .sr-nav__trigger,
.sr-nav__trigger:hover,
.sr-nav__item.is-open .sr-nav__trigger {
	color: var(--sr-ink);
	background: var(--sr-white);
}

/* Chevron-knop naast een hoofd-link (klap-control; op mobiel de tik-zone). */
.sr-nav__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	margin: 0;
	padding: 8px 8px 8px 0;
	border: 0;
	background: transparent;
	color: var(--sr-muted);
	cursor: pointer;
	border-radius: 8px;
}

.sr-nav__chev {
	display: block;
	width: 14px;
	height: 14px;
	transition: transform .2s ease;
}

.sr-nav__item--mega:hover .sr-nav__chev,
.sr-nav__item.is-open .sr-nav__chev {
	transform: rotate(180deg);
}

/* Het full-width paneel onder de header. */
.sr-mega {
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: var(--sr-white);
	border-top: 1px solid var(--sr-line);
	border-bottom: 1px solid var(--sr-line);
	box-shadow: var(--sr-shadow);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px);
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
	z-index: 49;
}

.sr-nav__item--mega:hover .sr-mega,
.sr-nav__item.is-open .sr-mega {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.sr-mega__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 28px 22px 32px;
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(220px, 1fr);
	gap: 34px;
}

.sr-mega__cols {
	display: grid;
	grid-template-columns: 1fr;
	gap: 26px;
}

.sr-mega__title {
	font-family: var(--sr-font-head);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--sr-muted);
	margin: 0 0 14px;
}

.sr-mega__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 2px;
}

.sr-mega__col--types .sr-mega__list {
	grid-template-columns: 1fr 1fr;
	gap: 2px 16px;
}

.sr-mega__col--brands .sr-mega__list {
	grid-template-columns: 1fr 1fr;
	gap: 2px 16px;
}

/* Anchors in het mega-menu — overschrijft de generieke .sr-nav a-regels. */
.sr-nav .sr-mega__link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 14px;
	color: var(--sr-ink);
	text-decoration: none;
	padding: 7px 9px;
	border-radius: 9px;
	transition: background .14s, color .14s;
}

.sr-nav .sr-mega__link:hover {
	background: var(--sr-bg);
	color: var(--sr-coral);
}

.sr-mega__link::after {
	content: none ;
}

.sr-mega__dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	flex: none;
}

.sr-nav .sr-mega__all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 12px;
	padding: 7px 9px;
	font-size: 13px;
	font-weight: 600;
	color: var(--sr-coral);
	text-decoration: none;
	transition: gap .15s ease;
}

.sr-mega__all::after {
	content: none ;
}

.sr-nav .sr-mega__all:hover {
	gap: 9px;
	background: transparent;
}

.sr-mega__all svg {
	width: 16px;
	height: 16px;
}

/* Branded feature-kaart (koraal). */
.sr-nav .sr-mega__feature {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	background: var(--sr-coral);
	color: #fff;
	border-radius: var(--sr-radius-lg);
	padding: 22px;
	text-decoration: none;
	transition: transform .15s ease, filter .15s ease;
}

.sr-mega__feature::after {
	content: none ;
}

.sr-nav .sr-mega__feature:hover {
	background: var(--sr-coral);
	filter: brightness(.97);
	transform: translateY(-2px);
}

.sr-mega__feature-kicker {
	font-family: var(--sr-font-head);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .02em;
	color: rgba(255, 255, 255, .85);
}

.sr-mega__feature-title {
	font-family: var(--sr-font-head);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: -0.01em;
}

.sr-mega__feature-text {
	font-size: 12.5px;
	line-height: 1.5;
	color: rgba(255, 255, 255, .88);
}

.sr-mega__feature-cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 6px;
	font-weight: 600;
	font-size: 13px;
}

.sr-mega__feature-cta svg {
	width: 16px;
	height: 16px;
}

/* ---------- MEGA-MENU op mobiel (accordeon in het schuifpaneel) ---------- */
@media (max-width: 860px) {
	.sr-nav__item {
		display: block;
		width: 100%;
	}

	.sr-nav__head {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
	}

	.sr-nav__head .sr-nav__link {
		flex: 1 1 auto;
	}

	/* Trigger-only kop vult de hele rij. */
	.sr-nav__head .sr-nav__trigger {
		flex: 1 1 auto;
		justify-content: space-between;
		font-size: 16px;
		padding: 12px 14px;
		color: var(--sr-ink);
	}

	.sr-nav__toggle {
		width: 44px;
		height: 44px;
		margin: 0;
		color: var(--sr-ink);
	}

	.sr-mega {
		position: static;
		top: auto;
		opacity: 1;
		visibility: visible;
		transform: none;
		box-shadow: none;
		border: 0;
		background: transparent;
		display: none;
	}

	.sr-nav__item.is-open .sr-mega {
		display: block;
	}

	.sr-mega__inner {
		display: block;
		max-width: none;
		padding: 2px 0 8px;
	}

	.sr-mega__cols {
		display: block;
	}

	.sr-mega__col {
		margin: 0 0 8px;
		padding: 0 6px;
	}

	.sr-mega__title {
		margin: 8px 0 6px;
	}

	.sr-mega__col--types .sr-mega__list {
		grid-template-columns: 1fr 1fr;
	}

	.sr-nav .sr-mega__link {
		font-size: 15px;
		padding: 9px 10px;
	}

	.sr-nav .sr-mega__feature {
		margin: 6px 6px 4px;
	}
}
/* ---------- HEADER-ZOEKVELD ---------- */
.sr-header__search {
	display: flex;
	align-items: center;
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-pill);
	padding: 3px 3px 3px 12px;
	transition: border-color .15s, box-shadow .15s;
}

.sr-header__search:focus-within {
	border-color: var(--sr-coral);
	box-shadow: 0 0 0 3px var(--sr-coral-tint);
}

.sr-header__search-input {
	-webkit-appearance: none ;
	appearance: none ;
	border: 0 ;
	outline: 0 ;
	box-shadow: none ;
	background: transparent ;
	margin: 0 ;
	font-family: var(--sr-font-body) ;
	font-size: 13px ;
	color: var(--sr-ink) ;
	line-height: 1.2 ;
	width: 110px;
	min-width: 0;
	padding: 6px 6px 6px 0;
}

.sr-header__search-input::placeholder {
	color: var(--sr-muted);
}

.sr-header__search-input::-webkit-search-decoration,
.sr-header__search-input::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
}

.sr-header__search-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: var(--sr-radius-pill);
	background: var(--sr-coral);
	color: #fff;
	cursor: pointer;
	transition: filter .15s;
}

.sr-header__search-btn:hover {
	filter: brightness(0.96);
}

.sr-header__search-btn svg {
	width: 17px;
	height: 17px;
}

@media (max-width: 860px) {
	.sr-header__search-input {
		width: 108px;
	}
}

@media (max-width: 420px) {
	.sr-header__inner {
		gap: 10px;
		padding: 12px 16px;
	}

	.sr-header__search-input {
		width: 82px;
	}
}

/* ---------------------------------------------------------------------
 * Elementor/thema-proof resets.
 * Het thema injecteert knop-/link-/input-styling (coral randen, pills,
 * hoofdletters) in onze header. Deze -resets winnen daarvan.
 * ------------------------------------------------------------------- */
.sr-header .sr-nav__link,
.sr-header .sr-nav__trigger,
.sr-header .sr-nav__toggle,
.sr-header .sr-burger,
.sr-header .sr-header__search,
.sr-header .sr-header__search-input,
.sr-header .sr-header__search-btn {
	-webkit-appearance: none ;
	appearance: none ;
	box-shadow: none ;
	background-image: none ;
	text-transform: none ;
	letter-spacing: normal ;
	min-height: 0 ;
	min-width: 0 ;
	text-decoration: none ;
	font-family: var(--sr-font-body) ;
}

.sr-header .sr-nav__link,
.sr-header .sr-nav__trigger,
.sr-header .sr-nav__toggle {
	border: 0 ;
	border-radius: 8px ;
	background-color: transparent ;
	color: var(--sr-muted) ;
}

.sr-header .sr-nav__item--mega:hover .sr-nav__link,
.sr-header .sr-nav__item--mega:hover .sr-nav__trigger,
.sr-header .sr-nav__trigger:hover,
.sr-header .sr-nav__item.is-open .sr-nav__trigger {
	background-color: var(--sr-white) ;
	color: var(--sr-ink) ;
}

.sr-header .sr-header__search {
	border: 1px solid var(--sr-line) ;
	border-radius: var(--sr-radius-pill) ;
}

.sr-header .sr-header__search:focus-within {
	border-color: var(--sr-coral) ;
	box-shadow: 0 0 0 3px var(--sr-coral-tint) ;
}

/* ---------------------------------------------------------------------
 * Desktopbalk (>=1200px). Met 7 hoofdcategorieën + het Merken-utility-link
 * past de balk ruim op normaal lettertype. Het zoekveld blijft als icoon
 * ingeklapt (klik/focus klapt het uit) — schoon én het maakt ruimte voor het
 * Merken-link. Onder 1200px draait het off-canvas menu (max-width:1199px).
 * ------------------------------------------------------------------- */
@media (min-width: 1200px) {
	.sr-header .sr-header__actions .sr-header__search {
		padding: 0 ;
		border-color: transparent ;
		background: transparent ;
	}

	.sr-header .sr-header__actions .sr-header__search-open {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		border-radius: 8px;
		color: var(--sr-muted);
		cursor: pointer;
	}

	/* Het magnifier-icoon klein en subtiel houden: zonder deze regel vult de SVG
	   (viewBox, geen eigen maat) de hele 36px-knop en valt 'ie veel te groot uit. */
	.sr-header .sr-header__actions .sr-header__search-open svg {
		width: 18px;
		height: 18px;
	}

	.sr-header .sr-header__actions .sr-header__search-open:hover {
		background: var(--sr-coral-tint);
		color: var(--sr-coral);
	}

	.sr-header .sr-header__actions .sr-header__search .sr-header__search-input {
		width: 0 ;
		max-width: 0 ;
		flex: 0 1 0 ;
		padding: 0 ;
		opacity: 0;
		transition: width .2s ease, opacity .15s ease;
	}

	.sr-header .sr-header__actions .sr-header__search .sr-header__search-btn {
		width: 0 ;
		opacity: 0;
		padding: 0 ;
		overflow: hidden;
	}

	.sr-header .sr-header__actions .sr-header__search:focus-within {
		padding: 3px 3px 3px 12px ;
		border-color: var(--sr-coral) ;
		background: var(--sr-white) ;
	}

	.sr-header .sr-header__actions .sr-header__search:focus-within .sr-header__search-input {
		width: 180px ;
		max-width: 180px ;
		opacity: 1;
		padding: 6px 6px 6px 0 ;
	}

	.sr-header .sr-header__actions .sr-header__search:focus-within .sr-header__search-btn {
		width: 34px ;
		opacity: 1;
	}
}

.sr-header .sr-header__search-input {
	border: 0 ;
	background-color: transparent ;
	width: 110px ;
	max-width: 110px ;
}

.sr-header .sr-header__search-btn {
	border: 0 ;
	border-radius: var(--sr-radius-pill) ;
	background-color: var(--sr-coral) ;
	color: #fff ;
}

/* Footer-koppen geforceerd wit (thema kleurt h4 anders). */
.sr-footer .sr-footer__col h4 {
	color: #fff ;
}

/* ---------------------------------------------------------------------
 * Fijn-afstelling tegen Elementor: button-padding/grootte die de chevrons
 * wegduwde, de trigger groter maakte en de zoekicoon naar onderen drukte.
 * ------------------------------------------------------------------- */
.sr-header .sr-nav {
	gap: 2px ;
}

/* Hoofd-links en trigger exact even groot (Elementor maakte de <button> groter). */
.sr-header .sr-nav__link,
.sr-header .sr-nav__trigger {
	font-size: 14px ;
	font-weight: 400 ;
	line-height: 1 ;
}

.sr-header .sr-nav__head .sr-nav__link {
	padding: 8px 2px 8px 10px ;
}

.sr-header .sr-nav__trigger {
	gap: 3px ;
	padding: 8px 12px ;
	white-space: nowrap ;
	flex-wrap: nowrap ;
}

/* Chevron-knop strak tegen de tekst en verticaal gecentreerd. */
.sr-header .sr-nav__toggle {
	width: auto ;
	height: auto ;
	margin: 0 ;
	padding: 8px 6px 8px 2px ;
	line-height: 1 ;
}

.sr-header .sr-nav__chev {
	display: block ;
	width: 14px ;
	height: 14px ;
}

/* Zoekknop: icoon echt in het midden. */
.sr-header .sr-header__search-btn {
	display: inline-flex ;
	align-items: center ;
	justify-content: center ;
	width: 34px ;
	height: 34px ;
	padding: 0 ;
	line-height: 1 ;
}

.sr-header .sr-header__search-btn svg {
	display: block ;
	width: 17px ;
	height: 17px ;
}

/* ---------------------------------------------------------------------
 * Mobiel menu — GEFORCEERD tegen thema/Elementor.
 * Zonder  won het thema en werd het paneel doorzichtig + te breed,
 * stonden de koppen scheef en klapten de dropdowns niet uit. Hogere
 * specificiteit (.sr-header ...) +  winnen dat terug.
 * ------------------------------------------------------------------- */
@media (max-width: 860px) {

	/* Schuifpaneel: smal, solide wit, rechts, scrollbaar. */
	.sr-header .sr-nav {
		position: fixed ;
		inset: 0 0 0 auto ;
		width: min(86vw, 320px) ;
		max-width: 320px ;
		height: 100% ;
		background: var(--sr-white) ;
		display: flex ;
		flex-direction: column ;
		align-items: stretch ;
		justify-content: flex-start ;
		gap: 0 ;
		padding: 76px 14px 28px ;
		box-shadow: -12px 0 40px rgba(35, 32, 38, .16) ;
		transform: translateX(100%) ;
		transition: transform .25s ease ;
		z-index: 100000 ;
		overflow-y: auto ;
		-webkit-overflow-scrolling: touch;
	}

	.sr-header .sr-nav.is-open {
		transform: translateX(0) ;
	}

	/* Elke kop op een eigen rij, met scheidingslijn. */
	.sr-header .sr-nav__item {
		display: block ;
		width: 100% ;
		margin: 0 ;
		border-bottom: 1px solid var(--sr-line) ;
	}

	.sr-header .sr-nav__head {
		display: flex ;
		flex-direction: row ;
		align-items: center ;
		justify-content: space-between ;
		width: 100% ;
		gap: 4px ;
	}

	/* Label links uitgelijnd (fix: "Soorten" stond gecentreerd). */
	.sr-header .sr-nav__head .sr-nav__link,
	.sr-header .sr-nav__head .sr-nav__trigger {
		flex: 1 1 auto ;
		display: flex ;
		align-items: center ;
		justify-content: space-between ;
		text-align: left ;
		font-size: 16px ;
		font-weight: 600 ;
		line-height: 1.2 ;
		padding: 14px 12px ;
		color: var(--sr-ink) ;
		width: auto ;
	}

	/* Chevron-knop: ruime tik-target rechts. */
	.sr-header .sr-nav__toggle {
		flex: 0 0 auto ;
		width: 48px ;
		height: 48px ;
		display: inline-flex ;
		align-items: center ;
		justify-content: center ;
		padding: 0 ;
		margin: 0 ;
		color: var(--sr-ink) ;
	}

	.sr-header .sr-nav__chev {
		width: 18px ;
		height: 18px ;
		transition: transform .2s ease;
	}

	.sr-header .sr-nav__item.is-open .sr-nav__chev {
		transform: rotate(180deg);
	}

	/* Mega = accordeon: standaard dicht, desktop hover-reveal UIT. */
	.sr-header .sr-mega,
	.sr-header .sr-nav__item--mega:hover .sr-mega {
		position: static ;
		inset: auto ;
		top: auto ;
		left: auto ;
		width: auto ;
		min-width: 0 ;
		max-width: none ;
		opacity: 1 ;
		visibility: visible ;
		transform: none ;
		box-shadow: none ;
		border: 0 ;
		background: transparent ;
		padding: 0 ;
		display: none ;
	}

	/* Alleen de geopende kop toont z'n inhoud. */
	.sr-header .sr-nav__item.is-open .sr-mega {
		display: block ;
	}

	.sr-header .sr-mega__inner {
		display: block ;
		max-width: none ;
		padding: 0 0 10px ;
	}

	.sr-header .sr-mega__cols {
		display: block ;
	}

	.sr-header .sr-mega__col {
		margin: 0 0 6px ;
		padding: 0 6px ;
	}

	.sr-header .sr-mega__col--types .sr-mega__list {
		display: grid ;
		grid-template-columns: 1fr 1fr ;
	}

	.sr-header .sr-nav .sr-mega__link {
		font-size: 15px ;
		padding: 10px ;
	}
}

/* ---------------------------------------------------------------------
 * Mobiele topbalk — compact zoekveld. Het thema rekt het input-veld op
 * (full-width), waardoor de balk te breed wordt. Hier forceren we een
 * compacte zoekbalk zodat logo + zoek + burger netjes passen.
 * ------------------------------------------------------------------- */
@media (max-width: 860px) {
	.sr-header .sr-header__inner {
		flex-wrap: nowrap ;
		gap: 8px ;
		overflow: hidden ;
	}

	.sr-header .sr-header__logo {
		flex: 0 1 auto ;
		min-width: 0 ;
	}

	.sr-header .sr-header__actions {
		flex: 0 0 auto ;
		gap: 6px ;
		margin-left: auto ;
	}

	.sr-header .sr-header__search {
		flex: 0 1 auto ;
		width: auto ;
		max-width: 110px ;
		padding: 3px 3px 3px 10px ;
	}

	.sr-header .sr-header__search-input {
		width: 50px ;
		max-width: 50px ;
		min-width: 0 ;
		flex: 0 1 50px ;
		font-size: 14px ;
	}
}

@media (max-width: 430px) {
	.sr-header .sr-header__search {
		max-width: 110px ;
	}
	.sr-header .sr-header__search-input {
		width: 50px ;
		max-width: 50px ;
		flex-basis: 50px ;
	}
}

/* ---------------------------------------------------------------------
 * Fix: de scrim lag óver het menupaneel (genest in .sr-header__inner dat
 * het thema onder de scrim duwde) -> items niet klikbaar. We tillen de
 * header-binnenkant (incl. het nav-paneel) expliciet boven de scrim.
 * Plus: kolomkop ("Op type") klein houden, kleiner dan de hoofdkoppen.
 * ------------------------------------------------------------------- */
@media (max-width: 860px) {
	.sr-header .sr-header__inner {
		position: relative ;
		z-index: 100001 ;
	}

	.sr-scrim {
		z-index: 99990 ;
	}

	.sr-header .sr-mega__title {
		font-size: 11px ;
		font-weight: 600 ;
		letter-spacing: .05em ;
		text-transform: uppercase ;
		color: var(--sr-muted) ;
		line-height: 1.2 ;
		margin: 0 0 6px ;
	}
}

/* ---------------------------------------------------------------------
 * Burger geforceerd in eigen stijl (Elementor gaf 'm een rand/pill/kleur).
 * Display niet aanraken: desktop blijft verborgen, mobiel toont 'm.
 * ------------------------------------------------------------------- */
.sr-header .sr-burger {
	border: 0 ;
	border-radius: 10px ;
	background: transparent ;
	background-color: transparent ;
	color: var(--sr-ink) ;
	width: 40px ;
	height: 40px ;
	padding: 0 ;
	box-shadow: none ;
}

.sr-header .sr-burger:hover {
	background: var(--sr-coral-tint) ;
	color: var(--sr-coral) ;
}

.sr-header .sr-burger svg {
	width: 24px ;
	height: 24px ;
	stroke: currentColor ;
}

/* ---------------------------------------------------------------------
 * Portal-styling: bij openen verplaatst de JS #srNav + #srScrim naar
 * <body> (buiten Elementor's stacking-context). Daar gelden deze
 * locatie-onafhankelijke ID-regels, zodat het paneel solide en bovenop
 * staat en de scrim eronder.
 * ------------------------------------------------------------------- */
@media (max-width: 860px) {
	body > #srNav {
		position: fixed ;
		inset: 0 0 0 auto ;
		width: min(86vw, 320px) ;
		max-width: 320px ;
		height: 100% ;
		background: var(--sr-white) ;
		display: flex ;
		flex-direction: column ;
		align-items: stretch ;
		gap: 0 ;
		padding: 20px 14px 28px ;
		box-shadow: -12px 0 40px rgba(35, 32, 38, .18) ;
		transform: translateX(100%) ;
		transition: transform .25s ease ;
		z-index: 100000 ;
		overflow-y: auto ;
		-webkit-overflow-scrolling: touch;
	}

	body > #srNav.is-open {
		transform: translateX(0) ;
	}

	body > #srScrim {
		position: fixed ;
		inset: 0 ;
		background: rgba(35, 32, 38, .45) ;
		opacity: 0;
		visibility: hidden;
		transition: opacity .25s ;
		z-index: 99990 ;
		pointer-events: auto ;
	}

	body > #srScrim.is-open {
		opacity: 1;
		visibility: visible;
	}
}

/* Portal: item-/accordeon-stijl voor #srNav in <body> (thema-proof). */
@media (max-width: 860px) {
	body > #srNav .sr-mega__title {
		font-size: 11px ;
		font-weight: 600 ;
		letter-spacing: .05em ;
		text-transform: uppercase ;
		color: var(--sr-muted) ;
		margin: 0 0 6px ;
		line-height: 1.2 ;
	}
	body > #srNav .sr-nav__item {
		display: block ;
		width: 100% ;
		border-bottom: 1px solid var(--sr-line) ;
	}
	body > #srNav .sr-nav__head {
		display: flex ;
		align-items: stretch ;
		justify-content: space-between ;
		width: 100% ;
	}
	/* Hoofd-link (anker): alleen zo breed als de tekst -> alleen de tekst
	   navigeert naar bv. /heren/. */
	body > #srNav .sr-nav__link:not(.sr-nav__trigger) {
		flex: 0 0 auto ;
		display: inline-flex ;
		align-items: center ;
		text-align: left ;
		font-size: 16px ;
		font-weight: 600 ;
		padding: 16px 8px 16px 12px ;
		color: var(--sr-ink) ;
		background: transparent ;
		border: 0 ;
	}
	/* Kop zonder eigen pagina (trigger): hele knop opent submenu. */
	body > #srNav .sr-nav__trigger {
		flex: 1 1 auto ;
		display: flex ;
		align-items: center ;
		justify-content: space-between ;
		text-align: left ;
		font-size: 16px ;
		font-weight: 600 ;
		padding: 16px 12px ;
		color: var(--sr-ink) ;
		background: transparent ;
		border: 0 ;
	}
	/* Chevron-knop vult de rest van de rij: grote tik-zone die het submenu
	   opent, zodat je niet per ongeluk de hoofdpagina opent. */
	body > #srNav .sr-nav__toggle {
		flex: 1 1 auto ;
		width: auto ;
		align-self: stretch ;
		min-height: 54px ;
		display: inline-flex ;
		align-items: center ;
		justify-content: flex-end ;
		padding: 0 14px 0 0 ;
		color: var(--sr-ink) ;
		background: transparent ;
		border: 0 ;
		cursor: pointer ;
	}
	body > #srNav .sr-mega,
	body > #srNav .sr-nav__item--mega:hover .sr-mega {
		position: static ;
		opacity: 1 ;
		visibility: visible ;
		transform: none ;
		box-shadow: none ;
		border: 0 ;
		background: transparent ;
		width: auto ;
		min-width: 0 ;
		padding: 0 ;
		display: none ;
	}
	body > #srNav .sr-nav__item.is-open .sr-mega {
		display: block ;
	}
	body > #srNav .sr-mega__inner { display: block ; padding: 0 0 10px ; }
	body > #srNav .sr-mega__cols { display: block ; }
	body > #srNav .sr-mega__col--types .sr-mega__list,
	body > #srNav .sr-mega__col--brands .sr-mega__list {
		display: grid ;
		grid-template-columns: 1fr 1fr ;
	}
	body > #srNav .sr-mega__link {
		font-size: 13px ;
		padding: 7px 8px ;
		display: flex ;
		align-items: center ;
	}
}

/* ---------- MOBIEL ZOEKVELD: icoon, uitklappen bij focus ---------- */
.sr-header__search-open {
	display: none;
}

@media (max-width: 640px) {
	.sr-header__inner {
		position: relative;
	}

	.sr-header__search {
		padding: 0;
		border: 0;
		background: transparent;
	}

	.sr-header__search-open {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
		border-radius: var(--sr-radius-pill);
		color: var(--sr-ink);
		cursor: pointer;
	}

	.sr-header__search-open svg {
		width: 21px;
		height: 21px;
	}

	.sr-header__search-input,
	.sr-header__search-btn {
		position: absolute;
		width: 1px;
		height: 1px;
		opacity: 0;
		pointer-events: none;
	}

	.sr-header__search:focus-within {
		position: absolute;
		left: 12px;
		right: 12px;
		top: 50%;
		transform: translateY(-50%);
		display: flex;
		background: var(--sr-white);
		border: 1px solid var(--sr-coral);
		border-radius: var(--sr-radius-pill);
		padding: 3px 3px 3px 12px;
		z-index: 60;
		box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
	}

	.sr-header__search:focus-within .sr-header__search-open {
		display: none;
	}

	.sr-header__search:focus-within .sr-header__search-input {
		position: static;
		width: 100%;
		height: auto;
		opacity: 1;
		pointer-events: auto;
		padding: 8px 6px 8px 0;
	}

	.sr-header__search:focus-within .sr-header__search-btn {
		position: static;
		width: 34px;
		height: 34px;
		opacity: 1;
		pointer-events: auto;
	}
}

/* ---------- 404 ---------- */
.sr-404 {
	padding: 48px 20px 72px;
}

.sr-404__inner {
	max-width: 680px;
	margin: 0 auto;
	text-align: center;
}

.sr-404__code {
	margin: 0;
	font-size: 72px;
	font-weight: 800;
	line-height: 1;
	color: var(--sr-coral-tint);
	-webkit-text-stroke: 2px var(--sr-coral);
}

.sr-404__title {
	margin: 10px 0 10px;
}

.sr-404__text {
	max-width: 520px;
	margin: 0 auto 24px;
	color: var(--sr-muted);
}

.sr-404__search {
	display: flex;
	gap: 8px;
	max-width: 460px;
	margin: 0 auto 32px;
}

.sr-404__search input[type="search"] {
	flex: 1;
	min-width: 0;
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-pill);
	padding: 10px 16px;
	font-family: var(--sr-font-body);
	font-size: 14px;
}

.sr-404__search input[type="search"]:focus {
	outline: 0;
	border-color: var(--sr-coral);
	box-shadow: 0 0 0 3px var(--sr-coral-tint);
}

.sr-404__subtitle {
	font-size: 1rem;
	margin: 0 0 12px;
}

.sr-404__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
}

.sr-404__chip {
	display: inline-block;
	padding: 8px 16px;
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-pill);
	background: var(--sr-white);
	color: var(--sr-ink);
	font-size: 13px;
	text-decoration: none;
	transition: border-color .12s, background .12s, color .12s;
}

.sr-404__chip:hover {
	border-color: var(--sr-coral);
	color: var(--sr-coral-text);
}

.sr-404__chip--home {
	background: var(--sr-coral);
	border-color: var(--sr-coral);
	color: #fff;
}

/* ---------- MENU-FINETUNING (desktop): compacte items, nooit wrappen ---------- */
@media (min-width: 1100px) {
	.sr-nav {
		flex-wrap: nowrap;
		min-width: 0;
		gap: 2px;
	}

	.sr-nav a,
	.sr-nav .sr-nav__trigger {
		font-size: 13px;
		padding: 8px 9px;
		white-space: nowrap;
	}

	/* Iets meer lucht tussen logo, menu en acties. */
	.sr-header__inner {
		gap: 16px;
	}
}

/* Keep the desktop hover target continuous through the header's bottom
   spacing (8px nav + 12px inner + border). Negative margin preserves the
   existing layout; the extra hit area lets the pointer reach the panel. */
@media (min-width: 1200px) {
	.sr-header .sr-nav__item--mega {
		padding-bottom: 24px;
		margin-bottom: -24px;
	}
}

/* Mega-paneel: duidelijk lós van de pagina (was visueel te vlak). */
.sr-mega {
	box-shadow: 0 18px 40px rgba(32, 40, 31, 0.16);
	border-bottom-left-radius: var(--sr-radius);
	border-bottom-right-radius: var(--sr-radius);
}

/* Schoenenreus — homepage
   Layout zonder ; typografie/kleur mét  (thema-conflicten). */

.sr-home {
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 20px 64px;
	font-family: var(--sr-font-body) ;
	color: var(--sr-ink) ;
}

/* ---------- Hero ---------- */
.sr-hero {
	position: relative;
	margin: 20px 0 44px;
	padding: 48px 36px 46px;
	background: var(--sr-coral) ;
	border-radius: var(--sr-radius-lg);
	overflow: hidden;
}

.sr-hero__inner {
	position: relative;
	z-index: 3;
	max-width: 60%;
}

.sr-hero__pill {
	display: inline-block;
	background: rgba(255, 255, 255, 0.18) ;
	color: #fff ;
	padding: 5px 14px;
	border-radius: var(--sr-radius-pill);
	font-size: 0.75rem ;
	margin-bottom: 14px;
}

.sr-hero__title {
	font-family: var(--sr-font-head) ;
	font-weight: 700 ;
	font-size: clamp(1.7rem, 3.4vw, 2.4rem) ;
	line-height: 1.06 ;
	color: #fff ;
	margin: 0 0 10px ;
	letter-spacing: -0.02em ;
}

.sr-hero__sub {
	font-size: 1rem ;
	line-height: 1.5 ;
	color: rgba(255, 255, 255, 0.92) ;
	margin: 0 0 20px ;
	max-width: 460px;
}

.sr-hero__search {
	display: flex;
	align-items: center;
	gap: 6px;
	background: #fff;
	border-radius: 14px;
	padding: 6px;
	max-width: 460px;
	box-shadow: 0 10px 30px rgba(35, 32, 38, 0.18);
}

.sr-hero__search input {
	flex: 1 1 auto;
	border: 0;
	outline: 0;
	background: transparent;
	font-family: var(--sr-font-body) ;
	font-size: 0.95rem ;
	color: var(--sr-ink) ;
	padding: 10px 12px;
	min-width: 0;
}

.sr-hero__search button {
	flex: 0 0 auto;
	border: 0;
	cursor: pointer;
	background: var(--sr-ink) ;
	color: #fff ;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.9rem ;
	border-radius: 10px;
	padding: 11px 20px;
	transition: transform 0.12s ease, filter 0.12s ease;
}

.sr-hero__search button:hover {
	filter: brightness(1.15);
	transform: translateY(-1px);
}

/* Cirkels + reuzenschoen */
.sr-hero__circle {
	position: absolute;
	border-radius: 50%;
	z-index: 1;
}

.sr-hero__circle--yellow {
	width: 130px;
	height: 130px;
	background: var(--sr-yellow) ;
	top: -28px;
	right: -24px;
	opacity: 0.92;
}

.sr-hero__circle--mint {
	width: 80px;
	height: 80px;
	background: var(--sr-mint) ;
	bottom: -34px;
	right: 96px;
	opacity: 0.85;
}

.sr-hero__circle--purple {
	width: 38px;
	height: 38px;
	background: var(--sr-purple) ;
	top: 64px;
	right: 184px;
	opacity: 0.9;
}

.sr-hero__mascot {
	position: absolute;
	right: 30px;
	bottom: 0;
	height: 224px;
	width: auto;
	z-index: 2;
	pointer-events: none;
}

/* ---------- Secties ---------- */
.sr-section {
	margin: 0 0 40px;
}

.sr-section__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 14px;
}

.sr-section__link {
	font-size: 0.78rem ;
	color: var(--sr-muted) ;
	text-decoration: none ;
	white-space: nowrap;
	transition: color 0.14s ease;
}

.sr-section__link:hover { color: var(--sr-coral) ; }

.sr-section__title {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 1.25rem ;
	color: var(--sr-ink) ;
	margin: 0 ;
	letter-spacing: -0.01em ;
}

/* ---------- Populaire types (vol-gekleurde tegels) ---------- */
.sr-types {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.sr-type {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 104px;
	padding: 16px 15px;
	border-radius: var(--sr-radius);
	text-decoration: none ;
	transition: transform 0.14s ease, box-shadow 0.14s ease;
}

.sr-type:hover {
	transform: translateY(-3px);
	box-shadow: var(--sr-shadow);
}

.sr-type__icon svg {
	width: 32px;
	height: 32px;
}

.sr-type__name {
	display: block;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.95rem ;
	text-transform: capitalize;
}

.sr-type__count {
	display: block;
	font-size: 0.72rem ;
	margin-top: 2px;
}

/* Kleur-rotatie types (vol, conform ontwerp) */
.sr-type--c0 { background: var(--sr-mint) ; }
.sr-type--c0, .sr-type--c0 .sr-type__icon { color: #04342C ; }
.sr-type--c0 .sr-type__name { color: #04342C ; }
.sr-type--c0 .sr-type__count { color: rgba(4, 52, 44, 0.7) ; }

.sr-type--c1 { background: var(--sr-cobalt) ; }
.sr-type--c1, .sr-type--c1 .sr-type__icon { color: #fff ; }
.sr-type--c1 .sr-type__name { color: #fff ; }
.sr-type--c1 .sr-type__count { color: rgba(255, 255, 255, 0.78) ; }

.sr-type--c2 { background: var(--sr-yellow) ; }
.sr-type--c2, .sr-type--c2 .sr-type__icon { color: #412402 ; }
.sr-type--c2 .sr-type__name { color: #412402 ; }
.sr-type--c2 .sr-type__count { color: rgba(65, 36, 2, 0.7) ; }

.sr-type--c3 { background: var(--sr-purple) ; }
.sr-type--c3, .sr-type--c3 .sr-type__icon { color: #fff ; }
.sr-type--c3 .sr-type__name { color: #fff ; }
.sr-type--c3 .sr-type__count { color: rgba(255, 255, 255, 0.78) ; }

/* ---------- Gender (getinte kaarten + icoon-blok) ---------- */
.sr-genders {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}

.sr-gender {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border-radius: var(--sr-radius);
	text-decoration: none ;
	background: var(--sr-surface-soft) ;
	transition: transform 0.14s ease, box-shadow 0.14s ease;
}

.sr-gender:hover {
	transform: translateY(-3px);
	box-shadow: var(--sr-shadow);
}

.sr-gender__icon {
	width: 48px;
	height: 48px;
	border-radius: 13px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	background: var(--sr-coral) ;
	color: #fff ;
}

.sr-gender__icon svg { width: 28px; height: 28px; }

.sr-gender__name {
	display: block;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 1rem ;
	color: var(--sr-ink) ;
	text-transform: capitalize;
}

.sr-gender__count {
	display: block;
	font-size: 0.72rem ;
	color: var(--sr-muted) ;
}

/* Per-gender tinten conform ontwerp */
.sr-gender--dames { background: var(--sr-coral-tint) ; }
.sr-gender--dames .sr-gender__icon { background: var(--sr-coral) ; }
.sr-gender--dames .sr-gender__name { color: var(--sr-coral-text) ; }
.sr-gender--dames .sr-gender__count { color: rgba(22, 67, 42, 0.7) ; }

.sr-gender--heren { background: #E6F1FB ; }
.sr-gender--heren .sr-gender__icon { background: var(--sr-cobalt) ; }
.sr-gender--heren .sr-gender__name { color: #042C53 ; }
.sr-gender--heren .sr-gender__count { color: rgba(4, 44, 83, 0.7) ; }

.sr-gender--kids { background: #FFF1D1 ; }
.sr-gender--kids .sr-gender__icon { background: var(--sr-yellow) ; color: #412402 ; }
.sr-gender--kids .sr-gender__name { color: #412402 ; }
.sr-gender--kids .sr-gender__count { color: rgba(65, 36, 2, 0.7) ; }

.sr-gender--uniseks { background: #EFE9FB ; }
.sr-gender--uniseks .sr-gender__icon { background: var(--sr-purple) ; color: #fff ; }
.sr-gender--uniseks .sr-gender__name { color: #2E1A57 ; }
.sr-gender--uniseks .sr-gender__count { color: rgba(46, 26, 87, 0.7) ; }

/* ---------- Deals-grid (hergebruikt .sr-card uit sr-listing.css) ---------- */
.sr-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}

.sr-empty { color: var(--sr-muted) ; font-size: 0.95rem ; }

/* ---------- Zo werkt (3 stappen) ---------- */
.sr-steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.sr-step {
	display: flex;
	gap: 12px;
	align-items: flex-start;
}

.sr-step__num {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.95rem ;
}

.sr-step__num--coral { background: var(--sr-coral) ; color: #fff ; }
.sr-step__num--mint { background: var(--sr-mint) ; color: #04342C ; }
.sr-step__num--yellow { background: var(--sr-yellow) ; color: #412402 ; }

.sr-step__title {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.95rem ;
	color: var(--sr-ink) ;
	margin-bottom: 2px;
}

.sr-step__text {
	font-size: 0.85rem ;
	line-height: 1.45 ;
	color: var(--sr-muted) ;
}

/* ---------- Tip van de reus ---------- */
.sr-tip {
	position: relative;
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	border-radius: var(--sr-radius-lg);
	background: var(--sr-coral-tint) ;
	overflow: hidden;
}

.sr-tip__mascot {
	position: absolute;
	right: 6px;
	bottom: -10px;
	height: 94px;
	width: auto;
	z-index: 1;
	pointer-events: none;
}

.sr-tip__icon {
	width: 44px;
	height: 44px;
	border-radius: 14px;
	background: var(--sr-coral) ;
	color: #fff ;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	position: relative;
	z-index: 2;
}

.sr-tip__icon svg { width: 24px; height: 24px; }

.sr-tip__body { position: relative; z-index: 2; flex: 1; }

.sr-tip__title {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.95rem ;
	color: var(--sr-coral-text) ;
	margin-bottom: 2px;
}

.sr-tip__text {
	font-size: 0.88rem ;
	line-height: 1.5 ;
	color: rgba(22, 67, 42, 0.85) ;
}

/* ---------- Merk-chips ---------- */
.sr-brandchips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sr-brandchip {
	display: inline-flex;
	align-items: center;
	padding: 8px 15px;
	border-radius: var(--sr-radius-pill);
	background: var(--sr-white) ;
	border: 1px solid var(--sr-line);
	font-family: var(--sr-font-body) ;
	font-size: 0.85rem ;
	color: var(--sr-ink) ;
	text-decoration: none ;
	transition: border-color 0.14s ease, color 0.14s ease, transform 0.14s ease;
}

.sr-brandchip:hover {
	border-color: var(--sr-coral);
	color: var(--sr-coral) ;
	transform: translateY(-2px);
}

.sr-brandchip--all {
	background: var(--sr-ink) ;
	border-color: var(--sr-ink);
	color: #fff ;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
}

.sr-brandchip--all:hover { color: #fff ; filter: brightness(1.2); }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.sr-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 860px) {
	.sr-types { grid-template-columns: repeat(2, 1fr); }
	.sr-genders { grid-template-columns: 1fr; }
	.sr-steps { grid-template-columns: 1fr; }
	.sr-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 620px) {
	.sr-hero { padding: 36px 20px; }
	.sr-hero__inner { max-width: 100%; }
	.sr-hero__mascot { display: none; }
	.sr-hero__circle--purple { display: none; }
}

@media (hover: none) {
	.sr-type:hover,
	.sr-gender:hover,
	.sr-brandchip:hover { transform: none; box-shadow: none; }
}

/* ---------------------------------------------------------------------
 * Logo-stijl iconen op een witte chip (zwarte outline leest op kleur).
 * ------------------------------------------------------------------- */
.sr-type__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 1px 0 rgba(35, 32, 38, 0.06);
}

.sr-type__icon svg { width: 34px; height: 34px; }
.sr-type__icon img.sr-cat-icon { width: 46px; height: 46px; object-fit: contain; display: block; border-radius: 20px; }

.sr-gender .sr-gender__icon {
	background: #fff ;
	border: 1px solid var(--sr-line);
}

.sr-gender__icon svg { width: 32px; height: 32px; }
.sr-gender__icon img.sr-cat-icon { width: 40px; height: 40px; object-fit: contain; display: block; }

/* ---------------------------------------------------------------------
 * Hero-zoekbalk: Elementor/thema-proof reset (zwarte CTA, geen randen).
 * ------------------------------------------------------------------- */
.sr-hero__search input,
.sr-hero__search button {
	-webkit-appearance: none ;
	appearance: none ;
	box-shadow: none ;
	background-image: none ;
	text-transform: none ;
	letter-spacing: normal ;
	min-height: 0 ;
	text-decoration: none ;
}

.sr-hero__search input {
	border: 0 ;
	background-color: transparent ;
	color: var(--sr-ink) ;
}

.sr-hero__search button {
	border: 0 ;
	border-radius: 10px ;
	background-color: var(--sr-ink) ;
	color: #fff ;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
}

/* ---------------------------------------------------------------------
 * UX-actie: "Tip van de reus"-box mocht z'n inhoud niet afkappen. De tekst
 * lijnt nu bovenaan, kan wrappen (min-width:0) en houdt ruimte vrij voor de
 * mascotte; op smal scherm verdwijnt de mascotte zodat alles past.
 * ------------------------------------------------------------------- */
.sr-tip {
	align-items: flex-start;
}

.sr-tip__body {
	min-width: 0;
	padding-right: 84px;
}

@media (max-width: 620px) {
	.sr-tip__mascot {
		display: none;
	}

	.sr-tip__body {
		padding-right: 0;
	}
}

/* ---------------------------------------------------------------------
 * Seizoensspotlight (homepage): inspiratie + navigatie naar een bestaande
 * type-pagina, wisselt per seizoen. Eigen koraal-huisstijl, witte tekst.
 * ------------------------------------------------------------------- */
.sr-spotlight {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 20px 22px;
	border-radius: var(--sr-radius-lg);
	background: linear-gradient(100deg, var(--sr-coral) 0%, #4C9D6C 100%);
	color: #fff;
	text-decoration: none;
	box-shadow: var(--sr-shadow);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.sr-spotlight:hover {
	transform: translateY(-2px);
}

.sr-spotlight__icon {
	flex: 0 0 auto;
	width: 64px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 16px;
}

.sr-spotlight__icon img {
	width: 46px;
	height: 46px;
}

.sr-spotlight__body {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.sr-spotlight__kicker {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.78rem ;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	opacity: 0.9;
}

.sr-spotlight__title {
	font-family: var(--sr-font-head) ;
	font-weight: 700 ;
	font-size: 1.3rem ;
	color: #fff ;
}

.sr-spotlight__sub {
	font-size: 0.9rem ;
	opacity: 0.92;
}

.sr-spotlight__cta {
	flex: 0 0 auto;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	background: rgba(255, 255, 255, 0.18);
	padding: 10px 16px;
	border-radius: 10px;
	white-space: nowrap;
}

@media (max-width: 620px) {
	.sr-spotlight {
		flex-wrap: wrap;
		gap: 12px;
	}

	.sr-spotlight__icon {
		width: 52px;
		height: 52px;
	}

	.sr-spotlight__icon img {
		width: 38px;
		height: 38px;
	}

	.sr-spotlight__title {
		font-size: 1.1rem ;
	}

	.sr-spotlight__cta {
		width: 100%;
		text-align: center;
	}
}

/* ---------------------------------------------------------------------
 * Inspiratie-elementen: hero-instaptegels, waarde-strip en de "Nu populair"-
 * carrousel met echte productfoto's. Maken van de hero een ontdek-platform.
 * ------------------------------------------------------------------- */

/* Hero: directe instaptegels onder de zoekbalk. */
.sr-hero__chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 18px;
}

.sr-hero__chips-label {
	font-size: 0.8rem ;
	color: rgba(255, 255, 255, 0.85) ;
	margin-right: 2px;
}

.sr-hero__chip {
	display: inline-block;
	padding: 7px 14px;
	border-radius: var(--sr-radius-pill);
	background: rgba(255, 255, 255, 0.16) ;
	color: #fff ;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.82rem ;
	text-decoration: none;
	transition: background 0.15s ease, transform 0.15s ease;
}

.sr-hero__chip:hover {
	background: #fff ;
	color: var(--sr-coral-text) ;
	transform: translateY(-1px);
}

/* Waarde-strip onder de hero. */
.sr-valuestrip {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 28px;
	margin: 0 0 38px;
	padding: 14px 20px;
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-lg);
}

.sr-valuestrip__item {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.9rem ;
	color: var(--sr-ink) ;
}

.sr-valuestrip__item svg {
	width: 20px;
	height: 20px;
	color: var(--sr-coral);
	flex: 0 0 auto;
}

@media (max-width: 720px) {
	.sr-valuestrip {
		flex-direction: column;
		gap: 12px;
	}
}

/* ---------------------------------------------------------------------
 * Hero met auto-slidende productcarrousel rechts (max 2 zichtbaar).
 * De hero wordt 2-koloms: tekst links, carrousel rechts (mascotte vervalt).
 * ------------------------------------------------------------------- */
.sr-hero {
	display: flex;
	align-items: center;
	gap: 30px;
}

.sr-hero__inner {
	flex: 1 1 auto;
	max-width: none;
}

.sr-herocar {
	flex: 0 0 32%;
	min-width: 0;
	position: relative;
	z-index: 3;
	overflow: hidden;
	padding: 10px 0;
}

.sr-herocar__label {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 10px;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.78rem ;
	color: #fff ;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.sr-herocar__pulse {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
	animation: sr-pulse 1.6s infinite;
}

@keyframes sr-pulse {
	0% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.6);
	}
	70% {
		box-shadow: 0 0 0 7px rgba(255, 255, 255, 0);
	}
	100% {
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
	}
}

.sr-herocar__track {
	display: flex;
	gap: 12px;
	transition: transform 0.45s ease;
	will-change: transform;
}

.sr-herocar__tile {
	flex: 0 0 calc(50% - 6px);
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	box-shadow: 0 8px 22px rgba(35, 32, 38, 0.16);
}

.sr-herocar__img {
	display: block;
	aspect-ratio: 1 / 1;
	background: var(--sr-coral-tint);
}

.sr-herocar__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.sr-herocar__meta {
	padding: 8px 10px 10px;
}

.sr-herocar__brand {
	display: block;
	font-size: 0.66rem ;
	color: var(--sr-muted) ;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.sr-herocar__title {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.8rem ;
	color: var(--sr-ink) ;
	line-height: 1.2 ;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sr-herocar__price {
	display: block;
	margin-top: 3px;
	font-family: var(--sr-font-head) ;
	font-weight: 700 ;
	font-size: 0.82rem ;
	color: var(--sr-coral-text) ;
}

@media (max-width: 860px) {
	.sr-hero {
		flex-direction: column;
		align-items: stretch;
		gap: 22px;
	}

	.sr-hero__inner {
		flex: none;
	}

	.sr-herocar {
		flex: none;
		width: 100%;
	}
}

/* Schoenenreus — listing. Tokens komen uit sr-tokens.css.
   Typografie/kleur met  tegen thema-conflicten; layout zonder. */

.sr-listing {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 16px 24px;
}

.sr-listing * {
	box-sizing: border-box;
}

/* Koraal-getinte header band (breadcrumb + titel + count-pill + actieve filter chips) */
.sr-listing__head {
	background: var(--sr-coral-tint);
	padding: 22px 24px 18px;
	border-radius: var(--sr-radius);
	margin: 16px 0 0;
}

.sr-crumbs {
	font-size: 0.78rem ;
	color: rgba(22, 67, 42, 0.7) ;
	margin: 0 0 8px;
	font-family: var(--sr-font-body) ;
}

.sr-crumbs a {
	color: rgba(22, 67, 42, 0.7) ;
	text-decoration: none ;
}

.sr-crumbs a:hover {
	text-decoration: underline ;
}

.sr-head__row {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 12px;
}

.sr-head__icon {
	width: 36px;
	height: 36px;
	border-radius: 12px;
	background: var(--sr-mint);
	color: var(--sr-mint-text) ;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: none;
}

.sr-head__icon svg {
	width: 20px;
	height: 20px;
}

.sr-head__icon--cobalt { background: var(--sr-cobalt); color: var(--sr-white) ; }
.sr-head__icon--yellow { background: var(--sr-yellow); color: var(--sr-yellow-text) ; }
.sr-head__icon--purple { background: var(--sr-purple); color: var(--sr-white) ; }

.sr-listing__title {
	margin: 0;
	font-size: 1.75rem ;
	font-weight: 700 ;
	letter-spacing: -0.02em ;
}

.sr-count {
	display: inline-block;
	background: var(--sr-white);
	color: var(--sr-coral) ;
	font-family: var(--sr-font-body) ;
	font-size: 0.78rem ;
	font-weight: 500 ;
	padding: 4px 12px;
	border-radius: var(--sr-radius-pill);
	box-shadow: inset 0 0 0 1px var(--sr-coral);
}

/* Actieve-filter chips bovenin de header band (koraal, met × om te verwijderen) */
.sr-active {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: center;
	font-size: 0.8rem;
}

.sr-active__label {
	font-size: 0.78rem ;
	color: rgba(22, 67, 42, 0.7) ;
	font-family: var(--sr-font-body) ;
	margin-right: 2px;
}

.sr-chip {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: var(--sr-coral);
	color: var(--sr-white) ;
	font-family: var(--sr-font-body) ;
	font-size: 0.74rem ;
	font-weight: 500 ;
	padding: 4px 9px 4px 11px;
	border-radius: var(--sr-radius-pill);
	text-decoration: none ;
	line-height: 1.2 ;
}

.sr-chip:hover {
	filter: brightness(0.96);
}

.sr-chip__x {
	display: inline-flex;
	width: 12px;
	height: 12px;
}

.sr-chip__x svg {
	width: 12px;
	height: 12px;
}

.sr-reset-link {
	margin-left: 8px;
	font-size: 0.78rem ;
	color: rgba(22, 67, 42, 0.7) ;
	text-decoration: underline ;
	font-family: var(--sr-font-body) ;
}

/* Sub-bar: stats + sortering, vlak onder de header band */
.sr-subbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 0 18px;
	flex-wrap: wrap;
}

.sr-subbar__stats {
	font-size: 0.8rem ;
	color: var(--sr-muted) ;
	font-family: var(--sr-font-body) ;
}

.sr-subbar__sort label {
	font-size: 0.8rem ;
	color: var(--sr-muted) ;
	margin-right: 6px;
}

.sr-subbar__sort select {
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-sm);
	padding: 6px 10px;
	font-family: var(--sr-font-body) ;
	font-size: 0.8rem ;
	color: var(--sr-ink) ;
	cursor: pointer;
}

/* Layout: sidebar + main */
.sr-listing__layout {
	display: grid;
	grid-template-columns: 240px 1fr;
	gap: 28px;
	align-items: start;
}

@media (max-width: 820px) {
	.sr-listing__layout {
		grid-template-columns: 1fr;
	}
}

/* Filter-sidebar */
.sr-filters {
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius);
	padding: 18px;
	font-size: 0.88rem ;
	position: sticky;
	top: 16px;
}

.sr-filters__title {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.95rem ;
	color: var(--sr-ink) ;
	margin-bottom: 14px;
}

.sr-filters__row {
	margin-bottom: 18px;
}

.sr-filters__row:last-child {
	margin-bottom: 0;
}

.sr-filters__label {
	display: block;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.75rem ;
	color: var(--sr-muted) ;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 9px;
}

/* Chips (merk/soort/gender) — verborgen checkbox + zichtbare pill */
.sr-fchips {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.sr-fchip {
	display: inline-flex;
	cursor: pointer;
}

.sr-fchip input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

.sr-fchip__txt {
	display: inline-block;
	padding: 5px 11px;
	border-radius: var(--sr-radius-pill);
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	font-family: var(--sr-font-body) ;
	font-size: 0.78rem ;
	color: var(--sr-ink) ;
	line-height: 1.2 ;
	transition: background .12s, border-color .12s, color .12s;
}

.sr-fchip:hover .sr-fchip__txt {
	border-color: var(--sr-coral);
}

.sr-fchip input:checked + .sr-fchip__txt {
	background: var(--sr-coral);
	border-color: var(--sr-coral);
	color: var(--sr-white) ;
	font-weight: 500 ;
}

.sr-fchip input:focus-visible + .sr-fchip__txt {
	outline: 2px solid var(--sr-coral);
	outline-offset: 2px;
}

/* Maat — chip-grid (vaste kolommen, gelijke vierkante chips) */
.sr-fgrid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 6px;
}

.sr-fgrid .sr-fchip {
	display: block;
}

.sr-fgrid .sr-fchip__txt {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 4px 6px;
	border-radius: var(--sr-radius-sm);
	text-align: center;
	white-space: nowrap;
	font-size: 0.75rem ;
	line-height: 1.1 ;
}

/* Kleur — swatches (gekleurde rondjes, koraal-ring bij selectie) */
.sr-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sr-swatch {
	display: inline-flex;
	cursor: pointer;
}

.sr-swatch input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

.sr-swatch__dot {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	display: inline-block;
	box-shadow: inset 0 0 0 1px rgba(35, 32, 38, 0.12);
	transition: box-shadow .12s, transform .12s;
}

.sr-swatch__dot--light {
	box-shadow: inset 0 0 0 1px var(--sr-line);
}

.sr-swatch__dot--multi {
	background: conic-gradient(#2E7D4E, #FFC53D, #1FC4A0, #3D6CF0, #7C9A4E, #FF6A4D, #2E7D4E);
}

.sr-swatch:hover .sr-swatch__dot {
	transform: scale(1.08);
}

.sr-swatch input:checked + .sr-swatch__dot {
	box-shadow: 0 0 0 2px var(--sr-coral);
}

.sr-swatch input:focus-visible + .sr-swatch__dot {
	box-shadow: 0 0 0 2px var(--sr-coral), 0 0 0 4px rgba(255, 106, 77, 0.3);
}

/* Prijs — min/max met €-prefix */
.sr-price-row {
	display: flex;
	align-items: center;
	gap: 6px;
}

.sr-price-cur {
	color: var(--sr-muted) ;
	font-size: 0.85rem ;
}

.sr-price-sep {
	color: var(--sr-muted) ;
}

.sr-filters input[type="number"] {
	width: 100%;
	min-width: 0;
	padding: 7px 9px;
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-sm);
	font-family: var(--sr-font-body) ;
	font-size: 0.82rem ;
}

/* Acties onderaan de filter-kaart */
.sr-filters__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 4px;
}

.sr-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--sr-coral);
	color: var(--sr-white) ;
	border: 0;
	border-radius: var(--sr-radius-sm);
	padding: 9px 16px;
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	cursor: pointer;
	text-decoration: none ;
	font-size: 0.85rem ;
}

.sr-btn:hover {
	filter: brightness(0.96);
}

/* Productgrid */
.sr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 14px;
}

.sr-card {
	display: flex;
	flex-direction: column;
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius);
	overflow: hidden;
	text-decoration: none ;
	color: var(--sr-ink) ;
	transition: border-color .15s, transform .15s, box-shadow .15s;
	position: relative;
}

.sr-card:hover {
	border-color: var(--sr-coral);
	box-shadow: var(--sr-shadow);
	transform: translateY(-2px);
}

.sr-card__status {
	position: absolute;
	top: 9px;
	left: 9px;
	z-index: 1;
}

.sr-card__img {
	height: 200px;
	padding: 10%;
	background: var(--sr-surface-soft);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	margin: 8px 8px 0;
	overflow: hidden;
}

.sr-card__img img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	mix-blend-mode: multiply;
}

.sr-card__body {
	padding: 10px 12px 14px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}

.sr-card__brand {
	font-size: 0.75rem ;
	color: var(--sr-muted) ;
	line-height: 1.2 ;
}

.sr-card__title {
	margin: 0;
	font-family: var(--sr-font-head) ;
	font-size: 0.95rem ;
	font-weight: 600 ;
	line-height: 1.25 ;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.5em;
}

.sr-card__priceline {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: auto;
}

.sr-card__price {
	font-family: var(--sr-font-head) ;
	font-size: 1.05rem ;
	font-weight: 700 ;
	line-height: 1.1 ;
}

.sr-card__from {
	display: block;
	font-size: 0.74rem ;
	font-weight: 400 ;
	color: var(--sr-muted) ;
	margin-bottom: 1px;
	line-height: 1 ;
}

.sr-card__tomax {
	display: block;
	font-size: 0.74rem ;
	color: var(--sr-muted) ;
	font-weight: 400 ;
	margin-top: 2px;
	line-height: 1 ;
}

.sr-card__was {
	display: block;
	font-size: 0.75rem ;
	color: var(--sr-muted) ;
	font-weight: 400 ;
	text-decoration: line-through;
	margin-top: 2px;
	line-height: 1 ;
}

.sr-card__sizes {
	display: flex;
	flex-wrap: wrap;
	gap: 3px;
	margin-top: 4px;
}

.sr-card__sizes .sr-size-chip {
	background: var(--sr-bg);
	border: 1px solid var(--sr-line);
	padding: 2px 6px;
	border-radius: 5px;
	font-size: 0.75rem ;
	color: var(--sr-muted) ;
	font-family: var(--sr-font-body) ;
}

/* Paginatie */
.sr-pagination {
	margin-top: 28px;
	display: flex;
	justify-content: center;
}

.sr-pagination ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	padding: 0;
	margin: 0;
}

.sr-pagination a,
.sr-pagination span {
	display: inline-block;
	padding: 6px 12px;
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-sm);
	text-decoration: none ;
	color: var(--sr-ink) ;
	font-family: var(--sr-font-body) ;
	font-size: 0.85rem ;
}

.sr-pagination a:hover {
	border-color: var(--sr-coral);
	color: var(--sr-coral) ;
}

.sr-pagination .current {
	background: var(--sr-coral);
	color: var(--sr-white) ;
	border-color: var(--sr-coral);
	font-weight: 500 ;
}

/* Lege resultaten */
.sr-empty {
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-lg);
	padding: 40px 24px 32px;
	text-align: center;
}

.sr-empty__mascot {
	height: 132px;
	width: auto;
	margin-bottom: 10px;
}

.sr-empty__icon {
	width: 76px;
	height: 76px;
	border-radius: 50%;
	background: var(--sr-mint-tint);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
	color: #0F6E56 ;
}

.sr-empty__icon svg {
	width: 36px;
	height: 36px;
}

.sr-empty h2 {
	font-family: var(--sr-font-head) ;
	font-size: 1.15rem ;
	font-weight: 600 ;
	margin: 0 0 8px ;
	color: var(--sr-ink) ;
	letter-spacing: -0.01em ;
}

.sr-empty p {
	font-size: 0.88rem ;
	color: var(--sr-muted) ;
	margin: 0 auto 16px ;
	max-width: 400px;
	line-height: 1.55 ;
}

.sr-empty strong {
	color: var(--sr-ink) ;
}

/* Mobile */
@media (max-width: 600px) {
	.sr-listing__head {
		padding: 16px 18px 14px;
		border-radius: var(--sr-radius);
	}

	.sr-listing__title {
		font-size: 1.4rem ;
	}

	.sr-head__icon {
		width: 28px;
		height: 28px;
		border-radius: 9px;
	}

	.sr-head__icon svg {
		width: 16px;
		height: 16px;
	}

	.sr-subbar {
		padding: 12px 4px 16px;
	}

	.sr-filters {
		position: static;
	}

	.sr-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
	}

	.sr-card__img {
		height: 140px;
		margin: 6px 6px 0;
	}

	.sr-fgrid {
		grid-template-columns: repeat(5, 1fr);
	}

	.sr-card__body {
		padding: 8px 10px 12px;
	}
}

/* ---------------------------------------------------------------------
 * Hover / interactie — premium-gevoel (zachte transities, koraal-accent)
 * ------------------------------------------------------------------- */

/* Productkaart: subtiele foto-inzoom bovenop de bestaande lift */
.sr-card__img img {
	transition: transform .25s ease;
}

.sr-card:hover .sr-card__img img {
	transform: scale(1.04);
}

/* Sorteer-dropdown */
.sr-subbar__sort select {
	transition: border-color .15s;
	cursor: pointer;
}

.sr-subbar__sort select:hover {
	border-color: var(--sr-coral);
}

/* Reset/wissen-links */
.sr-reset-link {
	transition: color .15s;
}

.sr-reset-link:hover {
	color: var(--sr-coral) ;
}

@media (hover: none) {
	.sr-card:hover {
		transform: none;
		box-shadow: none;
	}
	.sr-card:hover .sr-card__img img {
		transform: none;
	}
}

/* ---------------------------------------------------------------------
 * Reset tegen thema-/Elementor-bleed op onze eigen form-controls.
 * Elementor/themes stylen vaak input/select/button site-breed; deze regels
 * houden onze filters en de hero-zoekbalk strak en consistent.
 * ------------------------------------------------------------------- */
.sr-filters input,
.sr-filters select,
.sr-filters button,
.sr-subbar__sort select,
.sr-hero__search input,
.sr-hero__search button {
	-webkit-appearance: none ;
	-moz-appearance: none ;
	appearance: none ;
	box-shadow: none ;
	margin: 0 ;
	min-height: 0 ;
	max-width: none ;
	letter-spacing: normal ;
	text-transform: none ;
	line-height: 1.2 ;
	font-family: var(--sr-font-body) ;
}

.sr-hero__search input {
	border: 0 ;
	background: transparent ;
}

.sr-filters input[type="number"] {
	background: var(--sr-white) ;
}

/* Webkit search-velden: verwijder de eigen clear/decoration-knopjes. */
.sr-filters input[type="search"]::-webkit-search-decoration,
.sr-filters input[type="search"]::-webkit-search-cancel-button,
.sr-hero__search input[type="search"]::-webkit-search-decoration,
.sr-hero__search input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
}

.sr-filters input:focus,
.sr-filters select:focus,
.sr-subbar__sort select:focus,
.sr-hero__search input:focus {
	outline: none ;
	box-shadow: none ;
}

.sr-filters input:focus-visible,
.sr-subbar__sort select:focus-visible {
	outline: 2px solid var(--sr-coral) ;
	outline-offset: 1px;
}

/* Eigen chevron terug op de sorteer-select (appearance:none haalt 'm weg). */
.sr-subbar__sort select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236B6770' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") ;
	background-repeat: no-repeat ;
	background-position: right 10px center ;
	background-size: 14px ;
	padding-right: 30px ;
}

/* ---------------------------------------------------------------------
 * Merk-filter: "+ N meer merken"-uitklap.
 * ------------------------------------------------------------------- */
.sr-fmore {
	margin-top: 8px;
}

.sr-fmore__toggle {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	list-style: none;
	font-family: var(--sr-font-body) ;
	font-size: 0.78rem ;
	font-weight: 600 ;
	color: var(--sr-coral) ;
	padding: 4px 2px;
	user-select: none;
}

.sr-fmore__toggle::-webkit-details-marker {
	display: none;
}

.sr-fmore__toggle:hover {
	text-decoration: underline;
}

.sr-fmore[open] .sr-fmore__toggle {
	margin-bottom: 8px;
}

.sr-fmore__chips {
	margin-top: 4px;
}

/* ---------------------------------------------------------------------
 * Productkaart-afbeelding: vaste hoogte op desktop voor nette uitlijning.
 * ------------------------------------------------------------------- */
@media (min-width: 861px) {
	.sr-card__img img {
		height: 180px;
	}
}

/* ---------------------------------------------------------------------
 * Merken-overzicht (/merken/) — alfabetisch.
 * ------------------------------------------------------------------- */
.sr-brands-index__intro {
	margin: 8px 0 0;
	color: var(--sr-muted);
	font-size: 0.95rem;
	line-height: 1.5;
	max-width: 60ch;
}

.sr-brands-az {
	display: flex;
	flex-direction: column;
	gap: 22px;
	padding: 4px 0 8px;
}

.sr-brands-az__letter {
	font-family: var(--sr-font-head);
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--sr-coral);
	margin: 0 0 10px;
	padding-bottom: 6px;
	border-bottom: 1px solid var(--sr-line);
}

.sr-brandchip__n {
	color: var(--sr-muted);
	font-size: 0.78em;
	margin-left: 5px;
}

/* -------------------------------------------------------------------------
 * Interne SEO-crosslinks onder de listing (SR_Listing::render_crosslinks).
 * Links naar indexeerbare combinatie-pagina's, als pill-chips in huisstijl.
 * ---------------------------------------------------------------------- */
.sr-crosslinks {
	margin-top: 32px;
	padding-top: 24px;
	border-top: 1px solid var(--sr-line);
}
.sr-crosslinks__group {
	margin-bottom: 20px;
}
.sr-crosslinks__group:last-child {
	margin-bottom: 0;
}
.sr-crosslinks__title {
	font-family: var(--sr-font-head);
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--sr-ink);
	margin: 0 0 10px;
}
.sr-crosslinks__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.sr-crosslinks__list li {
	margin: 0;
}
.sr-crosslink {
	display: inline-block;
	padding: 7px 14px;
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-pill);
	background: var(--sr-white);
	color: var(--sr-ink);
	font-size: 0.875rem;
	line-height: 1.2;
	text-decoration: none;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}
.sr-crosslink:hover,
.sr-crosslink:focus-visible {
	border-color: var(--sr-coral);
	color: var(--sr-coral-text);
	background: var(--sr-coral-tint);
}

/* ---------------------------------------------------------------------
 * UX-actie: prijs op de productkaart altijd op één regel. In de smalle
 * 2-koloms grid mocht de "X shops"-badge het bedrag niet meer opbreken
 * ("vanaf €" boven "30,52"). De badge wijkt nu desnoods naar een nieuwe regel.
 * ------------------------------------------------------------------- */
.sr-card__priceline {
	flex-wrap: wrap;
	row-gap: 4px;
}

.sr-card__priceline > div {
	min-width: 0;
}

.sr-card__price {
	white-space: nowrap;
}

/* ---------------------------------------------------------------------
 * UX-actie #4: off-canvas filterpaneel op mobiel + "Filteren"-knop.
 * Desktop blijft ongewijzigd; alleen onder 820px wordt de zijbalk een paneel
 * achter een knop, zodat de producten direct in beeld staan.
 * ------------------------------------------------------------------- */
.sr-listing .sr-filter-toggle,
.sr-listing .sr-filters-close,
.sr-listing .sr-filters-overlay {
	display: none ;
}

@media (max-width: 820px) {
	.sr-listing .sr-filter-toggle {
		display: inline-flex ;
		align-items: center;
		gap: 8px;
		margin: 4px 0 14px;
		padding: 0 16px;
		min-height: 44px;
		border: 1px solid var(--sr-line) ;
		border-radius: 10px;
		background: var(--sr-white) ;
		font-family: var(--sr-font-head) ;
		font-weight: 600 ;
		color: var(--sr-ink) ;
		cursor: pointer;
	}

	.sr-listing .sr-filter-toggle svg {
		width: 18px;
		height: 18px;
	}

	.sr-listing__sidebar {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: min(86vw, 360px);
		max-width: none;
		margin: 0;
		padding: 16px 16px 32px;
		background: var(--sr-white);
		box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
		overflow-y: auto;
		z-index: 1001;
		transform: translateX(-100%);
		transition: transform 0.25s ease;
	}

	.sr-listing.is-filters-open .sr-listing__sidebar {
		transform: translateX(0);
	}

	.sr-listing .sr-filters-overlay {
		position: fixed;
		inset: 0;
		background: rgba(0, 0, 0, 0.45);
		z-index: 1000;
	}

	.sr-listing.is-filters-open .sr-filters-overlay {
		display: block ;
	}

	.sr-listing .sr-filters-close {
		display: block ;
		margin: -4px 0 6px auto;
		width: 40px;
		height: 40px;
		border: 0;
		background: transparent;
		font-size: 28px;
		line-height: 1;
		color: var(--sr-ink);
		cursor: pointer;
	}
}

/* ---------------------------------------------------------------------
 * Hoofdcategorie-navigatie (Kees Smit-logica): subcategorie-tegels op de
 * hub-pagina's en "Meer in {hoofdcategorie}" op soort-pagina's.
 * ------------------------------------------------------------------- */
.sr-familynav {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 10px 0 6px;
}

.sr-familynav__label {
	font-family: var(--sr-font-head) ;
	font-weight: 600 ;
	font-size: 0.85rem ;
	color: var(--sr-muted) ;
	margin-right: 4px;
}

.sr-familynav__count {
	opacity: 0.65;
	font-size: 0.78em;
}

/* Padcontext-chips: de selectie van de landingspagina, aangevinkt weergegeven. */
.sr-fchip--ctx {
	text-decoration: none;
}

.sr-fchip--ctx .sr-fchip__txt {
	background: var(--sr-coral);
	border-color: var(--sr-coral);
	color: var(--sr-white) ;
	font-weight: 500 ;
}

.sr-fchip--ctx .sr-fchip__x {
	display: inline-block;
	margin-left: 6px;
	opacity: .85;
}

.sr-fchip--ctx:hover .sr-fchip__txt,
.sr-fchip--ctx:focus-visible .sr-fchip__txt {
	opacity: .88;
}

/* ---------- Mobiel: compacter boven de vouw ---------- */
@media (max-width: 820px) {
	.sr-crumbs {
		margin-bottom: 4px;
		font-size: 12px;
		white-space: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* Intro inkorten tot 3 regels: de tekst blijft (SEO), maar de producten
	   komen merkbaar hoger in beeld. */
	.sr-listing > p {
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
		margin: 8px 0 12px;
	}

	/* Subcategorie-chips: één scrollbare regel in plaats van een blok. */
	.sr-familynav {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		gap: 6px;
		padding-bottom: 6px;
	}

	.sr-familynav .sr-crosslink {
		flex: none;
		white-space: nowrap;
	}
}

/* ---------- Introtekst: eigen stijl (anders lekt het themafont erin) ---------- */
.sr-listing > p {
	font-family: var(--sr-font-body) ;
	font-size: 0.92rem ;
	line-height: 1.65 ;
	color: var(--sr-muted) ;
	max-width: 720px;
	margin: 10px 0 18px;
}

/* Kaarttitels: vaste regelhoogte en nette afkapping op twee regels, zodat
   alle kaarten in een rij even hoog ogen. */
.sr-card__title {
	line-height: 1.35 ;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: calc(2 * 1.35em);
}

/* ---------- HOOFDCATEGORIE-HUB ---------- */
.sr-hub__section {
	margin: 6px 0 28px;
}

.sr-hub__h2 {
	font-size: 1.15rem ;
	font-weight: 700 ;
	color: var(--sr-ink) ;
	margin: 0 0 12px;
}

.sr-hub__alle {
	margin: 8px 0 4px;
}

.sr-hub-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
	gap: 12px;
}

.sr-hub-tile {
	display: flex;
	flex-direction: column;
	background: var(--sr-white);
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius);
	overflow: hidden;
	text-decoration: none;
	transition: box-shadow .15s, transform .15s, border-color .15s;
}

.sr-hub-tile:hover {
	border-color: var(--sr-coral);
	box-shadow: 0 10px 24px rgba(0, 0, 0, .07);
	transform: translateY(-2px);
}

.sr-hub-tile__media {
	display: block;
	aspect-ratio: 4 / 3;
	background: var(--sr-coral-tint);
}

.sr-hub-tile__media picture,
.sr-hub-tile__media img {
	width: 100%;
	height: 100%;
}

.sr-hub-tile__media img {
	object-fit: contain;
	padding: 10px;
	box-sizing: border-box;
}

.sr-hub-tile__body {
	padding: 10px 12px 12px;
}

.sr-hub-tile__label {
	display: block;
	font-weight: 700;
	font-size: 0.95rem;
	color: var(--sr-ink);
}

.sr-hub-tile__meta {
	display: block;
	margin-top: 2px;
	font-size: 0.78rem;
	color: var(--sr-muted);
}

.sr-hub-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.sr-hub-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 13px;
	border: 1px solid var(--sr-line);
	border-radius: var(--sr-radius-pill);
	background: var(--sr-white);
	font-size: 0.85rem;
	color: var(--sr-ink);
	text-decoration: none;
}

.sr-hub-chip:hover {
	border-color: var(--sr-coral);
	color: var(--sr-coral-text);
}

.sr-hub-chip__n {
	font-size: 0.78em;
	color: var(--sr-muted);
}

@media (max-width: 820px) {
	.sr-hub-tiles {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}
}

/* -------------------------------------------------------------------------
 * Info-pagina's (Over ons, Hoe we vergelijken, Privacy, Contact).
 * Rustige lees-typografie in huisstijl; geladen via SR_Info.
 * ---------------------------------------------------------------------- */
.sr-info {
	background: var(--sr-bg);
}
.sr-info__inner {
	max-width: 720px;
	margin: 0 auto;
	padding: 56px 20px 72px;
	font-family: var(--sr-font-body);
	color: var(--sr-ink);
	line-height: 1.7;
	font-size: 16px;
}
.sr-info__title {
	font-family: var(--sr-font-head);
	font-weight: 700;
	font-size: clamp(28px, 4vw, 40px);
	line-height: 1.15;
	color: var(--sr-ink);
	margin: 0 0 20px;
}
.sr-info__lead {
	font-size: 18px;
	color: var(--sr-ink);
	margin: 0 0 28px;
}
.sr-info__inner h2 {
	font-family: var(--sr-font-head);
	font-weight: 600;
	font-size: 21px;
	line-height: 1.25;
	color: var(--sr-ink);
	margin: 36px 0 10px;
}
.sr-info__inner p {
	margin: 0 0 16px;
}
.sr-info__inner ul {
	margin: 0 0 16px;
	padding-left: 22px;
}
.sr-info__inner li {
	margin: 0 0 8px;
}
.sr-info__inner a {
	color: var(--sr-coral-text);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.sr-info__inner a:hover,
.sr-info__inner a:focus-visible {
	color: var(--sr-coral);
}

:root{--tgb-green:var(--sr-coral,#2E7D4E);--tgb-green-tint:var(--sr-coral-tint,#E7F2EA);--tgb-green-text:var(--sr-coral-text,#16432A);--tgb-ink:var(--sr-ink,#20281F);--tgb-muted:var(--sr-muted,#66705F);--tgb-line:var(--sr-line,#E5EAE0);--tgb-bg:var(--sr-bg,#F8FAF6);--tgb-radius:var(--sr-radius-lg,16px);--tgb-shadow:var(--sr-shadow,0 6px 20px rgba(35,32,38,.08));--tgb-head:var(--sr-font-head,"Poppins",system-ui,sans-serif);--tgb-body:var(--sr-font-body,"Inter",system-ui,sans-serif)}
/* — kaarten — */
.tgb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:clamp(1.1rem,2.2vw,1.75rem)}
.tgb-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--tgb-line);border-radius:var(--tgb-radius);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.tgb-card:hover{transform:translateY(-4px);box-shadow:var(--tgb-shadow)}
.tgb-card__media{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--tgb-green-tint)}
.tgb-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.tgb-card:hover .tgb-card__media img{transform:scale(1.05)}
.tgb-card__body{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.2rem 1.35rem;font-family:var(--tgb-body)}
.tgb-card__cat{align-self:flex-start;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--tgb-green-text);background:var(--tgb-green-tint);padding:.3em .8em;border-radius:999px}
.tgb-card__cat:hover{background:var(--tgb-green);color:#fff}
.tgb-card__title{font-size:1.08rem;line-height:1.35;margin:.1rem 0 0;font-family:var(--tgb-head);font-weight:600}
.tgb-card__title a{color:var(--tgb-ink);text-decoration:none}
.tgb-card__title a:hover{color:var(--tgb-green)}
.tgb-card__excerpt{margin:0;font-size:.9rem;line-height:1.55;color:var(--tgb-muted)}
.tgb-card__ph{display:block;width:100%;height:100%;background:linear-gradient(135deg,var(--tgb-green-tint),#fff)}
.tgb-grid__empty{font-family:var(--tgb-body);color:var(--tgb-muted)}
/* — homepage-sectie — */
.sr-section--blog .tgb-grid{margin-top:.5rem}
/* — blogoverzicht — */
.tgb-blogindex{max-width:1240px;margin:0 auto;padding:24px 20px 72px;font-family:var(--tgb-body)}
.tgb-bloghero{position:relative;overflow:hidden;background:var(--tgb-green);border-radius:calc(var(--tgb-radius) + 6px);padding:clamp(2.2rem,5vw,3.5rem) clamp(1.4rem,4vw,3rem);margin-bottom:clamp(1.6rem,3vw,2.5rem);color:#fff}
.tgb-bloghero__inner{position:relative;z-index:1;max-width:760px}
.tgb-bloghero__kicker{display:inline-block;background:rgba(255,255,255,.16);border-radius:999px;padding:.35em 1em;font-size:.78rem;letter-spacing:.03em;margin-bottom:1rem}
.tgb-bloghero__title{font-family:var(--tgb-head);font-weight:700;font-size:clamp(1.9rem,4.5vw,3rem);line-height:1.12;margin:0 0 .5rem;color:#fff}
.tgb-bloghero__lead{font-size:1.05rem;line-height:1.6;margin:0 0 1.4rem;color:rgba(255,255,255,.92);max-width:560px}
.tgb-bloghero__chips{display:flex;flex-wrap:wrap;gap:.5rem}
.tgb-bloghero__chip{background:rgba(255,255,255,.14);color:#fff;text-decoration:none;border-radius:999px;padding:.45em 1.1em;font-size:.88rem;font-weight:500;transition:background .15s ease}
.tgb-bloghero__chip:hover{background:rgba(255,255,255,.28);color:#fff}
.tgb-bloghero__chip.is-active{background:#fff;color:var(--tgb-green-text)}
.tgb-bloghero__circle{position:absolute;border-radius:50%;opacity:.9}
.tgb-bloghero__circle--yellow{width:190px;height:190px;background:var(--sr-yellow,#FFC53D);top:-70px;right:-40px}
.tgb-bloghero__circle--mint{width:120px;height:120px;background:var(--sr-mint,#1FC4A0);bottom:-50px;right:180px}
/* — artikel — */
.tgb-article{max-width:1240px;margin:0 auto;padding:24px 20px 72px;font-family:var(--tgb-body);color:var(--tgb-ink)}
.tgb-article__inner{max-width:780px;margin:0 auto}
.tgb-crumbs{font-size:.85rem;color:var(--tgb-muted);margin-bottom:1.2rem;display:flex;flex-wrap:wrap;gap:.45em;align-items:center}
.tgb-crumbs a{color:var(--tgb-muted);text-decoration:none}
.tgb-crumbs a:hover{color:var(--tgb-green);text-decoration:underline}
.tgb-article__title{font-family:var(--tgb-head);font-weight:700;font-size:clamp(1.7rem,3.8vw,2.5rem);line-height:1.18;margin:0 0 .9rem;color:var(--tgb-ink)}
.tgb-article__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;margin-bottom:1.6rem;font-size:.9rem;color:var(--tgb-muted)}
.tgb-chip{font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--tgb-green-text);background:var(--tgb-green-tint);padding:.35em .9em;border-radius:999px}
.tgb-chip:hover{background:var(--tgb-green);color:#fff}
.tgb-article__metaitem{display:inline-flex;align-items:center;gap:.35em}
.tgb-article__metaitem::before{content:"·";color:var(--tgb-line)}
.tgb-article__hero{margin:0 0 2rem;border-radius:var(--tgb-radius);overflow:hidden;box-shadow:var(--tgb-shadow)}
.tgb-article__hero img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.tgb-summary{background:var(--tgb-green-tint);border:1px solid color-mix(in srgb,var(--tgb-green,#2E7D4E) 25%,transparent);border-radius:var(--tgb-radius);padding:1.25rem 1.5rem;margin:1.6rem 0 2.2rem}
.tgb-summary__label{display:inline-flex;align-items:center;gap:.45em;font-family:var(--tgb-head);font-weight:700;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--tgb-green-text);margin:0 0 .55rem}
.tgb-summary__label::before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:1.35em;height:1.35em;border-radius:50%;background:var(--tgb-green);color:#fff;font-size:.85em}
.tgb-summary p:not(.tgb-summary__label){margin:0;font-size:.98rem;line-height:1.65;color:var(--tgb-green-text)}
.tgb-summary p+p{margin-top:.7em}
.tgb-article__body{font-size:1.05rem;line-height:1.75}
.tgb-article__body p{margin:0 0 1.15em}
.tgb-article__body a{color:var(--tgb-green);text-decoration:underline;text-underline-offset:2px}
.tgb-article__body a:hover{color:var(--tgb-green-text)}
.tgb-article__body h2{font-family:var(--tgb-head);font-weight:600;font-size:1.45rem;line-height:1.3;margin:2.3rem 0 .8rem;color:var(--tgb-ink)}
.tgb-article__body h3{font-family:var(--tgb-head);font-weight:600;font-size:1.15rem;margin:1.7rem 0 .6rem}
.tgb-article__body ul,.tgb-article__body ol{margin:0 0 1.15em;padding-left:1.4em}
.tgb-article__body li{margin-bottom:.4em}
.tgb-article__body table{width:100%;border-collapse:separate;border-spacing:0;margin:1.6rem 0;font-size:.93rem;line-height:1.5;border:1px solid var(--tgb-line);border-radius:var(--sr-radius,14px);overflow:hidden}
.tgb-article__body th,.tgb-article__body td{padding:.65em .9em;text-align:left;vertical-align:top;border-bottom:1px solid var(--tgb-line)}
.tgb-article__body th{background:var(--tgb-green-tint);color:var(--tgb-green-text);font-family:var(--tgb-head);font-weight:600;font-size:.85rem}
.tgb-article__body tr:last-child td{border-bottom:0}
.tgb-article__body tr:nth-child(even) td{background:var(--tgb-bg)}
@media (max-width:640px){.tgb-article__body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}
.tgb-related{max-width:1240px;margin:3.5rem auto 0;padding-top:2.5rem;border-top:1px solid var(--tgb-line)}
.tgb-related__head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}
.tgb-related__title{font-family:var(--tgb-head);font-weight:700;font-size:1.5rem;margin:0}
.tgb-related__link{font-family:var(--tgb-body);font-size:.92rem;font-weight:600;color:var(--tgb-green);text-decoration:none}
.tgb-related__link:hover{text-decoration:underline}
#sr-promo{position:fixed;inset:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(20,18,16,.62);cursor:pointer;opacity:0;transition:opacity .18s ease}
#sr-promo[hidden]{display:none}
#sr-promo.is-open{opacity:1}
#sr-promo .sr-promo__card{width:min(480px,100%);max-height:92vh;overflow-y:auto;background:#fff;border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.32);transform:translateY(8px);transition:transform .18s ease}
#sr-promo.is-open .sr-promo__card{transform:none}
#sr-promo .sr-promo__media{display:block;background:#f4f2ec;padding:18px;text-align:center}
#sr-promo .sr-promo__media img,#sr-promo .sr-promo__media picture{display:block;margin:0 auto;width:auto;max-width:100%;max-height:min(360px,40vh);height:auto;object-fit:contain}
#sr-promo .sr-promo__body{display:block;padding:20px 24px 26px;text-align:center}
#sr-promo .sr-promo__kicker{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#FF6A4D}
#sr-promo .sr-promo__title{display:block;margin:7px 0;font-size:20px;line-height:1.3;font-weight:700;color:#232026}
#sr-promo .sr-promo__price{display:block;font-size:15px;color:#6B6770}
#sr-promo .sr-promo__cta{display:block;margin:18px auto 0;max-width:100%;background:#FF6A4D;color:#fff;font-weight:700;font-size:16px;padding:14px 18px;border-radius:10px}
#sr-promo .sr-promo__hint{display:block;margin-top:10px;font-size:12px;color:#9b97a0}
@media (max-width:480px){#sr-promo .sr-promo__body{padding:16px 18px 20px}#sr-promo .sr-promo__title{font-size:18px}#sr-promo .sr-promo__media{padding:14px}}
@media (prefers-reduced-motion:reduce){#sr-promo,#sr-promo .sr-promo__card{transition:none}}

/* WASDROOG-COMBINATIE.NL — shared design system
   This file is the only active stylesheet. Edit tokens and components here.
   Article topics never get their own width, table, label or button rules. */

/* 1. Design values: one source for every page and component. */

@font-face { font-family: DM; src: url("/assets/dm-sans.woff2") format("woff2"); font-weight: 100 1000; font-display: swap; }

@font-face { font-family: Manrope; src: url("/assets/manrope.woff2") format("woff2"); font-weight: 200 800; font-display: swap; }

:root {
  --font-body: DM, Arial, sans-serif;
  --font-heading: Manrope, DM, Arial, sans-serif;
  --blue: #195cff; --blue-hover: #0e48d7; --dark: #142342;
  --muted: #526176; --quiet: #63718a; --line: #dce5ef;
  --pale: #f3f6fc; --lime: #d9f79b; --white: #fff;
  --page-width: 1280px; --page-gutter: 36px;
  --reading-width: 940px; --text-measure: 78ch; --prose-measure: 66ch;
  --sidebar-width: 220px; --column-gap: 48px;
  --section-space: 44px; --section-padding: 48px; --panel-padding: 28px;
  --body-size: 17px; --body-leading: 1.8;
  --h1-size: 44px; --h2-size: 32px; --h3-size: 23px;
  --card-radius: 16px; --table-radius: 12px; --control-radius: 10px;
  --table-padding: 17px 19px; --table-font-size: 14px;
  --button-padding: 13px 20px; --button-size: 14px; --button-height: 51px;
  --label-size: 12px; --label-padding: 6px 10px;
  --anchor-offset: 110px; --ease-out: cubic-bezier(.22,1,.36,1);
}

@media (max-width: 1100px) {
  :root { --page-gutter: 28px; --sidebar-width: 200px; --column-gap: 32px; }
}

@media (max-width: 900px) {
  :root { --page-gutter: 24px; --column-gap: 28px; --h1-size: 40px; }
}

@media (max-width: 600px) {
  :root {
    --page-gutter: 20px; --section-space: 32px; --section-padding: 32px;
    --panel-padding: 20px; --body-size: 16px;
    --h1-size: 32px; --h2-size: 27px; --h3-size: 22px;
    --table-padding: 14px 16px; --table-font-size: 13px;
    --button-padding: 12px 16px; --button-height: 48px;
    --label-size: 11px; --label-padding: 5px 8px;
  }
}

@media (max-width: 360px) {
  :root { --h2-size: 24px; }
}

/* 2. Foundation and shared page geometry. */

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body { margin: 0; font: var(--body-size)/var(--body-leading) var(--font-body); color: var(--dark); background: var(--white); -webkit-font-smoothing: antialiased; }

a { color: inherit; text-decoration: none; -webkit-tap-highlight-color: transparent; }

button, input, select, textarea { font: inherit; }

button { cursor: pointer; }

button, input, select { color: inherit; }

img { display: block; max-width: 100%; height: auto; }

svg { max-width: 100%; }

h1, h2, h3, h4, p { margin: 0; }

h1, h2, h3, h4 { font-family: var(--font-heading); font-weight: 650; letter-spacing: -.035em; line-height: 1.25; overflow-wrap: break-word; }

h1 { font-size: var(--h1-size); }

h2 { font-size: var(--h2-size); }

h3 { font-size: var(--h3-size); }

:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }

[hidden] { display: none !important; }

.wrap { width: calc(100% - var(--page-gutter) * 2); max-width: var(--page-width); margin-inline: auto; }

section[id], li[id], .full-review[id], #beoordeling { scroll-margin-top: var(--anchor-offset); }

.visually-hidden, .skip-link:not(:focus) { position: absolute; top: 0; left: 0; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

.skip-link:focus { position: fixed; top: 12px; left: 12px; z-index: 200; padding: 12px 18px; background: white; color: var(--blue); }

.section-kicker { display: block; color: #47658b; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 14px; }

.content-layout, .product-reviews-layout { display: grid; grid-template-columns: var(--sidebar-width) minmax(0,1fr); gap: var(--column-gap); align-items: start; }

.content-layout { padding-block: var(--section-padding) 32px; border-top: 1px solid var(--line); margin-top: 20px; }

.guide-content, .article-main { min-width: 0; max-width: var(--reading-width); }

/* Reading columns share the menu's right edge while keeping the left sidebar. */
.content-layout > .guide-content, .product-reviews-layout > .article-main { max-width: none; --text-measure: 100%; --prose-measure: 100%; }

.chapter { padding-bottom: var(--section-space); margin-bottom: var(--section-space); border-bottom: 1px solid var(--line); }

.chapter:last-child { border-bottom: 0; }

.chapter h2 { font-size: var(--h2-size); line-height: 1.28; max-width: 31ch; margin-bottom: 24px; }

.chapter h3 { font-size: var(--h3-size); line-height: 1.35; margin: 28px 0 18px; }

.prose { color: #40516c; }

.chapter p:not(.label,.review-label), .full-review > p:not(.label,.review-label), .article-main > p { font-size: var(--body-size); line-height: var(--body-leading); max-width: var(--text-measure); margin-bottom: 22px; }

.prose > p:not(.label,.review-label) { max-width: var(--prose-measure); }
.chapter > :last-child, .chapter > p:last-child, .chapter > figure:last-child { margin-bottom: 0; }

.chapter strong { color: #253f60; font-weight: 650; }

.prose a:not(.button), .bronnoot a, .guide-content p a:not(.button) { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }

.prose ul, .prose ol { padding-left: 24px; margin: 22px 0; }

.prose li { margin-bottom: 12px; }

.sources-chapter li { font-size: 14px; line-height: 1.8; }

.article-disclosure { padding-block: 20px 40px; font-size: 13px; line-height: 1.8; color: var(--quiet); border-top: 1px solid var(--line); }

.article-disclosure p { max-width: 90ch; }

@media (max-width: 900px) {
  .content-layout, .product-reviews-layout { grid-template-columns: minmax(0,1fr); }
}

/* 3. Navigation, search and footer. */

.header { position: sticky; top: 0; z-index: 100; background: white; border-bottom: 1px solid #edf0f6; }

.header-row { height: 88px; display: flex; align-items: center; justify-content: space-between; gap: 24px; position: relative; }

.brand { display: inline-flex; align-items: center; white-space: nowrap; }

.logo-word { font-size: 19px; font-weight: 800; letter-spacing: -1.4px; line-height: 1.2; }

.logo-word > span { color: var(--blue); }

.header .header-button { display: none; }

#main-nav { display: flex; align-items: center; gap: 20px; margin-left: auto; }

#main-nav > a { padding: 12px 0; font-size: 14px; font-weight: 650; white-space: nowrap; }

#main-nav a:hover { color: var(--blue); }

.nav-group { position: relative; }

.nav-group summary { display: flex; align-items: center; gap: 9px; list-style: none; font-size: 14px; font-weight: 650; cursor: pointer; padding: 18px 0; white-space: nowrap; }

.nav-group summary::-webkit-details-marker { display: none; }

.nav-group summary > span { color: #7385a1; font-size: 17px; }

.nav-group[open] summary { color: var(--blue); }

.nav-dropdown { position: absolute; top: calc(100% + 4px); left: -20px; width: 280px; border: 1px solid var(--line); border-radius: 14px; background: white; padding: 12px; box-shadow: 0 14px 45px #14234218; z-index: 50; }

.nav-dropdown a { display: block; padding: 10px 12px; font-size: 14px; line-height: 1.4; color: #263f61; border-radius: 7px; }

.nav-dropdown a:hover, .nav-dropdown a[aria-current] { color: var(--blue); background: #edf3ff; }

.menu-toggle { display: none; flex-shrink: 0; border: 0; background: none; width: 42px; height: 44px; padding: 9px; }

.menu-toggle > span { display: block; background: var(--dark); width: 24px; height: 1px; margin: 6px 0; }

.menu-toggle[aria-expanded=true] span:first-child { transform: translateY(3.5px) rotate(45deg); }

.menu-toggle[aria-expanded=true] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }

.site-search-open { display: flex; align-items: center; justify-content: center; flex: none; min-width: 44px; min-height: 44px; border: 0; background: transparent; }

.site-search-open > span { display: none; }

.site-search-open svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; }

#site-search { width: min(700px,calc(100vw - 32px)); max-height: calc(100dvh - 48px); margin: 8vh auto auto; padding: 32px; border: 0; border-radius: 22px; background: white; color: var(--dark); box-shadow: 0 25px 90px #10224338; overflow: auto; }

#site-search::backdrop { background: #12213b80; backdrop-filter: blur(3px); }

.search-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 24px; }

.search-heading h2 { font-size: 26px; }

.site-search-close { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 9px; background: white; font-size: 14px; }

.site-search-close span { font-size: 24px; line-height: 1; }

#site-search label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 10px; }

#site-search-input { display: block; width: 100%; min-height: 56px; border: 2px solid #bdcbea; border-radius: var(--control-radius); padding: 14px 16px; font-size: 17px; background: #f7f9fe; }

#site-search-status { font-size: 14px; color: var(--muted); margin: 16px 0 10px; line-height: 1.6; }

#site-search-results { list-style: none; padding: 0; margin: 0; }

#site-search-results a { display: block; padding: 15px 12px; border-bottom: 1px solid var(--line); border-radius: 8px; font-size: 16px; font-weight: 600; line-height: 1.4; }

#site-search-results a:hover, #site-search-results a:focus-visible { background: #edf3ff; color: var(--blue); }

.footer { border-top: 1px solid var(--line); padding-block: 32px; }

.footer p { font-size: 13px; margin: 12px 0; }

.footer-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 30px; padding: 18px 0 32px; }

.footer-heading .brand { font-size: 24px; font-weight: 700; letter-spacing: -.04em; }

.footer-heading p { max-width: 48ch; color: var(--quiet); }

.footer-reviews { font-size: 13px; color: var(--blue); white-space: nowrap; }

.footer-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px; border-block: 1px solid var(--line); padding-block: 32px; }

.footer-links h2 { font-size: 16px; letter-spacing: 0; margin-bottom: 16px; }

.footer-links a { display: block; font-size: 14px; line-height: 1.6; margin: 10px 0; color: var(--muted); }

.footer-links a:hover { text-decoration: underline; color: var(--blue); }

.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 22px; }

.footer-bottom a { font-size: 13px; }

@media (min-width: 901px) and (max-width: 1100px) { #main-nav { gap: 14px; } }

@media (max-width: 900px) {
  .header-row { height: 70px; gap: 12px; }
  .menu-toggle { display: block; }
  #main-nav { display: none; }
  #main-nav.is-open { display: flex; flex-direction: column; align-items: stretch; position: absolute; top: 100%; left: calc(-1 * var(--page-gutter)); right: calc(-1 * var(--page-gutter)); background: white; padding: 16px 24px 24px; max-height: calc(100dvh - 80px); overflow-y: auto; gap: 0; border-bottom: 1px solid var(--line); box-shadow: 0 12px 25px #1423420c; }
  .nav-group { border-top: 1px solid var(--line); }
  .nav-group summary { justify-content: space-between; padding: 15px 0; }
  .nav-dropdown { position: static; border: 0; border-radius: 0; background: #f4f7fc; width: 100%; box-shadow: none; padding: 8px; margin-bottom: 10px; }
  .footer-heading { display: block; }
  .footer-reviews { display: inline-block; margin-top: 12px; }
}

@media (max-width: 600px) {
  .logo-word { font-size: 16px; }
  .header-row { gap: 8px; }
  .site-search-open { margin-left: auto; }
  #site-search { padding: 22px 18px; margin-top: 16px; border-radius: 16px; }
  .search-heading h2 { font-size: 22px; }
  #site-search-input { font-size: 16px; }
  .footer-heading .brand { font-size: 21px; }
  .footer-links { grid-template-columns: 1fr 1fr; gap: 26px; }
  .footer-links > div:last-child { grid-column: 1/-1; }
  .footer-links a { font-size: 13px; }
  .footer-bottom { display: block; }
  .footer-bottom a { display: inline-block; margin-top: 10px; }
}

/* 4. Buttons, labels and tables: shared across all page types. */

.button, .shop-button, .site-shop, .choice-submit .button {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  gap: 15px; min-height: var(--button-height); padding: var(--button-padding);
  border: 1px solid transparent; border-radius: var(--control-radius);
  font: 650 var(--button-size)/1.5 var(--font-body); text-decoration: none;
}

.button-blue, .shop-button, .site-shop, .choice-submit .button { color: white; background: var(--blue); }

.button-blue:hover, .shop-button:hover, .site-shop:hover, .choice-submit .button:hover { background: var(--blue-hover); }

.button-outline { border-color: #ced8e9; background: white; color: var(--dark); }

.button-outline:hover { background: #f1f5fc; border-color: #9daece; }

.button-lime { background: var(--lime); color: #233c1b; }

.button-white { background: white; color: var(--blue); }

.button > span[aria-hidden] { font-size: 18px; }

.site-shop { display: flex; flex-direction: column; align-items: stretch; gap: 3px; }

.site-shop > span { display: flex; align-items: center; justify-content: space-between; gap: 12px; }

.site-shop > span > span { font-size: 18px; }

.site-shop small { font-size: 10px; color: #e8f0ff; font-weight: 400; line-height: 1.5; }

.model-summary-copy .site-shop { max-width: 300px; margin: 24px 0; }

@media (max-width: 600px) { .model-summary-copy .site-shop { max-width: none; } }

.shop-button { overflow: hidden; white-space: nowrap; }

.shop-button svg { width: 19px; height: 19px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.75; }

.shop-action { display: flex; flex-direction: column; align-items: stretch; gap: 6px; }

.shop-retailer { display: block; text-align: center; font-size: 12px; line-height: 1.5; color: var(--muted); }

.shop-retailer strong { font-weight: 650; }

.label, .review-label, .recommendation-label, .decision-label, .pick-label > span:first-child {
  display: inline-flex; align-items: center; font-size: var(--label-size); font-weight: 650;
  line-height: 1.5; padding: var(--label-padding); border-radius: 6px;
  color: #345b94; background: #edf3ff;
}

.label-choice, .recommendation-label, .pick-card:first-child .pick-label > span:first-child { background: var(--lime); color: #345321; }

.label-budget { background: #fff3da; color: #755013; }

.review-label { margin-bottom: 18px; }

.table-scroll { width: 100%; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; border: 1px solid var(--line); border-radius: var(--table-radius); margin: 26px 0 24px; }

.table-scroll table { width: 100%; min-width: 640px; table-layout: auto; border-collapse: separate; border-spacing: 0; margin: 0; font-size: var(--table-font-size); }

.table-scroll.columns-2 table { min-width: 480px; }

/* Preserve readable column widths in larger comparisons on phones. */
.table-scroll.columns-5 table { min-width: 760px; }
.table-scroll.columns-6 table { min-width: 900px; }
.table-scroll.columns-7 table { min-width: 1040px; }
.table-scroll.columns-8 table { min-width: 1180px; }

.table-scroll th, .table-scroll td { padding: var(--table-padding); text-align: left; vertical-align: top; border: 0; border-bottom: 1px solid var(--line); font-size: var(--table-font-size); line-height: 1.7; overflow-wrap: break-word; }

.table-scroll thead th { background: #eaf0ff; color: var(--dark); font-weight: 650; min-width: 140px; }

.table-scroll thead th:first-child { min-width: 170px; }

.table-scroll thead th a { color: inherit; text-decoration: none; font-size: 15px; line-height: 1.5; }

.table-scroll thead span { display: block; font-size: 12px; font-weight: 400; margin-top: 4px; }

.table-scroll tbody th { font-weight: 500; background: #f1f5fc; }

.table-scroll tbody tr:nth-child(even) td { background: #fafbfe; }

.table-scroll tbody tr:hover td { background: #f2f6ff; }

.table-scroll tr:last-child > * { border-bottom: 0; }

.table-scroll caption:not(.visually-hidden) { text-align: left; background: #f4f7fc; padding: 16px 20px; font-weight: 650; color: #28476c; border-bottom: 1px solid var(--line); font-size: var(--table-font-size); line-height: 1.6; }

.comparison-section { padding-block: var(--section-padding); border-top: 1px solid var(--line); }

.comparison-section h2 { margin-bottom: 18px; }

.comparison-section > p { max-width: var(--text-measure); font-size: 16px; line-height: 1.8; margin-bottom: 20px; }

.comparison-section .table-scroll thead th:not(:first-child) { min-width: 210px; }

.comparison-section .site-shop { max-width: 250px; }

.table-note { font-size: 13px; color: var(--muted); }

.table-swipe-hint, .scroll-hint { display: none; }

@media (max-width: 900px) { .table-swipe-hint, .scroll-hint { display: block; font-size: 11px; color: var(--quiet); margin: -14px 0 24px; line-height: 1.6; } }

/* 5. Heroes and reading navigation. */

.intro { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); gap: 56px; padding-block: 56px; align-items: center; }

.hero-copy, .hero-visual { min-width: 0; }

.intro h1 { line-height: 1.16; letter-spacing: -.045em; max-width: 15ch; }

.intro .lead { font-size: 18px; line-height: 1.75; color: var(--muted); margin: 24px 0; }

.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }

.page-hero { padding: 28px 0 48px; }

.breadcrumbs { display: flex; flex-wrap: wrap; gap: 12px; font-size: 12px; line-height: 1.6; color: var(--quiet); margin-bottom: 36px; }

.page-hero-copy { max-width: 900px; }

.page-hero h1 { line-height: 1.16; max-width: 27ch; margin-bottom: 24px; }

.page-hero .lead { font-size: 19px; line-height: 1.8; max-width: var(--text-measure); color: var(--muted); margin-bottom: 28px; }

.page-hero .hero-actions { margin-top: 26px; }

.page-date { font-size: 12px; color: var(--quiet); margin-top: 20px; }

.sidebar { position: sticky; top: var(--anchor-offset); align-self: start; max-height: calc(100dvh - 140px); overflow-y: auto; scrollbar-width: thin; }

.sidebar nav { display: grid; gap: 15px; border-left: 1px solid var(--line); padding: 12px 0 8px 17px; font-size: 13px; line-height: 1.5; }

.sidebar nav strong { font-size: 14px; margin-bottom: 4px; }

.sidebar a { color: var(--muted); }

.sidebar a:hover { color: var(--blue); }

.page-toc summary { font-size: 14px; font-weight: 650; padding: 12px 0; list-style: none; pointer-events: none; }

.page-toc details:not([open]) > nav { display: grid; }

@media (max-width: 900px) {
  .intro { grid-template-columns: minmax(0,1fr); padding-block: 36px; gap: 32px; }
  .intro h1 { max-width: 20ch; }
  .capacity-hero { max-width: 620px; }
  .sidebar { position: static; max-height: none; overflow: visible; }
  .page-toc { background: #f4f7fc; border: 1px solid var(--line); border-radius: 12px; padding: 0 20px; }
  .page-toc summary { pointer-events: auto; cursor: pointer; padding: 18px 0; list-style: revert; }
  .page-toc nav { border: 0; padding: 5px 0 20px; }
  .page-toc nav a { min-height: 44px; display: flex; align-items: center; }
  .page-toc details:not([open]) > nav { display: none; }
}

@media (max-width: 600px) {
  .intro .lead, .page-hero .lead { font-size: 17px; }
  .page-hero { padding: 22px 0 38px; }
  .breadcrumbs { font-size: 11px; gap: 8px; margin-bottom: 28px; }
  .page-hero h1 { margin-bottom: 20px; }
  .page-date { font-size: 11px; }
}

/* 6. One product selection and detailed product component, on every page. */

.selection-band { background: var(--pale); padding-block: var(--section-padding); margin-top: 12px; }

.selection-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 28px; }

.selection-heading h2 { font-size: 36px; max-width: 26ch; line-height: 1.24; margin-top: 12px; }

.selection-heading h2 > span { color: var(--quiet); font-weight: 450; }

.selection-heading > .button { flex-shrink: 0; }

.selection-band .wrap > p:not(.selection-note,.affiliate-disclosure) { max-width: 84ch; font-size: 16px; line-height: 1.8; margin-bottom: 24px; }

.picks-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }

.pick-card { min-width: 0; display: flex; flex-direction: column; border: 1px solid #e0e6f0; border-radius: 18px; background: white; overflow: hidden; }

.pick-card:first-child { border-color: #a4baef; }

.pick-label { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 17px 16px 0; min-height: 54px; }

.pick-label > span:first-child { max-width: 75%; }

.pick-score { font-size: 15px; font-weight: 700; color: var(--dark); white-space: nowrap; }

.pick-score small { font-size: 12px; font-weight: 400; color: var(--quiet); }

.pick-image { display: flex; align-items: center; justify-content: center; padding: 22px 20px 18px; height: 210px; }

.pick-image img { width: 100%; height: 173px; object-fit: contain; }

.product-photo-placeholder { display: grid; place-items: center; width: 100%; height: 173px; background: #fafbfe; color: var(--quiet); font-size: 12px; text-align: center; border-radius: 6px; }

.pick-copy { display: flex; flex-direction: column; flex: 1; min-width: 0; padding: 0 19px 19px; }

.pick-copy h3 { font-size: 23px; line-height: 1.3; letter-spacing: -.025em; overflow-wrap: anywhere; margin-bottom: 16px; }

.pick-copy h3 a:hover { color: var(--blue); }

.pick-copy p { font-size: 13px; line-height: 1.7; color: var(--quiet); margin: 0 0 18px; }

.pick-copy .pick-purpose { font-weight: 650; color: #173b74; font-size: 15px; line-height: 1.5; margin: 12px 0 8px; }

.pick-copy > .shop-action, .pick-copy > .site-shop { margin-top: auto; }

.pick-copy .shop-button { width: 100%; }

.pick-link { display: flex; align-items: center; justify-content: space-between; gap: 10px; border-top: 1px solid #edf0f6; padding-top: 12px; font-size: 13px; font-weight: 600; color: var(--blue); margin-top: 14px; }

.pick-link:hover { text-decoration: underline; text-underline-offset: 4px; }

.pick-caution { font-size: 12px; line-height: 1.65; color: #725625; margin-bottom: 18px; }

.selection-note, .affiliate-disclosure { text-align: center; color: var(--quiet); font-size: 12px; line-height: 1.7; margin: 18px auto 0; max-width: 80ch; }

.selection-bottom-link { display: table; font-size: 14px; color: var(--quiet); margin: 26px auto 0; text-align: center; }

.selection-bottom-link > span { color: var(--blue); margin-left: 9px; }

.product-reviews-layout { margin-block: var(--section-padding); }

.article-main > h2 { font-size: var(--h2-size); line-height: 1.25; margin-bottom: 28px; max-width: 30ch; }

.article-main > h3 { font-size: var(--h3-size); margin: 38px 0 18px; }

.contents { align-self: stretch; }

.contents-inner { position: sticky; top: var(--anchor-offset); max-height: calc(100vh - 140px); overflow: auto; scrollbar-width: thin; padding-right: 5px; }

.contents a { display: flex; gap: 12px; align-items: baseline; font-size: 14px; line-height: 1.5; }

.contents-main { font-weight: 650; padding: 17px 0; border-bottom: 1px solid var(--line); justify-content: space-between; }

.contents a:hover { color: var(--blue); }

.contents-product { padding: 9px 0; color: #687994; }

.contents-product > span { font-size: 12px; width: 16px; flex-shrink: 0; }

.ui-topselectie { list-style: none; padding: 0; margin: 28px 0; }

.ui-topselectie > li::before { display: none; }

.product-detail { background: white; border: 1px solid var(--line); border-radius: 20px; padding: var(--panel-padding) 32px; margin-bottom: 26px; }

.product-detail:nth-of-type(even) { background: #f9fbff; }

.review-heading { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; }

.review-heading > div { min-width: 0; flex: 1; }

.review-heading h3 { position: relative; font-size: 26px; line-height: 1.3; margin-top: 5px; overflow-wrap: anywhere; }

.section-number { display: grid; place-items: center; width: 39px; min-width: 39px; height: 39px; color: var(--blue); background: var(--pale); font-size: 18px; font-weight: 650; border-radius: 11px; }

.review-score { margin-left: auto; padding: 8px 14px; border-radius: 12px; font-size: 22px; font-weight: 650; text-align: center; line-height: 1.1; flex-shrink: 0; background: var(--lime); color: #304c20; }

.review-score small { display: block; max-width: 90px; margin-top: 5px; font-size: 10px; line-height: 1.4; font-weight: 400; }

.review-product { display: flex; align-items: center; gap: 28px; margin-block: 27px; border-radius: 14px; background: var(--pale); padding: 24px 28px; }

.review-product > div { flex: 1; min-width: 0; }

.review-product > img, .review-product > .product-photo-placeholder { width: 150px; height: 165px; flex: none; object-fit: contain; background: #ffffff80; }

.product-detail:nth-of-type(even) .review-product { background: white; border: 1px solid #e7edf6; }

.product-subtitle { font-size: 20px; font-weight: 550; line-height: 1.5; color: #28476c; }

.spec-line { font-size: 14px; color: #7c8ba1; margin-top: 10px; }

.review-actions { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 22px; }

.review-actions .site-shop { min-width: 210px; }

.product-caveat { padding: 18px 22px; margin: 24px 0; border-left: 3px solid #a9bedf; background: #f4f7fc; border-radius: 0 10px 10px 0; font-size: 15px; line-height: 1.8; color: var(--muted); }

.product-caveat p { margin: 0; }

.product-caveat > strong { display: block; font-size: 12px; margin-bottom: 6px; color: #365376; }

.ui-methode { margin-top: 32px; padding: 24px 28px; background: linear-gradient(120deg,#edf3ff,#f3f7ea); border: 1px solid #dfe7ed; border-radius: 14px; }

.ui-methode h3 { font-size: 21px; margin-bottom: 16px; }

.ui-methode p { font-size: 15px; line-height: 1.8; margin-bottom: 16px; color: var(--muted); }

.ui-methode p:last-child { margin-bottom: 0; }

.score-details { border-block: 1px solid var(--line); margin: 24px 0; }

.score-details summary { padding: 16px 0; font-size: 14px; font-weight: 650; cursor: pointer; }

.opbouw { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; padding: 14px 0 24px; margin: 0; }

.opbouw dt { font-size: 12px; line-height: 1.6; }

.opbouw dd { font-size: 16px; line-height: 1.6; margin: 6px 0 10px; font-weight: 650; }

.opbouw > div::after { content: ""; display: block; width: var(--score); max-width: 100%; height: 4px; border-radius: 4px; background: var(--blue); }

.visual-description, .illustration-note { margin: 12px 0 24px; font-size: 12px; line-height: 1.7; color: var(--quiet); }

.visual-description summary, .illustration-note summary { cursor: pointer; }

.notice { padding: 16px 20px; background: #f6f8fb; border: 1px dashed #c9d3e2; border-radius: 10px; color: var(--muted); font-size: 13px; line-height: 1.6; margin: 20px 0; }

.visual-description .notice, .illustration-note .notice { background: transparent; border: 0; padding: 12px 0; margin: 12px 0 0; }

.model-review-link { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); font-size: 14px; }

.model-review-link a { color: var(--blue); }

@media (max-width: 1100px) {
  .pick-copy h3 { font-size: 21px; }
  .review-product { padding: 22px; gap: 22px; }
  .review-product > img, .review-product > .product-photo-placeholder { width: 115px; height: 140px; }
}

@media (max-width: 900px) {
  .selection-heading { align-items: flex-start; }
  .selection-heading h2 { font-size: 31px; }
  .selection-heading > .button { display: none; }
  .contents { display: none; }
}

@media (max-width: 600px) {
  .selection-band { margin-top: 5px; }
  .selection-heading h2 { font-size: 28px; }
  .picks-grid { grid-template-columns: minmax(0,1fr); gap: 15px; }
  .pick-card { display: grid; grid-template-columns: 105px minmax(0,1fr); grid-template-rows: auto 1fr; border-radius: 15px; }
  .pick-label { grid-column: 1/-1; margin: 15px 17px 3px; min-height: 42px; }
  .pick-image { height: auto; padding: 15px 12px 20px; }
  .pick-image img, .pick-image .product-photo-placeholder { height: 130px; font-size: 11px; }
  .pick-copy { padding: 15px 17px 20px 0; }
  .pick-copy h3 { font-size: 18px; line-height: 1.4; margin-bottom: 12px; }
  .pick-copy p { font-size: 12px; margin-bottom: 15px; }
  .pick-copy .pick-purpose { font-size: 13px; }
  .pick-link { font-size: 12px; }
  .pick-caution { font-size: 11px; }
  .product-detail { padding: 23px 20px; border-radius: 17px; margin-bottom: 22px; }
  .review-heading { display: grid; grid-template-columns: 31px minmax(0,1fr) auto; gap: 11px; }
  .review-heading > div { grid-column: 1/-1; grid-row: 2; }
  .review-heading h3 { font-size: 22px; }
  .section-number { width: 31px; min-width: 31px; height: 31px; font-size: 15px; border-radius: 8px; }
  .review-score { grid-column: 3; grid-row: 1; margin: 0; font-size: 18px; padding: 8px 10px; }
  .review-score small { font-size: 9px; }
  .review-product { flex-direction: column; align-items: stretch; gap: 20px; padding: 24px 20px; }
  .review-product > img, .review-product > .product-photo-placeholder { width: 76px; height: 100px; font-size: 11px; align-self: center; }
  .product-subtitle { font-size: 18px; }
  .review-actions { flex-direction: column; align-items: stretch; gap: 16px; }
  .review-actions .button, .review-actions .shop-button { width: 100%; }
  .opbouw { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  .opbouw dd { font-size: 14px; }
  .ui-methode { padding: 22px; }
}

/* 7. Homepage calculators and explanatory figures */

.capacity-hero {
  display: block;
  aspect-ratio: auto;
  height: auto;
  min-height: 0;
  background: linear-gradient(125deg,#eaf0ff,#f4f7ff 65%,#f2f8e9);
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 28px;
}

.capacity-hero h2 {
  font-size: 22px;
  line-height: 1.3;
  margin: 0 0 12px;
}

.capacity-hero p {
  font-size: 15px;
  line-height: 1.6;
  margin: 0 0 20px;
}

.capacity-route {
  border-top: 1px solid #d3dded;
  padding: 16px 0;
}

.route-label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #456185;
  margin-bottom: 8px;
}

.capacity-route>div {
  display: flex;
  gap: 20px;
  align-items: center;
}

.capacity-route strong {
  font-size: 30px;
  color: var(--blue);
  white-space: nowrap;
}

.capacity-route div>span {
  font-size: 14px;
  line-height: 1.6;
}

.capacity-hero small {
  display: block;
  font-size: 12px;
  line-height: 1.6;
  color: var(--muted);
}

.energy-tool {
  margin: 32px 0 0;
  padding: 28px;
  background: var(--dark);
  border-radius: 18px;
  color: white;
}

.energy-tool h3 {
  color: white;
  font-size: 25px;
  line-height: 1.3;
  margin: 0 0 14px;
}

.energy-tool>p {
  color: #d7e2f5;
  font-size: 15px;
  line-height: 1.7;
  margin: 0 0 20px;
}

.example-label {
  display: inline-block;
  background: #293b5e;
  color: #e1eafa;
  padding: 6px 10px;
  border-radius: 6px;
  font-size: 11px;
  line-height: 1.6;
  margin-bottom: 24px;
}

.calculator-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 24px;
}

.calc-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.calc-grid label {
  font-size: 13px;
  font-weight: 650;
  line-height: 1.5;
  color: white;
}

.input-unit {
  display: flex;
  align-items: center;
  background: white;
  border: 1px solid #c1cde0;
  border-radius: 8px;
  margin-top: 8px;
  padding-right: 10px;
  gap: 6px;
}

.input-unit input {
  width: 100%;
  min-width: 0;
  border: 0;
  border-radius: 8px;
  padding: 12px 10px;
  background: white;
  color: var(--dark);
  font: 600 17px var(--font-body);
}

.input-unit>span {
  font-size: 10px;
  color: var(--muted);
  white-space: nowrap;
  font-weight: 500;
}

.calc-grid small {
  display: block;
  font-size: 11px;
  line-height: 1.6;
  color: #c7d5ed;
  font-weight: 400;
  margin-top: 8px;
}

.calc-grid .field-help {
  grid-column: 1/-1;
  font-size: 12px;
  line-height: 1.6;
  color: #c7d5ed;
  margin: -8px 0 0;
}

.calc-outcome {
  background: #f1f6e4;
  color: var(--dark);
  border-radius: 12px;
  padding: 24px;
}

.calc-outcome>span {
  font-size: 12px;
  font-weight: 650;
}

.calc-outcome dl {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin: 16px 0 20px;
  gap: 16px;
}

.calc-outcome dl>div {
  padding-bottom: 14px;
  border-bottom: 1px solid #d4dec4;
}

.calc-outcome dt {
  font-size: 13px;
}

.calc-outcome dd {
  font-size: 23px;
  font-weight: 650;
  margin: 4px 0 0;
}

.calc-outcome output {
  display: block;
  font-size: 14px;
  line-height: 1.6;
}

.calc-outcome output strong {
  display: block;
  font-size: 34px;
  line-height: 1.2;
  margin-bottom: 6px;
}

.calc-outcome output span {
  display: block;
}

.energy-tool .calc-caveat {
  font-size: 12px;
  line-height: 1.7;
  margin: 20px 0 0;
  color: #c7d5ed;
}

.calc-explanation {
  border-top: 1px solid #394a67;
  margin-top: 20px;
  padding-top: 16px;
}

.calc-explanation summary {
  font-size: 13px;
  cursor: pointer;
}

.calc-explanation p {
  font-size: 12px;
  line-height: 1.7;
  color: #c7d5ed;
  margin: 12px 0 0;
}

@media (max-width:850px) {
  .capacity-hero {
    max-width: 620px;
  }
}

@media (max-width:560px) {
  .capacity-hero {
    padding: 22px;
  }

  .energy-tool {
    padding: 22px 18px;
  }

  .energy-tool h3 {
    font-size: 23px;
  }

  .calc-grid {
    grid-template-columns: 1fr;
  }

  .calc-outcome {
    padding: 20px;
  }
}

.energy-tool>p strong {
  color: inherit;
}

.editorial-chart {
  margin: 28px 0;
  padding: 26px;
  background: var(--pale);
  border: 1px solid #e4eaf4;
  border-radius: 16px;
}

.editorial-chart figcaption {
  font-size: 19px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--dark);
  margin: 0 0 12px;
}

.editorial-chart>p {
  font-size: 14px;
  line-height: 1.7;
  margin: 0 0 20px;
}

.chart-row {
  display: grid;
  grid-template-columns: 150px minmax(0,1fr) 90px;
  gap: 16px;
  align-items: center;
  margin: 20px 0;
}

.chart-row>span {
  font-size: 14px;
  font-weight: 600;
}

.chart-row small {
  display: block;
  font-size: 10px;
  font-weight: 400;
  color: #687588;
  margin-top: 4px;
}

.chart-row>strong {
  text-align: right;
  font-size: 16px;
  white-space: nowrap;
}

.chart-track {
  height: 14px;
  background: #e0e7f2;
  border-radius: 7px;
  overflow: hidden;
  position: relative;
}

.chart-fill {
  display: block;
  width: var(--value);
  height: 100%;
  background: var(--blue);
  border-radius: 7px;
  transform-origin: left;
  position: relative;
  z-index: 1;
}

.chart-row:nth-of-type(2) .chart-fill {
  background: #6885b8;
}

.capacity-rest {
  position: absolute;
  inset: 0 0 0 62.5%;
  background: repeating-linear-gradient(125deg,#ced9e8 0 3px,#edf2fa 3px 7px);
}

.chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 20px 0;
}

.chart-legend>span {
  font-size: 11px;
  color: var(--muted);
  display: flex;
  gap: 6px;
  align-items: center;
}

.chart-legend i {
  width: 10px;
  height: 10px;
  border-radius: 2px;
  background: #6885b8;
}

.chart-legend .rest-key {
  background: repeating-linear-gradient(125deg,#acbed5 0 2px,#edf2fa 2px 4px);
}

.editorial-chart .chart-note {
  font-size: 12px;
  color: #687588;
  margin: 18px 0 0;
}

.editorial-chart .chart-takeaway {
  padding-top: 16px;
  border-top: 1px solid #dbe3f0;
  font-size: 13px;
  line-height: 1.7;
  margin-bottom: 0;
}

.chart-takeaway strong {
  display: block;
  color: #234e92;
  font-size: 19px;
  margin-bottom: 4px;
}

.program-check {
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 24px;
  margin-top: 28px;
}

.program-check h3 {
  font-size: 20px;
  margin: 0 0 20px;
}

.program-check ol {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 20px;
}

.program-check li {
  margin: 0;
  padding: 0;
}

.program-check li:before {
  display: none;
}

.program-check li>span {
  display: block;
  color: var(--blue);
  font-size: 12px;
  font-weight: 650;
  margin-bottom: 8px;
}

.program-check strong {
  font-size: 15px;
}

.program-check li p, .program-check>p {
  font-size: 13px;
  line-height: 1.65;
  margin: 8px 0 0;
}

.program-check>p {
  border-top: 1px solid var(--line);
  padding-top: 16px;
  color: #687588;
}

@keyframes bar-enter {
from{transform:scaleX(.02)}to{transform:scaleX(1)}
}

@media (prefers-reduced-motion:no-preference) {
  [data-chart].chart-entered .chart-fill {
    animation: bar-enter 850ms cubic-bezier(.2,.65,.3,1) both;
  }
}

@media (max-width:850px) {
  .chart-row {
    grid-template-columns: 115px minmax(0,1fr) 80px;
    gap: 10px;
  }
}

@media (max-width:600px) {
  .editorial-chart {
    padding: 20px;
  }

  .chart-row {
    grid-template-columns: 1fr auto;
    gap: 10px;
    margin: 22px 0;
  }

  .chart-row .chart-track {
    grid-column: 1/-1;
    grid-row: 2;
  }

  .chart-row>strong {
    grid-column: 2;
    grid-row: 1;
  }

  .editorial-chart figcaption {
    font-size: 18px;
  }

  .chart-row small {
    font-size: 11px;
  }

  .program-check {
    padding: 20px;
  }

  .program-check ol {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .program-check li {
    display: grid;
    grid-template-columns: 24px 1fr;
    column-gap: 10px;
  }

  .program-check li p {
    grid-column: 2;
    margin-top: 4px;
  }

  .program-check li>span {
    margin: 0;
  }
}

.decision-pair, .label-explainer, .placement-guide, .function-guide {
  margin: 28px 0 0;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 26px;
  background: #fff;
}

.decision-pair h3, .function-guide h3, .label-explainer figcaption, .placement-guide figcaption {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.35;
  margin: 0 0 20px;
  color: var(--dark);
}

.decision-columns {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.decision-columns>div+div {
  border-left: 1px solid var(--line);
  padding-left: 24px;
}

.decision-label { margin-bottom: 14px; }

.decision-columns>div:first-child .decision-label {
  background: #eaf2d4;
  color: #36531b;
}

.decision-columns h4 {
  font-size: 18px;
  line-height: 1.4;
  margin: 0 0 12px;
}

.decision-columns p {
  font-size: 14px;
  line-height: 1.75;
  margin: 0 0 16px;
}

.decision-limit {
  border-top: 1px solid #e1e7f0;
  padding-top: 14px;
  color: var(--muted);
}

.decision-limit strong {
  display: block;
  color: #365376;
  font-size: 12px;
  margin-bottom: 5px;
}

.label-explainer {
  background: #f4f7fc;
  margin-bottom: 28px;
}

.label-explainer figcaption {
  margin-bottom: 10px;
}

.label-explainer .label-context {
  font-size: 14px;
  margin: 0 0 20px;
}

.label-halves {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: 1px solid #ccd9ee;
  border-radius: 12px;
  overflow: hidden;
  background: white;
}

.label-halves>div {
  padding: 20px;
}

.label-halves>div+div {
  border-left: 1px solid #ccd9ee;
}

.label-halves>div>span {
  display: block;
  font-size: 11px;
  color: #687588;
  margin-bottom: 8px;
}

.label-halves h4 {
  font-size: 18px;
  margin: 0 0 18px;
}

.cycle-pair {
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 18px;
}

.cycle-pair span {
  background: #eaf0ff;
  padding: 8px 10px;
  border-radius: 6px;
  font-size: 12px;
  color: #315d9b;
}

.cycle-pair b {
  color: #6e85a8;
  font-size: 13px;
}

.label-halves p {
  font-size: 14px;
  line-height: 1.65;
  margin: 0 0 14px;
}

.label-halves>div>strong {
  font-size: 12px;
  line-height: 1.6;
  display: block;
  color: #345b94;
}

.chapter .element-note {
  font-size: 12px;
  line-height: 1.7;
  color: #687588;
  margin: 18px 0 0;
}

.placement-guide {
  background: linear-gradient(120deg,#f4f7fd,#fff);
}

.placement-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: center;
}

.placement-plan {
  width: 100%;
  max-width: 340px;
  height: auto;
}

.placement-plan text {
  font-family: var(--font-body);
  font-size: 12px;
  fill: #345276;
}

.placement-layout ol {
  counter-reset: place;
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 20px;
}

.placement-layout li {
  counter-increment: place;
  padding: 0 0 0 34px;
  margin: 0;
  position: relative;
}

.placement-layout li:before {
  content: counter(place);
  position: absolute;
  left: 0;
  top: 1px;
  background: #e5edfa;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  color: #345b94;
  font-size: 11px;
  display: grid;
  place-items: center;
}

.placement-layout strong {
  display: block;
  font-size: 15px;
  margin-bottom: 5px;
}

.placement-layout li span {
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
  display: block;
}

.function-guide {
  padding: 0;
  border: 0;
}

.function-guide dl {
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
}

.function-guide dl>div {
  display: grid;
  grid-template-columns: 42% 1fr;
  gap: 20px;
  padding: 20px;
  background: #fff;
}

.function-guide dl>div+div {
  border-top: 1px solid var(--line);
}

.function-guide dl>div:nth-child(2n) {
  background: #f7f9fd;
}

.function-guide dt {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.6;
}

.function-icon {
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
  background: #e9effa;
  color: #345e9a;
  border-radius: 7px;
  font-size: 18px;
}

.function-guide dd {
  margin: 0;
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
}

.function-guide dd strong {
  display: block;
  font-size: 13px;
  margin-bottom: 5px;
  color: var(--dark);
}

@media (max-width:600px) {
  .decision-pair, .label-explainer, .placement-guide {
    padding: 20px;
  }

  .decision-pair h3, .function-guide h3, .label-explainer figcaption, .placement-guide figcaption {
    font-size: 20px;
  }

  .decision-columns, .label-halves, .placement-layout {
    grid-template-columns: 1fr;
  }

  .decision-columns>div+div {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding: 22px 0 0;
  }

  .label-halves>div+div {
    border-left: 0;
    border-top: 1px solid #ccd9ee;
  }

  .placement-plan {
    max-width: 280px;
    justify-self: center;
  }

  .function-guide dl>div {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 18px;
  }

  .function-guide dd {
    padding-left: 36px;
  }

  .label-halves h4 {
    font-size: 18px;
  }

  .decision-columns p {
    font-size: 14px;
  }
}

/* 8. Editorial calculators, diagrams and checklists */

.reading-checklist, .reading-steps {
  list-style: none;
  padding: 0;
  margin: 28px 0;
  counter-reset: reading;
}

.reading-checklist>li, .reading-steps>li {
  position: relative;
  padding: 20px 20px 20px 58px;
  margin: 0;
  line-height: 1.8;
  font-size: 16px;
  border-bottom: 1px solid var(--line);
  background: #f7f9fc;
}

.reading-checklist>li:first-child, .reading-steps>li:first-child {
  border-radius: 12px 12px 0 0;
}

.reading-checklist>li:last-child, .reading-steps>li:last-child {
  border-radius: 0 0 12px 12px;
  border-bottom: 0;
}

.reading-checklist>li:before, .reading-steps>li:before {
  content: "✓";
  position: absolute;
  top: 23px;
  left: 20px;
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  background: #e2edfa;
  color: var(--blue);
  font-size: 12px;
  border-radius: 50%;
  line-height: 1;
}

.reading-steps>li {
  counter-increment: reading;
}

.reading-steps>li:before {
  content: counter(reading);
}

.article-tool {
  background: var(--dark);
  color: #fff;
  border-radius: 18px;
  padding: 30px;
  margin: 30px 0;
  scroll-margin-top: 110px;
}

.tool-eyebrow {
  display: inline-block;
  background: #2b3f60;
  color: #dbe8ff;
  border-radius: 5px;
  font-size: 10px;
  padding: 5px 9px;
  margin-bottom: 18px;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.article-tool h3 {
  color: #fff;
  font-size: 27px;
  margin: 0 0 16px;
  max-width: 30ch;
}

.article-tool>p {
  color: #d2def0;
  font-size: 15px;
  line-height: 1.8;
  margin-bottom: 24px;
}

.tool-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin: 24px 0;
}

.tool-fields label {
  color: #e4ecfa;
  font-size: 13px;
  line-height: 1.6;
  font-weight: 500;
}

.tool-input {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 8px;
  background: #fff;
  border-radius: 8px;
  color: var(--dark);
  padding-right: 12px;
  border: 1px solid #c6d3e8;
}

.tool-input input {
  width: 100%;
  min-width: 0;
  font: 600 17px var(--font-body);
  padding: 13px 12px;
  border: 0;
  border-radius: 8px;
  color: var(--dark);
  background: white;
}

.tool-input>span {
  font-size: 10px;
  white-space: nowrap;
  color: var(--muted);
}

.tool-input:focus-within {
  outline: 3px solid #b0ceff;
  outline-offset: 3px;
}

.tool-input input:focus-visible {
  outline: none;
}

.article-tool output {
  display: block;
  padding: 24px;
  border-radius: 12px;
  background: #eaf4d6;
  color: #233d30;
  font-size: 14px;
  line-height: 1.8;
  min-height: 110px;
}

.article-tool output strong {
  display: block;
  color: #19382c;
  font-size: 29px;
  font-weight: 650;
  line-height: 1.3;
  margin-bottom: 10px;
}

.article-tool output span {
  display: block;
}

.article-tool output[data-state=error] {
  background: #f4e9d5;
  color: #6b4a1c;
}

.article-tool .tool-formula {
  font-size: 12px;
  color: #c4d2e8;
  line-height: 1.8;
  margin: 20px 0 0;
  max-width: 90ch;
}

.page-chart, .measure-guide, .cycle-diagram {
  margin: 30px 0;
  padding: 28px;
  background: #f2f6fc;
  border: 1px solid var(--line);
  border-radius: 16px;
}

.page-chart figcaption, .measure-guide figcaption, .cycle-diagram figcaption {
  font: 650 21px/1.4 var(--font-heading);
  color: var(--dark);
  margin-bottom: 24px;
  max-width: 35ch;
}

.metric-row {
  margin: 22px 0;
}

.metric-row>div:first-child {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 24px;
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.6;
}

.metric-row strong {
  white-space: nowrap;
  font-size: 15px;
}

.metric-track {
  height: 12px;
  border-radius: 7px;
  background: #dfe7f2;
  overflow: hidden;
}

.metric-track>span {
  display: block;
  background: var(--blue);
  height: 100%;
  width: var(--value);
  border-radius: 7px;
  transform-origin: left;
}

.metric-row:nth-of-type(2n) .metric-track>span {
  background: #7190bc;
}

.page-chart p.chart-note, .cycle-diagram p.chart-note {
  font-size: 13px;
  line-height: 1.8;
  color: var(--quiet);
  margin: 24px 0 0;
}

.capacity-model {
  padding: 22px 0;
  border-bottom: 1px solid var(--line);
}

.capacity-model:first-of-type {
  padding-top: 0;
}

.capacity-model:last-of-type {
  border-bottom: 0;
  padding-bottom: 0;
}

.capacity-model h4 {
  font-size: 15px;
  line-height: 1.5;
  margin: 0 0 15px;
  letter-spacing: 0;
}

.capacity-metric {
  display: grid;
  grid-template-columns: 65px 1fr 65px;
  gap: 15px;
  align-items: center;
  margin: 10px 0;
  font-size: 12px;
}

.capacity-metric strong {
  text-align: right;
  white-space: nowrap;
  font-size: 13px;
}

.metric-track .bar-wash {
  background: #819bbf;
}

.metric-track .bar-dry {
  background: var(--blue);
}

.measure-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 35px;
  align-items: center;
}

.cabinet-diagram {
  position: relative;
  max-width: 250px;
  margin: 30px 25px 35px;
  padding: 16px 25px;
  border: 2px solid #8099bc;
  background: #e3ebf6;
  border-radius: 5px;
}

.cabinet-machine {
  border: 2px solid #5c7aa4;
  border-radius: 5px;
  height: 180px;
  background: #fff;
  padding: 35px 20px 20px;
}

.cabinet-machine span {
  display: block;
  width: 110px;
  height: 110px;
  max-width: 100%;
  border: 9px solid #c8d8ef;
  border-radius: 50%;
  margin: auto;
  background: #eaf1fb;
}

.measure-top, .measure-bottom {
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 11px;
  color: #45638b;
}

.measure-top {
  top: -28px;
}

.measure-bottom {
  bottom: -30px;
  white-space: nowrap;
}

.measure-side {
  position: absolute;
  right: -30px;
  top: 40px;
  writing-mode: vertical-rl;
  font-size: 11px;
  color: #45638b;
}

.measure-layout ul {
  list-style: none;
  padding: 0;
}

.measure-layout li {
  padding: 0;
  margin: 0 0 18px;
}

.measure-layout li:before {
  display: none;
}

.measure-layout strong, .measure-layout span {
  display: block;
}

.measure-layout li strong {
  font-size: 14px;
}

.measure-layout li span {
  font-size: 13px;
  line-height: 1.7;
  color: var(--quiet);
}

.measure-guide>p {
  font-size: 12px;
  color: var(--quiet);
  line-height: 1.8;
  margin: 24px 0 0;
}

.process-map {
  margin: 28px 0;
  background: linear-gradient(125deg,#edf3ff,#f2f7e9);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 24px;
}

.process-map h3 {
  font-size: 22px;
  margin: 0 0 20px;
}

.process-map ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

.process-map li {
  padding: 0;
  margin: 0;
  border-top: 1px solid #dae4ee;
}

.process-map li:before {
  display: none;
}

.process-map a {
  display: flex;
  align-items: baseline;
  gap: 18px;
  font-size: 14px;
  line-height: 1.6;
  padding: 14px 0;
  color: #29496d;
  text-decoration: none;
}

.process-map a span {
  color: #7189a8;
  font-size: 12px;
}

.process-map a:hover {
  color: var(--blue);
}

.cycle-diagram>div {
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}

.cycle-diagram>div>strong {
  font-size: 15px;
}

.cycle-diagram>div p {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 15px 0;
  font-size: 13px;
  line-height: 1.5;
}

.cycle-diagram>div p span {
  display: block;
  border-radius: 6px;
  background: #dfe9fb;
  padding: 12px 16px;
  flex: 1;
}

.cycle-diagram>div:nth-of-type(2) p span {
  background: #e4edd9;
}

.cycle-diagram small {
  display: block;
  font-size: 12px;
  color: var(--quiet);
}

@media (prefers-reduced-motion:no-preference) {
  .page-chart.chart-entered .metric-track>span {
    animation: bar-enter 850ms cubic-bezier(.2,.65,.3,1) both;
  }
}

@media (max-width:600px) {
  .reading-checklist>li, .reading-steps>li {
    font-size: 15px;
    padding: 18px 18px 18px 52px;
  }

  .reading-checklist>li:before, .reading-steps>li:before {
    left: 17px;
    top: 21px;
  }

  .article-tool {
    padding: 24px 20px;
  }

  .article-tool h3 {
    font-size: 24px;
  }

  .tool-fields {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .article-tool>p {
    font-size: 14px;
  }

  .article-tool output {
    padding: 20px;
  }

  .article-tool output strong {
    font-size: 25px;
  }

  .page-chart, .measure-guide, .cycle-diagram {
    padding: 22px 20px;
  }

  .page-chart figcaption, .measure-guide figcaption, .cycle-diagram figcaption {
    font-size: 20px;
  }

  .metric-row>div:first-child {
    font-size: 13px;
    gap: 16px;
  }

  .metric-row strong {
    font-size: 13px;
  }

  .capacity-metric {
    grid-template-columns: 55px 1fr 52px;
    gap: 10px;
  }

  .measure-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .cabinet-diagram {
    width: 200px;
    justify-self: center;
    margin-bottom: 30px;
  }

  .process-map {
    padding: 22px 20px;
  }

  .process-map h3 {
    font-size: 21px;
  }

  .process-map a {
    font-size: 13px;
  }
}

.article-tool output[data-state=pending] {
  background: #e5edf9;
  color: #3d5679;
}

/* 9. Single-model review and review directory */

.review-brief {
  margin-bottom: 44px;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(125deg,#f0f5ff,#f8faf5);
}

.model-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 30px;
}

.model-heading h2 {
  font-size: 28px;
  line-height: 1.3;
  margin: 0;
  max-width: 28ch;
}

.model-score {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  text-align: center;
  padding: 12px 16px;
  border-radius: 12px;
  background: #e3edff;
  color: var(--blue);
}

.model-score>strong {
  font: 650 30px/1.2 var(--font-heading);
  color: var(--blue);
  display: block;
}

.model-score>span {
  display: block;
  max-width: 125px;
  font-size: 12px;
  line-height: 1.5;
  margin: 0 0 7px;
  color: #456999;
}

.model-summary-layout {
  display: grid;
  grid-template-columns: 170px minmax(0,1fr);
  gap: 28px;
  align-items: start;
}

.model-photo {
  display: grid;
  place-items: center;
  aspect-ratio: 3/4;
  background: #fff9;
  border: 1px solid #e3eaf5;
  border-radius: 10px;
  color: var(--quiet);
  font-size: 12px;
  text-align: center;
}

.model-summary-copy {
  min-width: 0;
}

.model-summary-copy>h3 {
  font-size: 21px;
  line-height: 1.4;
  margin: 0 0 16px;
}

.model-summary-copy>p:not(.label) {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 18px;
}

.model-summary-layout .visual-description {
  font-size: 12px;
  line-height: 1.8;
  margin: 14px 0 0;
  color: var(--quiet);
}

.model-summary-layout .visual-description summary {
  cursor: pointer;
}

.model-summary-layout .visual-description .notice {
  font-size: 12px;
}

.review-brief .score-details {
  margin: 24px 0 0;
  border-color: #d2deef;
}

.review-brief .score-details summary {
  font-size: 13px;
  line-height: 1.6;
  padding: 16px 0;
  color: #315477;
}

.review-brief .opbouw {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 22px;
  margin: 0;
  padding: 12px 0 20px;
}

.review-brief .opbouw dt {
  font-size: 12px;
  line-height: 1.6;
  color: #49617f;
}

.review-brief .opbouw dd {
  font-size: 18px;
  font-weight: 650;
  line-height: 1.4;
  margin: 8px 0 12px;
  color: #193c72;
}

.review-brief .opbouw>div:after {
  content: "";
  display: block;
  width: var(--score);
  max-width: 100%;
  height: 4px;
  background: var(--blue);
  border-radius: 4px;
}

.review-brief .ui-methode {
  padding: 20px 0 0;
  margin-top: 0;
  border: 0;
  border-radius: 0;
  background: none;
}

.review-brief .ui-methode p {
  font-size: 13px;
  line-height: 1.8;
  margin: 0 0 16px;
  color: var(--muted);
}

.review-brief .ui-methode h3 {
  font-size: 19px;
  line-height: 1.4;
  margin: 0 0 14px;
}

.review-brief .ui-methode p:last-child {
  margin-bottom: 0;
}

.review-related>div {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}

.review-related>div>a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 20px;
  background: #f2f6fc;
  border: 1px solid var(--line);
  border-radius: 9px;
  font-size: 14px;
  line-height: 1.6;
  color: #294e87;
  text-decoration: none;
}

.review-related>div>a:hover {
  border-color: #9ebbf3;
}

.all-reviews-link {
  display: inline-block;
  font-size: 14px;
  margin-top: 24px;
  color: var(--blue);
}

.review-directory-count {
  font-size: 13px;
  line-height: 1.7;
  color: #5f7595;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  margin-top: 28px;
}

.review-directory {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
  padding-bottom: 64px;
}

.review-directory-card {
  display: flex;
  flex-direction: column;
  padding: 25px;
  border: 1px solid var(--line);
  border-radius: 14px;
  text-decoration: none;
  background: #fff;
  min-width: 0;
}

.review-directory-card>span {
  color: #7c8ba1;
  font-size: 11px;
  line-height: 1.6;
  margin-bottom: 18px;
}

.review-directory-card h2 {
  font-size: 23px;
  line-height: 1.35;
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
  margin: 0 0 28px;
}

.review-directory-card p {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  color: var(--blue);
  font-size: 13px;
  font-weight: 600;
  margin-top: auto;
}

.review-directory-card:hover {
  border-color: #9ebbf3;
  background: #f8faff;
}

#beoordeling, .review-brief {
  scroll-margin-top: 110px;
}

@media (prefers-reduced-motion:no-preference) {
  .review-directory-card {
    transition: border-color 160ms,background 160ms;
  }

  .review-directory-card p>span {
    transition: transform 160ms;
  }

  .review-directory-card:hover p>span {
    transform: translateX(4px);
  }
}

.model-heading>div:first-child {
  min-width: 0;
}

.model-heading h2 {
  overflow-wrap: anywhere;
}

.review-offer {
  display: grid;
  grid-template-columns: minmax(0,1fr) 220px;
  align-items: center;
  gap: 28px;
  padding: 26px 28px;
  margin: 4px 0 44px;
  border: 1px solid #d8e4f7;
  border-radius: 14px;
  background: #f1f6ff;
}

.review-offer h2, .review-offer h3 {
  font-size: 23px;
  line-height: 1.35;
  margin: 0 0 12px;
}

.review-offer p {
  font-size: 13px;
  line-height: 1.8;
  margin: 0;
  color: #506886;
}

.review-offer p:first-of-type {
  font-size: 15px;
  font-weight: 600;
  color: #213b64;
  margin-bottom: 8px;
  overflow-wrap: anywhere;
}

.review-offer .site-shop {
  margin: 0;
}

@media (max-width:600px) {
  .review-offer {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 24px 20px;
  }

  .review-offer h2 {
    font-size: 22px;
  }
}

@media (max-width:1100px) {
  .model-summary-layout {
    grid-template-columns: 130px minmax(0,1fr);
    gap: 22px;
  }

  .model-heading h2 {
    font-size: 25px;
  }

  .review-directory {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width:900px) {
  .model-summary-layout {
    grid-template-columns: 170px minmax(0,1fr);
  }
}

@media (max-width:600px) {
  .review-brief {
    padding: 22px 20px;
  }

  .model-heading {
    gap: 15px;
    margin-bottom: 22px;
  }

  .model-heading h2 {
    font-size: 24px;
    line-height: 1.3;
  }

  .model-score {
    padding: 10px;
    max-width: 75px;
  }

  .model-score>strong {
    font-size: 25px;
  }

  .model-score>span {
    font-size: 12px;
  }

  .model-summary-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .model-photo {
    width: 100%;
    height: auto;
    min-height: 140px;
    aspect-ratio: auto;
  }

  .model-summary-copy>p:not(.label) {
    font-size: 15px;
    line-height: 1.85;
  }

  .review-related>div {
    grid-template-columns: 1fr;
  }

  .review-related>div>a {
    font-size: 13px;
    padding: 16px 18px;
  }

  .review-directory {
    grid-template-columns: 1fr;
    gap: 14px;
    padding-bottom: 40px;
  }

  .review-directory-card {
    padding: 22px;
  }

  .review-directory-card h2 {
    font-size: 24px;
    margin-bottom: 24px;
  }

  .review-brief .opbouw {
    gap: 18px;
  }

  .review-brief .opbouw dt {
    font-size: 12px;
  }

  .review-brief .opbouw dd {
    font-size: 17px;
  }
}

@media (max-width:480px) {
  .model-heading {
    display: block;
  }

  .model-score {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    max-width: none;
    margin-top: 18px;
    padding: 10px 14px;
  }

  .model-score>span {
    margin: 0;
    max-width: none;
    text-align: left;
    font-size: 12px;
  }
}

/* 10. Choice aid and recommendations */

.choice-guide {
  padding-block: 28px 44px;
}

.choice-disclosure {
  background: linear-gradient(115deg,#edf3ff,#f7f9fd 65%,#f1f6e6);
  border: 1px solid #cbd9f0;
  border-radius: 20px;
  overflow: hidden;
}

.choice-disclosure>summary {
  list-style: none;
  display: flex;
  gap: 22px;
  align-items: center;
  cursor: pointer;
  padding: 28px 32px;
}

.choice-disclosure>summary::-webkit-details-marker {
  display: none;
}

.choice-symbol {
  width: 62px;
  height: 62px;
  border-radius: 18px;
  background: var(--blue);
  color: white;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  box-shadow: 0 5px 14px #195cff1a;
  transform: rotate(-5deg);
}

.choice-symbol svg {
  height: 34px;
  width: 34px;
  stroke-width: 1.8;
  fill: none;
  stroke: currentColor;
}

.choice-summary-copy {
  display: grid;
  gap: 6px;
  flex: 1;
}

.choice-kicker {
  color: #42618b;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.6;
  display: block;
}

.choice-summary-copy>strong {
  font-family: var(--font-heading);
  font-size: 25px;
  line-height: 1.3;
  letter-spacing: -.035em;
  color: var(--dark);
  font-weight: 650;
}

.choice-summary-copy>span:last-child {
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted);
}

.choice-start {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 48px;
  padding: 12px 18px;
  background: white;
  border: 1px solid #cbd9f0;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 650;
  color: var(--blue);
  flex-shrink: 0;
}

.choice-chevron {
  font-size: 20px;
  line-height: 1;
}

.choice-disclosure[open] .choice-chevron {
  transform: rotate(90deg);
}

.choice-body {
  padding: 28px 32px 30px;
  border-top: 1px solid #d6e1f1;
  background: white;
}

.choice-body fieldset {
  border: 0;
  padding: 0;
  margin: 0 0 26px;
  min-width: 0;
}

.choice-body legend {
  font-size: 19px;
  font-weight: 650;
  line-height: 1.5;
  color: var(--dark);
  padding: 0;
  margin-bottom: 12px;
}

.choice-body legend>span {
  display: inline-grid;
  place-items: center;
  vertical-align: middle;
  background: #edf3ff;
  color: var(--blue);
  width: 28px;
  height: 28px;
  border-radius: 8px;
  margin-right: 8px;
  font-size: 13px;
}

.choice-help {
  font-size: 13px;
  line-height: 1.7;
  color: var(--muted);
  max-width: 85ch;
  margin: 0 0 14px;
}

.choice-options {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
}

.choice-options label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  border: 1px solid #d5dfed;
  background: #fff;
  border-radius: 12px;
  padding: 17px 14px;
  cursor: pointer;
  min-height: 84px;
}

.choice-options label:hover {
  border-color: #789de8;
  background: #f8faff;
}

.choice-options label:has(input:checked) {
  border-color: var(--blue);
  background: #edf3ff;
  box-shadow: 0 0 0 1px var(--blue);
}

.choice-options input {
  accent-color: var(--blue);
  width: 18px;
  height: 18px;
  margin: 3px 0 0;
  flex-shrink: 0;
}

.choice-options strong {
  display: block;
  font-size: 14px;
  font-weight: 650;
  color: var(--dark);
  line-height: 1.6;
}

.choice-options small {
  display: block;
  font-size: 12px;
  line-height: 1.6;
  color: var(--quiet);
  margin-top: 3px;
}

.choice-submit {
  display: flex;
  gap: 18px;
  align-items: center;
  flex-wrap: wrap;
}

.choice-submit>span {
  font-size: 12px;
  color: var(--quiet);
}

.choice-result {
  border: 1px solid #d8e4c0;
  background: #f5f9ec;
  border-radius: 14px;
  margin-top: 26px;
  padding: 26px;
}

.choice-result h3 {
  font-size: 25px;
  line-height: 1.35;
  margin: 12px 0;
  color: var(--dark);
}

.choice-result p {
  font-size: 15px;
  line-height: 1.8;
  max-width: 80ch;
  margin: 0 0 16px;
  color: #40516c;
}

.choice-result-caveat {
  border-top: 1px solid #d8e4c0;
  padding-top: 14px;
  font-size: 13px;
}

.choice-result-caveat>strong {
  color: #334b21;
}

.choice-result-actions {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}

.choice-result-actions .shop-action {
  min-width: 190px;
}

.choice-review {
  font-size: 14px;
  font-weight: 650;
  color: var(--blue);
  text-underline-offset: 4px;
}

.choice-review:hover {
  text-decoration: underline;
}

.choice-no-match {
  background: var(--pale);
  border-color: #d5dfed;
}

.choice-body .choice-scope, .choice-fallback {
  font-size: 12px;
  line-height: 1.8;
  color: var(--quiet);
  margin: 20px 0 0;
}

.choice-fallback a {
  text-decoration: underline;
  color: var(--blue);
}

.scroll-recommendation {
  background: var(--pale);
  border: 1px solid #d2dff2;
  border-radius: 14px;
  padding: 18px;
  margin: 0 0 24px;
}

.recommendation-name {
  display: block;
  font-family: var(--font-heading);
  font-size: 17px;
  font-weight: 650;
  line-height: 1.5;
  letter-spacing: -.025em;
  margin: 12px 0 8px;
  color: var(--dark);
}

.product-reviews-layout .recommendation-specs, .recommendation-specs {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.7;
  margin: 0 0 16px;
}

.product-reviews-layout .scroll-recommendation a.shop-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: white;
}

.product-reviews-layout a.choice-jump, .choice-jump {
  display: block;
  font-size: 12px;
  line-height: 1.7;
  color: #42618b;
  margin-top: 14px;
  text-decoration: none;
}

.choice-jump:hover {
  text-decoration: underline;
}

.mobile-recommendation {
  display: none;
}

.choice-guide :focus-visible, .scroll-recommendation :focus-visible, .mobile-recommendation :focus-visible {
  outline: 3px solid var(--blue);
  outline-offset: 4px;
}

@keyframes conversion-enter {
from{opacity:.5;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}
}

@keyframes shop-sheen {
from{transform:translateX(-190%) skewX(-18deg)}to{transform:translateX(330%) skewX(-18deg)}
}

@keyframes choice-wiggle {
0%,100%{transform:rotate(-5deg)}35%{transform:rotate(5deg)}70%{transform:rotate(-8deg)}
}

@media (prefers-reduced-motion:no-preference) {
  [data-conversion-reveal].conversion-entered {
    animation: conversion-enter .55s cubic-bezier(.2,.65,.3,1) backwards;
  }

  .conversion-entered .shop-button::after, .mobile-recommendation.first-appearance .shop-button::after {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 45%;
    pointer-events: none;
    background: linear-gradient(90deg,transparent,#ffffff38,transparent);
    animation: shop-sheen .85s .4s both;
  }

  .choice-guide.conversion-entered .choice-symbol {
    animation: choice-wiggle .75s .3s both;
  }

  .mobile-recommendation.first-appearance {
    animation: conversion-enter .35s both;
  }

  .choice-disclosure[open] .choice-body,.choice-result:not([hidden]) {
    animation: conversion-enter .3s both;
  }

  .choice-chevron, .choice-options label {
    transition: transform .2s,border-color .2s,background .2s;
  }
}

@media (max-width:1100px) {
  .choice-disclosure>summary {
    gap: 16px;
    padding: 24px;
  }

  .choice-summary-copy>strong {
    font-size: 22px;
  }

  .choice-symbol {
    width: 50px;
    height: 50px;
  }

  .choice-start {
    gap: 10px;
    padding: 12px;
  }

  .choice-body {
    padding: 24px;
  }

  .scroll-recommendation {
    padding: 14px;
  }

  .recommendation-name {
    font-size: 15px;
  }
}

@media (max-width:900px) {
  .scroll-recommendation {
    display: none;
  }

  .mobile-recommendation:not([hidden]) {
    display: block;
    position: fixed;
    inset: auto 0 0;
    z-index: 40;
    background: #fff;
    border-top: 1px solid #d2dff2;
    box-shadow: 0 -6px 24px #14234210;
    padding: 10px 10px calc(10px + env(safe-area-inset-bottom));
  }

  .mobile-recommendation-inner {
    max-width: 640px;
    margin: auto;
    display: grid;
    grid-template-columns: minmax(0,1fr) auto 44px;
    align-items: center;
    gap: 10px;
  }

  .mobile-recommendation-copy {
    min-width: 0;
  }

  .mobile-recommendation-copy>strong {
    display: block;
    color: var(--dark);
    font-size: 13px;
    line-height: 1.45;
    margin-top: 5px;
    max-width: 30ch;
  }

  .mobile-recommendation .recommendation-label { line-height: 1.5; }

  .mobile-recommendation .shop-button {
    gap: 8px;
  }

  .mobile-recommendation .shop-retailer {
    font-size: 10px;
  }

  .mobile-recommendation .shop-action {
    gap: 3px;
  }

  .recommendation-close {
    border: 0;
    background: transparent;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 6px;
    color: var(--quiet);
  }

  .recommendation-close svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.75;
  }

  body.has-mobile-recommendation {
    padding-bottom: var(--recommendation-height,110px);
  }

  html.has-mobile-recommendation {
    scroll-padding-bottom: calc(var(--recommendation-height,110px) + 16px);
  }

  .choice-start {
    font-size: 13px;
  }

  .choice-options {
    grid-template-columns: 1fr;
  }

  .choice-options label {
    min-height: 64px;
  }
}

@media (max-width:600px) {
  .choice-guide {
    padding-block: 20px 32px;
  }

  .choice-disclosure {
    border-radius: 16px;
  }

  .choice-disclosure>summary {
    display: grid;
    grid-template-columns: 40px minmax(0,1fr);
    gap: 14px;
    padding: 20px;
  }

  .choice-symbol {
    width: 40px;
    height: 40px;
    border-radius: 12px;
  }

  .choice-symbol svg {
    width: 28px;
    height: 28px;
  }

  .choice-summary-copy>strong {
    font-size: 21px;
  }

  .choice-summary-copy>span:last-child {
    font-size: 13px;
  }

  .choice-kicker {
    font-size: 10px;
  }

  .choice-start {
    grid-column: 1/-1;
    justify-content: space-between;
    margin-top: 2px;
  }

  .choice-body {
    padding: 22px 18px;
  }

  .choice-body legend {
    font-size: 17px;
  }

  .choice-body legend>span {
    width: 24px;
    height: 24px;
    margin-right: 5px;
  }

  .choice-submit {
    gap: 10px;
  }

  .choice-result {
    padding: 20px;
  }

  .choice-result h3 {
    font-size: 22px;
  }

  .choice-result-actions {
    display: grid;
    gap: 16px;
  }

  .choice-result-actions .shop-action {
    min-width: 0;
  }
}

@media (max-width:360px) {
  .mobile-recommendation-inner {
    gap: 6px;
  }

  .mobile-recommendation .shop-button svg {
    display: none;
  }

  .mobile-recommendation-copy>strong {
    font-size: 12px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .choice-guide *, .scroll-recommendation *, .mobile-recommendation * {
    animation: none;
    transition: none;
  }
}

@media print {
  .mobile-recommendation, .scroll-recommendation, .choice-guide {
    display: none;
  }
}

/* Reading explanations: the original paragraphs remain inside each pattern. */
.reading-comparison, .reading-features, .reading-callout, .reading-flow {
  margin: 28px 0;
  max-width: 100%;
}
.reading-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(min(100%,310px),1fr));
  gap: 20px;
  align-items: stretch;
}
.reading-item { min-width: 0; }
.reading-columns > .reading-item {
  padding: var(--panel-padding);
  border: 1px solid var(--line);
  border-radius: var(--card-radius);
  background: var(--pale);
}
.reading-columns > .reading-item:nth-child(even) { background: #fff; }
.reading-item h3, .reading-feature h3, .reading-callout h3 {
  margin: 0 0 16px;
  color: #244d8c;
  font-size: 20px;
  line-height: 1.45;
}
.reading-item-copy, .reading-feature-copy { min-width: 0; }
.reading-item-copy p, .reading-feature-copy p, .reading-callout p {
  max-width: none;
  margin: 0 0 18px;
  font-size: var(--body-size);
}
.reading-item-copy > :last-child, .reading-feature-copy > :last-child, .reading-callout > :last-child { margin-bottom: 0; }
.reading-rows, .reading-features {
  border: 1px solid var(--line);
  border-radius: var(--card-radius);
  overflow: hidden;
}
.reading-rows > .reading-item, .reading-feature {
  display: grid;
  grid-template-columns: minmax(140px,.8fr) minmax(0,2.2fr);
  gap: 28px;
  padding: var(--panel-padding);
  background: #fff;
}
.reading-rows > .reading-item + .reading-item, .reading-feature + .reading-feature { border-top: 1px solid var(--line); }
.reading-rows > .reading-item:nth-child(even), .reading-feature:nth-child(even) { background: #f7f9fd; }
.reading-rows .reading-item h3, .reading-feature h3 { margin-bottom: 0; font-size: 18px; }
.reading-callout {
  padding: var(--panel-padding);
  border: 1px solid var(--line);
  border-left: 4px solid #8baeea;
  border-radius: var(--table-radius);
  background: var(--pale);
}
.reading-flow {
  padding: var(--panel-padding);
  border: 1px solid var(--line);
  border-radius: var(--card-radius);
  background: var(--pale);
}
.reading-flow figcaption { margin-bottom: 24px; color: var(--dark); font: 650 21px/1.4 var(--font-heading); }
.prose .reading-flow-list {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 24px;
  list-style: none;
  counter-reset: air-step;
  max-width: none;
  margin: 0;
  padding: 0;
}
.prose .reading-flow-list > li {
  position: relative;
  counter-increment: air-step;
  margin: 0;
  padding: 0;
}
.reading-flow-list > li::before, .reading-step-number {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid #d4e1fb;
  border-radius: var(--control-radius);
  background: #eaf0ff;
  color: #2458b5;
  font: 650 18px/1 var(--font-heading);
}
.reading-flow-list > li::before { content: counter(air-step); margin-bottom: 16px; }
.reading-flow-list > li:not(:last-child)::after {
  content: '→';
  position: absolute;
  top: 8px;
  right: 0;
  color: #6c8bb8;
}
.chapter .reading-step-title { display: flex; align-items: flex-start; gap: 16px; }
.reading-step-title > span:last-child { min-width: 0; overflow-wrap: anywhere; hyphens: auto; }
.reading-step-number { flex: 0 0 40px; margin-top: 2px; }
@media (max-width:600px) {
  .reading-columns { grid-template-columns: 1fr; gap: 16px; }
  .chapter .reading-step-title { display: block; }
  .reading-step-title > span:last-child { display: block; }
  .reading-step-number { margin: 0 0 12px; }
  .reading-rows > .reading-item, .reading-feature { grid-template-columns: 1fr; gap: 14px; }
  .reading-item h3, .reading-callout h3 { font-size: 19px; }
  .prose .reading-flow-list { grid-template-columns: 1fr; gap: 24px; }
  .prose .reading-flow-list > li { padding-left: 56px; min-height: 40px; }
  .reading-flow-list > li::before { position: absolute; left: 0; top: 0; margin: 0; }
  .reading-flow-list > li:not(:last-child)::after { content: ''; top: 48px; bottom: -16px; right: auto; left: 19px; width: 1px; background: #c7d8f0; }
}

/* 11. Review explanations: reusable figures, using the shared design values. */

.review-facts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 24px;
  max-width: var(--reading-width);
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid var(--line);
}

.review-facts a { display: block; padding-left: 20px; border-left: 3px solid #dce7ff; }
.review-facts a:hover { border-left-color: var(--blue); }
.review-facts strong { display: block; font: 650 25px/1.3 var(--font-heading); color: var(--dark); letter-spacing: -.03em; }
.review-facts span { display: block; margin-top: 8px; font-size: 13px; line-height: 1.6; color: var(--muted); }
.review-use-label { margin-bottom: 16px; }
.model-visual { min-width: 0; }

.review-insight {
  margin: 30px 0;
  padding: var(--panel-padding);
  border: 1px solid var(--line);
  border-radius: var(--card-radius);
  background: var(--pale);
}

.review-insight h3 { margin: 0 0 24px; font-size: 21px; }
.review-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; margin: 0; }
.review-metrics > div { min-width: 0; display: flex; flex-direction: column; padding-left: 20px; border-left: 1px solid #cbd8eb; }
.review-metrics > div:first-child { border: 0; padding-left: 0; }
.review-metrics dt { font-size: 13px; line-height: 1.6; color: var(--muted); }
.review-metrics dd { order: -1; margin: 0 0 12px; }
.review-metrics strong { display: block; font: 650 31px/1.25 var(--font-heading); color: var(--blue); letter-spacing: -.04em; }
.review-metrics dd span { display: block; margin-top: 7px; font-size: 12px; line-height: 1.5; color: var(--dark); }
.review-insight p.review-visual-note { font-size: 13px; line-height: 1.8; color: var(--muted); margin: 22px 0 0; }
.review-saving { background: #f5faed; border-color: #dae6c6; }
.review-saving .review-metrics strong { color: #365b20; font-size: 26px; }

.review-bars { padding: var(--panel-padding); background: #fff; }
.review-bars figcaption { max-width: none; }
.review-chart-axis { display: flex; justify-content: space-between; gap: 16px; font-size: 12px; line-height: 1.5; color: var(--quiet); margin-bottom: 16px; }
.review-chart-axis span:last-child { text-align: right; }
.review-bar { padding-block: 18px; border-top: 1px solid #eaf0f6; }
.review-bar-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 12px; }
.review-bar-heading > div { min-width: 0; font-size: 14px; font-weight: 650; line-height: 1.5; }
.review-bar-heading > div span { display: block; margin-top: 4px; color: var(--quiet); font-size: 12px; font-weight: 400; }
.review-bar-heading strong { flex-shrink: 0; color: var(--dark); font-size: 16px; }
.review-bars .metric-track { height: 10px; background: #f0f3f9; }
.review-bars .metric-track > span { background: #9fb4d2; }
.review-bar.is-current .metric-track > span { background: var(--blue); }
.review-bar.is-current .review-bar-heading { color: var(--blue); }
.review-bar.is-current .review-bar-heading strong { color: var(--blue); }
.review-schedule { background: linear-gradient(120deg,#f1f5ff,#fff); }
.review-bars p.chart-note { max-width: none; font-size: 13px; line-height: 1.8; margin-bottom: 0; padding-top: 18px; border-top: 1px solid var(--line); }

.table-scroll .review-comparison-table { table-layout: fixed; min-width: 680px; }
.table-scroll .review-comparison-table thead th:first-child { width: 24%; }
.table-scroll .review-comparison-table .table-current-model { background: #edf3ff; }
.table-scroll .review-comparison-table thead .table-current-model { background: #dfeaff; box-shadow: inset 0 3px 0 var(--blue); color: #174ba4; }
.table-scroll .review-alternatives-table .table-current-model { background: #edf3ff; color: #244d8c; font-weight: 600; }
.table-scroll .review-alternatives-table thead .table-current-model { background: #dfeaff; box-shadow: inset 0 3px 0 var(--blue); }

@media (max-width: 600px) {
  .review-facts { gap: 20px; }
  .review-facts a { padding-left: 12px; }
  .review-facts strong { font-size: 20px; }
  .review-facts span { font-size: 12px; }
  .review-metrics { grid-template-columns: 1fr; gap: 20px; }
  .review-metrics > div, .review-metrics > div:first-child { border: 0; border-bottom: 1px solid var(--line); padding: 0 0 18px; }
  .review-metrics > div:last-child { border-bottom: 0; padding-bottom: 0; }
  .review-metrics strong { font-size: 30px; }
  .review-metrics dd { display: flex; align-items: baseline; gap: 12px; margin-bottom: 6px; }
  .review-metrics dd span { margin: 0; }
  .review-saving .review-metrics { gap: 14px; }
  .review-saving .review-metrics > div { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 12px; padding-bottom: 14px; }
  .review-saving .review-metrics dd { margin: 0; }
  .review-saving .review-metrics strong { font-size: 22px; }
  .review-insight h3 { font-size: 20px; }
  .review-bar-heading { align-items: start; gap: 12px; }
  .review-bar-heading strong { font-size: 14px; }
}

@media (max-width: 420px) {
  .review-facts { grid-template-columns: 1fr; gap: 15px; padding-top: 24px; }
  .review-facts a { display: grid; grid-template-columns: 120px minmax(0,1fr); align-items: center; gap: 14px; }
  .review-facts span { margin-top: 0; }
}

/* Review reading patterns. Text remains full size, with the shared prose measure. */
.review-hero .lead { max-width: var(--prose-measure); }
.review-facts a { min-height: 44px; }
.review-use-label { background: #e5edff; color: #244d8c; }
.prose ul.review-limits { list-style: none; padding: 0; margin: 24px 0; border: 1px solid var(--line); border-radius: var(--table-radius); overflow: hidden; max-width: var(--prose-measure); }
.review-limits li { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; margin: 0; padding: 15px 20px; background: #f7f9fc; border-bottom: 1px solid var(--line); }
.review-limits li:last-child { border: 0; }
.review-limits strong { flex-shrink: 0; font-variant-numeric: tabular-nums; }
.review-reading-panel { margin: 28px 0; padding: var(--panel-padding); border: 1px solid var(--line); border-radius: var(--card-radius); background: var(--pale); }
.review-reading-panel h3 { margin: 0 0 18px; font-size: 21px; color: var(--dark); }
.review-reading-panel > p:not(.label) { max-width: var(--prose-measure); }
.review-reading-panel > p:last-child { margin-bottom: 0; }
.review-service { border: 0; border-left: 3px solid #9fb4d2; border-radius: 0; background: #f7f9fc; }
.review-positive, .review-caution { background: none; border: 0; border-left: 3px solid #8ba5cc; border-radius: 0; padding-block: 4px; }
.review-caution { border-left-color: #be934f; }
.review-positive h3, .review-caution h3 { font-size: 17px; letter-spacing: 0; }
.review-fact-sheet { margin: 28px 0; padding: var(--panel-padding); border: 1px solid var(--line); border-radius: var(--card-radius); background: #fff; }
.review-fact-sheet figcaption { font: 650 21px/1.4 var(--font-heading); color: var(--dark); margin-bottom: 24px; }
.review-fact-sheet dl { margin: 0; }
.review-fact-sheet dl > div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); gap: 28px; padding: 18px 0; border-top: 1px solid var(--line); }
.review-fact-sheet dt { color: var(--muted); font-size: 14px; line-height: 1.6; }
.review-fact-sheet dd { margin: 0; }
.review-fact-sheet dd strong { display: block; font: 650 21px/1.4 var(--font-heading); color: var(--dark); }
.review-fact-sheet dd span { display: block; margin-top: 6px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.review-fact-sheet p.review-visual-note { font-size: 13px; line-height: 1.8; color: var(--muted); margin: 8px 0 0; padding-top: 18px; border-top: 1px solid var(--line); max-width: none; }
.review-verdict { padding: var(--panel-padding); background: #f5faed; border: 1px solid #dae6c6; border-radius: var(--card-radius); }
.review-verdict .review-offer { padding: 24px 0 0; margin: 26px 0 0; border: 0; border-top: 1px solid #cddcbd; border-radius: 0; background: none; }
.review-verdict .review-offer h3 { font-size: 20px; margin: 0 0 12px; }
.review-offer p:not(.label) { font-size: 13px; margin-bottom: 0; }
.review-offer p:first-of-type { font-size: 15px; margin-bottom: 8px; }
.review-sources { padding-top: 0; margin-bottom: 0; }
.review-sources ul { columns: 2; column-gap: 40px; }
.review-sources li { break-inside: avoid; padding-block: 3px; }
.review-sources a { display: block; }

/* Native table scrolling, enhanced with controls only when columns overflow. */
.table-controls { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px 16px; margin: 26px 0 10px; font-size: 13px; line-height: 1.6; color: var(--muted); }
.table-control-title { grid-column: 1/-1; font-size: var(--table-font-size); font-weight: 650; color: var(--dark); }
.table-scroll caption.table-caption-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; padding: 0; border: 0; }
.table-controls > div { display: flex; gap: 8px; flex-shrink: 0; }
.table-controls button { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid #bacce5; border-radius: var(--control-radius); background: white; color: var(--blue); font-size: 22px; }
.table-controls button:disabled { color: #718098; background: #f3f6fc; border-color: var(--line); cursor: default; }
.table-controls:not([hidden]) + .table-scroll { margin-top: 0; }
.table-scroll.is-enhanced + .table-swipe-hint { display: none; }
.table-scroll table a { display: inline-block; }
.table-scroll.has-overflow thead th:first-child, .table-scroll.has-overflow tbody th:first-child { position: sticky; left: 0; z-index: 1; box-shadow: 2px 0 0 #dce5ef; }
.sidebar nav a[aria-current="location"] { color: var(--blue); border-left: 2px solid var(--blue); background: #f3f6fc; margin-left: -18px; padding-left: 16px; }

@media (max-width:600px) {
  .review-reading-panel h3, .review-fact-sheet figcaption { font-size: 20px; }
  .review-positive h3, .review-caution h3 { font-size: 17px; }
  .review-fact-sheet dl > div { grid-template-columns: 1fr; gap: 8px; }
  .review-sources ul { columns: 1; }
  .table-scroll.has-overflow table { table-layout: fixed; }
  .table-scroll.has-overflow thead th:first-child { min-width: 0; width: 140px; }
  .table-scroll.has-overflow thead th:not(:first-child) { min-width: 0; }
  .table-controls { gap: 8px; font-size: 12px; }
  .review-bar-heading > div { overflow-wrap: anywhere; }
  .review-brief .model-summary-copy > p:not(.label) { font-size: var(--body-size); line-height: var(--body-leading); }
}

/* 12. Interaction and accessibility apply equally to every component. */

@media (prefers-reduced-motion: no-preference) {
  .button, .shop-button, .site-shop { transition: background 160ms, box-shadow 160ms; }
  .pick-card { transition: box-shadow 180ms, transform 180ms; }
  .pick-card:hover { box-shadow: 0 12px 30px #223d6910; transform: translateY(-3px); }
  .page-chart.chart-entered .metric-track > span { animation: bar-enter 850ms cubic-bezier(.2,.65,.3,1) both; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

@media print {
  .table-controls { display: none; }
  .table-scroll caption.table-caption-sr { position: static; width: auto; height: auto; clip-path: none; white-space: normal; }
  .header, .sidebar, .contents, .mobile-recommendation, .scroll-recommendation, .choice-guide { display: none; }
  .content-layout, .product-reviews-layout { display: block; }
  .wrap { width: 100%; }
}

/* 14. Shared review prices: merchant rows and Wasmachine-info price history. */
.review-price-comparison { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding-block: var(--panel-padding); }
.price-section-heading, .price-history-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.price-section-heading h2, .price-history-heading h2, .review-price-history > h2 { margin:0; font-size:var(--h2-size); line-height:1.3; letter-spacing:-.035em; }
.price-section-heading > a, .price-text-link { color:var(--blue); font-size:14px; font-weight:600; text-underline-offset:4px; }
.chapter p.price-model-name, .chapter p.price-history-subtitle { margin:10px 0 14px; color:var(--muted); font-size:15px; }
.merchant-comparison { list-style:none; padding:0; margin:0; container-type:inline-size; }
.merchant-row { display:grid; grid-template-columns:minmax(130px,1fr) minmax(130px,1fr) auto; align-items:center; gap:20px; padding:22px 0; border-bottom:1px solid var(--line); min-width:0; }
.merchant-row:last-child { border-bottom:0; }
.merchant-name { display:flex; align-items:center; min-width:0; font-size:17px; height:48px; }
.merchant-logo { display:block; width:112px; max-width:100%; height:auto; max-height:44px; object-fit:contain; object-position:left center; }
.merchant-logo[alt="Coolblue"] { width:44px; }
.merchant-logo[alt="AEG"] { width:80px; }
.merchant-logo[alt="Bol.com"] { width:110px; }
.merchant-logo[alt="EP.nl"] { width:68px; }
.merchant-logo[alt="Samsung"] { width:132px; }
.merchant-logo[alt="Voordeligwitgoed.nl"] { width:160px; }
.merchant-price { min-width:0; }
.merchant-price > strong { display:block; font-family:var(--font-heading); font-size:15px; line-height:1.5; }
.merchant-price > span { display:block; font-size:12px; color:var(--muted); margin-top:5px; line-height:1.5; }
.merchant-comparison .shop-link { margin:0; min-height:var(--button-height); white-space:nowrap; }
.chapter p.price-source-note { font-size:13px; line-height:1.7; color:var(--muted); margin:16px 0 0; max-width:var(--text-measure); }
.review-price-history { padding:var(--panel-padding); background:#f5f8fd; border:1px solid #dce6f4; border-radius:var(--card-radius); }
.price-history-count { display:inline-block; color:var(--blue); font-size:var(--label-size); font-weight:600; padding:var(--label-padding); border:1px solid #dce6f4; border-radius:100px; white-space:nowrap; }
.price-history-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:24px 0; }
.price-history-stats > div { min-width:0; }
.price-history-stats dt { font-size:13px; color:var(--muted); }
.price-history-stats dd { font:700 30px/1.3 var(--font-heading); margin:5px 0 0; letter-spacing:-.04em; }
.chapter p.price-history-insight { font-size:16px; line-height:1.8; max-width:var(--prose-measure); margin:0; }
.review-price-history figure { margin:24px 0 0; }
.review-price-history figcaption { font-size:13px; line-height:1.6; color:var(--muted); }
.price-chart { position:relative; display:grid; grid-template-columns:58px minmax(0,1fr); margin-top:20px; height:240px; }
.price-chart-axis { display:flex; flex-direction:column; justify-content:space-between; font-size:12px; color:var(--muted); padding:12px 0; }
.price-chart-svg { width:100%; height:240px; overflow:visible; touch-action:pan-y; }
.price-chart-svg line { stroke:#d6e0ef; stroke-width:1; vector-effect:non-scaling-stroke; }
.price-chart-svg .price-chart-line { stroke:var(--blue); stroke-width:2.5; fill:none; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.price-chart-svg .price-chart-cursor { stroke:#839bc6; stroke-dasharray:4 5; }
.price-chart-point { fill:var(--blue); stroke:white; stroke-width:2; vector-effect:non-scaling-stroke; }
.price-chart-dates { display:flex; justify-content:space-between; margin-left:58px; font-size:11px; line-height:1.5; color:var(--muted); gap:8px; }
.price-history-controls { display:none; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; gap:12px; max-width:450px; margin:22px auto 6px; }
.price-history-controls output { font-size:15px; font-weight:600; text-align:center; line-height:1.5; }
.price-history-controls button { font:inherit; display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #cfdaec; border-radius:50%; background:white; color:var(--blue); cursor:pointer; }
.price-history-controls button:disabled { opacity:.4; cursor:default; }
.review-price-history input[type=range] { display:none; width:100%; accent-color:var(--blue); cursor:pointer; min-height:44px; margin:0; }
.chapter p.price-range-hint { display:none; text-align:center; font-size:12px; color:var(--muted); line-height:1.6; margin:6px 0 0; }
.price-history-ready .price-history-controls { display:grid; }
.price-history-ready input[type=range], .price-history-ready p.price-range-hint { display:block; }
.price-data { border-top:1px solid var(--line); margin-top:24px; padding-top:12px; }
.price-data summary { display:list-item; font-size:14px; font-weight:600; color:var(--blue); cursor:pointer; padding:10px 0; min-height:44px; }
.price-data-scroll { max-height:330px; overflow:auto; margin-top:12px; border:1px solid var(--line); border-radius:var(--table-radius); background:white; }
.price-data table { border-collapse:collapse; width:100%; font-size:var(--table-font-size); min-width:0; }
.price-data caption { text-align:left; padding:var(--table-padding); color:var(--muted); }
.price-data td, .price-data th { padding:var(--table-padding); text-align:left; border-bottom:1px solid var(--line); font-weight:400; }
.price-data thead th { position:sticky; top:0; background:#eef4ff; font-weight:600; }
.price-data td:last-child, .price-data thead th:last-child { text-align:right; white-space:nowrap; }
.chapter p.price-empty { font-size:16px; color:var(--muted); margin:18px 0; }
@container (max-width:550px) {
  .merchant-row { grid-template-columns:minmax(0,1fr) auto; gap:12px 16px; }
  .merchant-name { grid-row:1; }
  .merchant-price { grid-row:1; text-align:right; max-width:175px; }
  .merchant-price > strong { font-size:14px; }
  .merchant-comparison .shop-link { grid-column:1 / -1; justify-self:stretch; }
}
@media (max-width:600px) {
  .price-section-heading, .price-history-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .price-history-heading h2 { max-width:14ch; }
  .price-history-stats { gap:10px; margin:22px 0; }
  .price-history-stats dd { font-size:clamp(19px,5.8vw,27px); }
  .price-history-stats dt { font-size:12px; line-height:1.4; min-height:2.8em; }
  .chapter p.price-history-insight { font-size:15px; }
  .price-chart, .price-chart-svg { height:200px; }
  .price-chart { grid-template-columns:49px minmax(0,1fr); }
  .price-chart-axis { font-size:11px; padding:10px 0; }
  .price-chart-dates { margin-left:49px; }
  .price-chart-dates span:nth-child(2), .price-chart-dates span:nth-child(4) { display:none; }
  .price-chart-dates span { max-width:65px; }
  .price-chart-dates span:last-child { text-align:right; }
  .price-history-controls { gap:8px; }
  .price-history-controls output { font-size:13px; }
}
@media (prefers-reduced-motion:no-preference) {
  .price-history-ready .price-chart-line { animation:price-chart-in .7s ease-out both; }
  @keyframes price-chart-in { from { opacity:.35; } to { opacity:1; } }
}
@media (max-width:360px) {
  .price-history-stats { grid-template-columns:1fr; gap:0; }
  .price-history-stats > div { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); }
  .price-history-stats dt { min-height:0; }
  .price-history-stats dd { font-size:22px; white-space:nowrap; margin:0; }
}
@media print {
  .price-history-controls, .review-price-history input[type=range], .price-range-hint { display:none!important; }
}

/* 15. Product reviews: verified hero imagery, clear criteria and a buying action. */
.review-hero-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr); align-items:center; gap:56px; }
.review-hero-layout .page-hero-copy { min-width:0; }
.review-hero-photo { width:100%; max-width:360px; justify-self:end; margin:0; padding:24px; border:1px solid var(--line); border-radius:var(--card-radius); background:#fff; }
.review-hero-photo img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.review-hero-photo figcaption { text-align:center; color:var(--muted); font-size:13px; line-height:1.6; margin-top:16px; }
.model-photo img { width:100%; height:auto; max-height:320px; object-fit:contain; }
.model-photo:has(img) { background:white; }
.review-position .review-metrics dt { font:650 17px/1.5 var(--font-heading); color:var(--dark); margin-bottom:16px; min-height:3em; }
.review-position .review-metrics dd { order:0; display:block; margin:0; }
.review-position .review-metrics strong { font-size:28px; }
.review-position .review-metrics dd span { font-size:13px; }
.review-position .review-metrics .review-metric-detail { margin-top:14px; padding-top:12px; border-top:1px solid #d5e0ef; color:var(--muted); }
.review-row-label { display:table; margin-top:10px; padding:4px 8px; font-size:11px; font-weight:600; line-height:1.5; border-radius:6px; }
.tone-positive { color:#29562f; background:#eaf3e8; }
.tone-caution { color:#78521c; background:#fff3dc; }
.tone-neutral { color:#3d526f; background:#eaf0f8; }
.review-position-table { table-layout:fixed; min-width:700px; }
.review-position-table thead th:first-child { width:29%; }
.review-position-table thead th:nth-child(2) { width:25%; }
.review-position-table[data-columns="4"] thead th:first-child { width:25%; }
.review-position-table[data-columns="4"] thead th:nth-child(2) { width:20%; }
.review-position-table td:first-of-type strong { color:#244d8c; font-weight:650; }
.has-review-buybar { padding-bottom:100px; }
.has-review-buybar .sidebar { max-height:calc(100dvh - var(--anchor-offset) - 110px); }
.review-buybar { position:fixed; inset:auto 0 0; z-index:95; background:#fff; border-top:1px solid #d9e3f0; box-shadow:0 -6px 30px #17365a10; }
.review-buybar[hidden] { display:none; }
.review-buybar-inner { display:flex; justify-content:space-between; align-items:center; gap:24px; padding-block:14px; }
.review-buybar-product { display:flex; align-items:center; gap:16px; min-width:0; }
.review-buybar-product img { width:50px; height:50px; object-fit:contain; flex-shrink:0; }
.review-buybar-product strong { display:block; font:650 17px/1.4 var(--font-heading); }
.review-buybar-product span { display:block; color:var(--muted); font-size:12px; line-height:1.5; margin-top:4px; }
.review-buybar-actions { display:flex; align-items:center; gap:24px; flex-shrink:0; }
.review-buybar-compare { font-size:13px; color:var(--muted); text-decoration:underline; text-underline-offset:4px; }
.review-buybar .button { margin:0; white-space:nowrap; }
@media (max-width:1000px) and (min-width:761px) {
  .review-hero-layout { grid-template-columns:minmax(0,1.7fr) minmax(200px,1fr); gap:28px; }
  .review-hero-layout .review-facts { gap:14px; }
  .review-hero-layout .review-facts strong { font-size:20px; }
  .review-hero-layout .review-facts a { padding-left:10px; }
}
@media (max-width:760px) {
  .review-hero-layout { grid-template-columns:1fr; gap:0; }
  .review-hero-layout .page-hero-copy { display:contents; }
  .review-hero-layout h1 { order:0; }
  .review-hero-photo { order:1; max-width:260px; justify-self:center; margin:8px 0 28px; padding:18px; }
  .review-hero-layout .lead { order:2; }
  .review-hero-layout .hero-actions { order:3; }
  .review-hero-layout .review-facts { order:4; }
  .review-hero-layout .page-date { order:5; }
}
@media (max-width:600px) {
  .table-scroll .review-position-table { display:block; min-width:0; width:100%; }
  .review-position-table caption { display:block; }
  .review-position-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .review-position-table tbody { display:block; }
  .review-position-table tbody tr { display:block; padding:18px 16px; border-bottom:1px solid var(--line); }
  .table-scroll .review-position-table tbody th, .table-scroll .review-position-table tbody td { display:block; position:static; width:100%; padding:0; border:0; background:none; box-shadow:none; }
  .table-scroll .review-position-table tbody th { font-size:15px; font-weight:650; line-height:1.5; }
  .table-scroll .review-position-table tbody td { padding-top:16px; }
  .review-position-table td::before { content:attr(data-column-label); display:block; margin-bottom:4px; font-size:11px; font-weight:500; color:var(--muted); }
  .review-position-table tbody tr:last-child { border-bottom:0; }
  .has-review-buybar { padding-bottom:120px; }
  .review-buybar-inner { display:grid; grid-template-columns:1fr; gap:10px; padding-block:12px; padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  .review-buybar-product img, .review-buybar-product span, .review-buybar-compare { display:none; }
  .review-buybar-product strong { font-size:14px; }
  .review-buybar-actions { display:grid; }
  .review-buybar .button { width:100%; min-height:46px; font-size:14px; }
  .review-position .review-metrics dt { margin-bottom:10px; min-height:0; }
  .review-position .review-metrics dd span { margin-top:7px; }
}
@media (prefers-reduced-motion:no-preference) {
  .review-buybar:not([hidden]) { animation:review-buybar-in 240ms ease-out both; }
  @keyframes review-buybar-in { from { transform:translateY(12px); opacity:0; } to { transform:translateY(0); opacity:1; } }
}
@media print { .review-buybar { display:none; } .has-review-buybar { padding-bottom:0; } }
/* TUINGIGANT — v18 component adaptation. Keep all design changes central. */
:root{--blue:#2E7D4E;--blue-hover:#16432A;--dark:#20281F;--muted:#66705F;--quiet:#66705F;--line:#E5EAE0;--pale:#F8FAF6;--lime:#c9ee87;--sr-font-head:Manrope,DM,Arial,sans-serif;--sr-font-body:DM,Arial,sans-serif;--tgb-head:var(--font-heading);--tgb-body:var(--font-body);--sr-radius:16px;--sr-radius-lg:16px;--anchor-offset:150px}
body{background:var(--sr-bg);color:var(--sr-ink)}button,input,select{font:inherit}button,a,input,summary{touch-action:manipulation}a,button{transition:background .18s,color .18s,border-color .18s}h1,h2,h3{letter-spacing:-.035em!important}.prose{color:var(--sr-ink)}.prose strong{color:inherit}.prose p{margin-bottom:20px}.prose>p{max-width:none}.prose h2{margin:40px 0 20px}.prose h3{margin:28px 0 14px}img{max-width:100%}main{min-height:60vh}.migration-main{width:calc(100% - var(--page-gutter)*2);max-width:1280px;margin:40px auto 80px}.migration-main>*{min-width:0}.button,.offer>a{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 22px;background:var(--sr-coral);color:#fff!important;border:1px solid transparent;border-radius:var(--control-radius);font-size:14px;font-weight:700;cursor:pointer;text-decoration:none!important}.button:hover,.offer>a:hover{background:var(--sr-coral-text)}.crumbs{font-size:13px;color:var(--muted);margin:0 0 24px;line-height:1.7}.crumbs a:hover{text-decoration:underline}.skip-link{z-index:100010!important}
/* Original accessible menus, re-composed into a two-row header. */
.sr-header{position:relative;z-index:1000;background:#fff;border-bottom:1px solid var(--line)}.sr-header__inner{max-width:1280px;padding:24px 0 0;width:calc(100% - var(--page-gutter)*2);display:grid;grid-template-columns:auto 1fr;gap:20px 60px}.sr-header__logo .sr-logo-img{height:42px;max-width:210px}.sr-header__actions{justify-self:end;gap:24px;width:min(560px,100%)}.sr-header__merken{order:2;font-weight:700}.sr-header__search{width:100%!important;display:flex!important;position:relative!important;background:var(--sr-bg)!important;border:1px solid var(--line)!important;border-radius:10px!important;height:46px!important;padding:0!important}.sr-header__search-open{display:none!important}.sr-header__search-input{display:block!important;width:100%!important;opacity:1!important;visibility:visible!important;padding:10px 44px 10px 18px!important;border:0!important;outline-offset:0!important;background:transparent!important;font-size:14px!important;height:44px!important}.sr-header__search-btn{display:flex!important;position:absolute!important;right:8px!important;top:5px!important;width:34px!important;height:34px!important;background:transparent!important;color:var(--sr-coral)!important;opacity:1!important;pointer-events:auto!important}.sr-nav{grid-column:1/-1;grid-row:2;justify-content:space-between;width:100%;border-top:1px solid var(--line);padding:8px 0;gap:4px}.sr-nav a{font-size:13px;font-weight:600;color:var(--sr-ink);padding:10px 8px}.sr-nav__toggle{color:var(--sr-coral)}.sr-mega{border-radius:0 0 16px 16px;box-shadow:0 20px 36px #20281f12}.sr-mega__feature{background:var(--sr-coral-tint)!important;border-radius:12px}.sr-mega__feature-title{color:var(--sr-coral-text)!important}.sr-mega__feature-kicker{color:var(--sr-muted)!important}.sr-mega__feature-text,.sr-mega__feature-cta{color:var(--sr-coral-text)!important}.sr-mega__dot{width:5px;height:5px}.sr-header__icon{flex-shrink:0}
/* Original homepage text and destinations, in the v18 spacing/hero composition. */
.sr-home{background:var(--sr-bg);font-family:var(--font-body)!important}.sr-hero{max-width:1280px;width:calc(100% - var(--page-gutter)*2);margin:32px auto 0;border-radius:24px;background:var(--sr-coral-tint)!important;padding:60px!important;overflow:hidden;color:var(--sr-ink)}.sr-hero__circle{display:none}.sr-hero__inner{max-width:none!important;margin:0!important;display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:20px 50px;align-items:start;text-align:left!important}.sr-hero__pill{grid-column:1;background:transparent!important;color:var(--sr-coral-text)!important;padding:0!important;font-size:13px!important;letter-spacing:.02em!important;font-weight:650!important;justify-self:start}.sr-hero__title{grid-column:1;max-width:18ch!important;font-size:clamp(32px,4vw,54px)!important;line-height:1.12!important;color:var(--sr-coral-text)!important;font-weight:750!important;margin:0!important}.sr-hero__sub{grid-column:1;max-width:54ch!important;color:var(--sr-muted)!important;font-size:17px!important;line-height:1.7!important;margin:0!important}.sr-hero__search{grid-column:1;width:100%!important;max-width:none!important;margin:8px 0 0!important;border:1px solid #fff!important;border-radius:10px!important;box-shadow:0 5px 18px #16432a08!important;padding:5px!important;display:flex!important}.sr-hero__search input{min-width:0!important;font-size:15px!important;padding:14px 12px!important}.sr-hero__search button{border-radius:8px!important;background:var(--sr-coral)!important;color:#fff!important;padding:12px 18px!important;font-weight:700!important}.sr-hero__chips{grid-column:1;justify-content:flex-start!important;gap:6px!important;margin:0!important}.sr-hero__chips-label{font-size:12px!important;color:var(--sr-muted)!important;flex-basis:100%;margin-bottom:4px}.sr-hero__chip{font-size:12px!important;border:1px solid #16432a20!important;border-radius:6px!important;padding:5px 10px!important;background:transparent!important;color:var(--sr-coral-text)!important}.sr-hero__chip:hover{background:#fff!important}.sr-herocar{grid-column:2;grid-row:1/6;align-self:center;min-width:0;max-width:100%!important;width:100%!important;margin:0!important;padding:20px!important;background:#ffffff90!important;border:1px solid #ffffff;border-radius:16px!important;overflow:hidden}.sr-herocar__label{color:var(--sr-coral-text)!important;font-size:13px!important;margin:0 0 14px!important;font-weight:700!important}.sr-herocar__pulse{display:none}.sr-herocar__track{display:flex!important;gap:12px!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;transform:none!important;padding-bottom:12px}.sr-herocar__tile{flex:0 0 100%!important;min-width:0!important;display:block!important;padding:18px!important;background:#fff!important;border:1px solid var(--line);border-radius:12px!important;scroll-snap-align:start;box-shadow:none!important}.sr-herocar__img{display:block!important;background:#fff!important;width:100%!important;height:210px!important;margin:0 0 18px!important;border-radius:8px!important}.sr-herocar__img img{height:210px!important;width:100%!important;object-fit:contain!important}.sr-herocar__meta{display:block!important}.sr-herocar__brand{color:var(--muted)!important;font-size:11px!important;letter-spacing:.04em!important;text-transform:uppercase;margin-bottom:7px;display:block}.sr-herocar__title{font-size:16px!important;line-height:1.5!important;color:var(--dark)!important;font-weight:650!important;display:block!important;white-space:normal!important}.sr-herocar__price{font-size:19px!important;color:var(--sr-coral-text)!important;font-weight:750!important;margin-top:10px;display:block}.carousel-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.carousel-controls button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--sr-coral-text)}.sr-valuestrip{max-width:1280px;width:calc(100% - var(--page-gutter)*2);margin:0 auto 12px!important;padding:22px 0!important;background:transparent!important;border-bottom:1px solid var(--line);border-radius:0!important;gap:20px}.sr-valuestrip__item{font-size:13px!important;color:var(--sr-muted)!important}.sr-valuestrip__item svg{color:var(--sr-coral)!important}.sr-section{max-width:1280px!important;width:calc(100% - var(--page-gutter)*2);margin:0 auto!important;padding:42px 0!important}.sr-section__head{margin-bottom:24px!important;gap:16px}.sr-section__title{font-size:30px!important;line-height:1.25!important;color:var(--dark)!important}.sr-section__link{font-size:13px!important;font-weight:650!important;color:var(--sr-coral)!important}.sr-types{gap:14px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.sr-type{background:#fff!important;border:1px solid var(--line)!important;border-radius:12px!important;padding:20px!important;box-shadow:none!important}.sr-type:hover{border-color:var(--sr-coral)!important;transform:translateY(-2px)}.sr-type__name{font-size:15px!important;color:var(--sr-ink)!important}.sr-type__count{font-size:12px!important;color:var(--sr-muted)!important}.sr-type__icon{background:var(--sr-coral-tint)!important;color:var(--sr-coral)!important;border-radius:10px!important}.sr-spotlight{background:var(--sr-coral-text)!important;border-radius:16px!important;padding:40px!important;box-shadow:none!important}.sr-spotlight__title,.sr-spotlight__sub,.sr-spotlight__kicker{color:white!important}.sr-spotlight__cta{background:var(--lime)!important;color:var(--sr-coral-text)!important;border-radius:8px!important;padding:12px 18px!important}.sr-genders{gap:12px!important}.sr-gender{border-radius:12px!important;border:1px solid var(--line)!important;box-shadow:none!important}.sr-gender__name{font-size:15px!important}.sr-brandchips{gap:10px!important}.sr-brandchip{border:1px solid var(--line)!important;background:#fff!important;border-radius:8px!important;padding:13px 18px!important;font-size:14px!important;box-shadow:none!important}.sr-brandchip:hover{border-color:var(--sr-coral)!important;color:var(--sr-coral)!important}.sr-brandchip__n{background:var(--sr-coral-tint)!important;color:var(--sr-coral-text)!important}.sr-step{background:#fff!important;border:1px solid var(--line);border-radius:16px!important;padding:28px!important}.sr-step__num{background:var(--sr-coral-tint)!important;color:var(--sr-coral-text)!important}.sr-step__title{font-size:20px!important}.sr-step__text{font-size:15px!important;color:var(--muted)!important;line-height:1.7!important}.sr-tip{background:var(--sr-yellow-tint)!important;border-radius:16px!important}.sr-tip__title{font-size:21px!important}.sr-tip__text{font-size:16px!important;line-height:1.8!important}
/* Shared catalogue and product cards. */
.catalog-hero{padding:0 0 32px;margin-bottom:32px;border-bottom:1px solid var(--line)}.catalog-hero h1{font-size:44px;line-height:1.2;margin-bottom:18px}.catalog-hero .prose{max-width:900px;font-size:16px;line-height:1.8;margin:0;color:var(--muted)}.catalog-hero .prose p:last-child{margin:0}.catalog-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;align-items:start}.catalog-sidebar{border:1px solid var(--line);background:white;border-radius:16px;padding:22px;min-width:0}.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line)}.filter-heading h2{font-size:17px;letter-spacing:-.02em!important}.filter-heading a{font-size:12px;color:var(--muted);text-decoration:underline}.filter-group{border-bottom:1px solid var(--line);padding:16px 0}.filter-group summary{font-size:14px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.filter-group summary:after{content:'+';font-size:19px;color:var(--sr-coral)}.filter-group[open] summary:after{content:'−'}.filter-choices{max-height:210px;overflow:auto;scrollbar-width:thin;padding:10px 4px 0 0}.filter-choice{display:grid!important;grid-template-columns:16px minmax(0,1fr) auto;align-items:start;gap:9px!important;margin:0!important;padding:7px 0!important;font-size:13px;line-height:1.5;cursor:pointer}.filter-choice input{width:16px!important;height:16px;margin:2px 0 0!important;accent-color:var(--sr-coral)}.filter-choice small{color:var(--muted);font-size:11px}.catalog-sidebar form>label{display:grid;gap:6px;font-size:13px;font-weight:600;margin:18px 0}.catalog-sidebar input[type=number],.catalog-sidebar select{width:100%;min-width:0;background:var(--sr-bg);border:1px solid var(--line);border-radius:8px;padding:10px;font-size:14px}.catalog-sidebar .button{width:100%;margin-top:8px}.catalog-sidebar form>a{display:block;text-align:center;font-size:12px;color:var(--muted);margin-top:12px}.mobile-filter-toggle{display:none}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 22px;font-size:14px;color:var(--muted);min-height:24px}.catalog-toolbar strong{color:var(--dark);font-weight:700}.catalog-toolbar>span{font-size:12px}.products,.sr-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important}.product-card,.sr-card{display:flex!important;flex-direction:column!important;min-width:0;padding:20px!important;border:1px solid var(--line)!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;color:var(--dark);text-decoration:none!important;transition:transform .2s,border-color .2s,box-shadow .2s}.product-card:hover,.sr-card:hover{border-color:#2e7d4e70!important;box-shadow:0 8px 28px #16432a09!important;transform:translateY(-3px)}.product-card>img,.sr-card__img{height:200px!important;width:100%!important;object-fit:contain!important;background:white!important;margin:0 0 20px!important}.sr-card__img img{object-fit:contain!important;height:200px!important;width:100%!important}.sr-card__body{padding:0!important;flex:1;display:flex;flex-direction:column}.product-card__brand,.sr-card__brand{font-size:10px!important;line-height:1.5;color:var(--muted)!important;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-weight:600;min-height:15px}.product-card h2,.product-card h3,.sr-card__title{font-size:15px!important;font-weight:650!important;line-height:1.6!important;letter-spacing:-.015em!important;margin:0 0 20px!important;overflow-wrap:anywhere}.product-card__bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--line)}.product-card__bottom>span:first-child{display:flex;flex-direction:column;gap:2px}.product-card__bottom small,.sr-card__from{font-size:11px!important;color:var(--muted)!important}.product-card strong,.sr-card__price{font-size:20px!important;line-height:1.35;font-weight:750!important;color:var(--sr-coral-text)!important}.card-arrow{display:grid;place-items:center;width:34px;height:34px;background:var(--sr-coral-tint);color:var(--sr-coral);border-radius:50%;font-size:19px}.sr-card__priceline{margin-top:auto!important;padding-top:15px!important;border-top:1px solid var(--line);gap:8px}.sr-badge{font-size:10px!important;padding:6px 8px!important}.product-image-unavailable{display:grid;place-items:center;min-height:200px;background:var(--pale);font-size:13px;color:var(--muted);margin-bottom:20px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:36px 0 0;padding:24px 0;border-top:1px solid var(--line);font-size:13px}.pagination a{padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;font-weight:650}.pagination a:hover{background:var(--sr-coral-tint)}
/* Product detail: large exact photograph, clear comparison, full existing copy. */
.product-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;margin:32px 0 56px}.product-images{background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;min-width:0;display:grid;place-items:center;gap:24px}.product-images:empty{display:none}.product-images img{width:100%;max-height:440px;object-fit:contain}.product-images picture{width:100%}.product-images figure{margin:0}.product-hero h1{font-size:36px;line-height:1.22;margin:12px 0 28px;overflow-wrap:anywhere}.product-hero>div>p:first-child{font-size:13px;font-weight:600;color:var(--sr-coral);letter-spacing:.02em}.product-hero .price{font-size:36px;font-weight:750;color:var(--sr-coral-text);margin:20px 0 0;line-height:1.4}.product-hero p{color:var(--muted);font-size:14px}.product-hero .button{margin-top:24px}.is-product .prose{padding:32px 0;border-top:1px solid var(--line);font-size:17px;line-height:1.8}.is-product .prose h2{margin-top:0}.specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:28px;background:var(--sr-surface-soft);border-radius:16px;margin:0 0 40px}.specs dt{font-size:12px;color:var(--muted)}.specs dd{margin:6px 0 0;font-size:15px;font-weight:600;overflow-wrap:anywhere}.specs a{color:var(--sr-coral);text-decoration:underline}.price-comparison{padding:32px;border:1px solid var(--line);border-radius:16px;background:#fff;margin:40px 0}.price-comparison h2{font-size:28px;margin-bottom:24px}.offers{display:grid;gap:0}.offer{display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center;padding:22px 0;border-top:1px solid var(--line)}.offer>strong{font-size:16px}.offer>span{font-weight:700;color:var(--sr-coral-text);font-size:20px}.offer small{display:block;font-size:12px;color:var(--muted);font-weight:400}.offer>a{font-size:12px}.offer[hidden]{display:none}#product-variant{padding:10px;border:1px solid var(--line);border-radius:8px;margin:0 0 16px 12px;max-width:90%;font-size:14px}.tip{padding:28px;background:var(--sr-yellow-tint);border-radius:16px;margin:32px 0}.tip h2{font-size:22px;margin-bottom:12px}.tip p{font-size:16px;line-height:1.8}.disclosure{font-size:12px;line-height:1.8;color:var(--muted);margin:24px 0 44px}.sr-related{margin:48px 0}.sr-related>h2{margin-bottom:24px}.migration-main table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:12px;background:#fff;margin:24px 0;font-size:14px;overflow:hidden}.migration-main td,.migration-main th{padding:17px 19px;border-bottom:1px solid var(--line);text-align:left}.migration-main th{background:var(--sr-coral-tint);font-weight:650}.migration-main tr:last-child td{border-bottom:0}.table-scroll{max-width:100%;overflow:auto;border-radius:12px}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
/* Reading layout from v18; no text is shortened. */
.reading-layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);gap:var(--column-gap);align-items:start}.reading-layout>.prose{min-width:0;max-width:none;line-height:1.8;margin:0}.reading-layout>.prose h1{margin-bottom:28px}.page-toc{position:sticky;top:30px;background:transparent;color:var(--dark);font-size:13px}.page-toc nav{display:grid;gap:14px;padding:12px 0 8px 17px;border-left:1px solid var(--line);line-height:1.55}.page-toc a{color:var(--muted)}.page-toc a:hover{color:var(--sr-coral)}.page-toc summary{font-weight:700;margin-bottom:8px}.tgb-article{max-width:none;padding:0}.tgb-article__inner{max-width:none}.tgb-article__body{max-width:none;font-size:17px;line-height:1.8;color:var(--dark)}.tgb-article__title{font-size:44px;margin-bottom:24px;max-width:28ch}.tgb-article__head{margin-bottom:32px}.tgb-article__hero{box-shadow:none;border-radius:16px;margin:24px 0 40px}.tgb-article__hero img{max-height:440px;object-fit:cover}.tgb-article__body h2{font-size:28px;margin:40px 0 20px}.tgb-article__body h3{font-size:22px}.tgb-blogindex{max-width:none;padding:0}.tgb-bloghero{background:var(--sr-coral-tint);color:var(--dark);border-radius:20px;padding:48px}.tgb-bloghero__title{color:var(--sr-coral-text);font-size:44px}.tgb-bloghero__lead{color:var(--muted)}.tgb-bloghero__kicker{background:transparent;color:var(--sr-coral);padding:0}.tgb-bloghero__chip{color:var(--sr-coral-text);border:1px solid #16432a20;background:transparent}.tgb-bloghero__circle{display:none}.tgb-card{border-radius:16px;box-shadow:none}.tgb-card__body{padding:24px}.tgb-card__title{font-size:19px;line-height:1.4}.tgb-card__cat,.tgb-chip{font-size:10px}.tgb-card__excerpt{font-size:14px}.tgb-related{max-width:none}.sr-listing{padding:0!important;max-width:none!important}.sr-listing__title{font-size:44px!important}.sr-brands-az__letter{font-size:28px!important}.sr-types-index .sr-typechips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.sr-typechips .sr-brandchip{justify-content:space-between}
/* Footer: same links, clearer hierarchy. */
.sr-footer{background:var(--sr-coral-text)!important;color:#fff!important;border:0!important;padding-top:56px!important}.sr-footer__inner{max-width:1280px!important;width:calc(100% - var(--page-gutter)*2);padding:0!important}.sr-footer__top{gap:30px!important;padding-bottom:40px!important}.sr-footer__logo,.sr-footer__col h4{color:#fff!important}.sr-footer__tag,.sr-footer__col a,.sr-footer__bar,.sr-footer__note{color:#ffffffb8!important}.sr-footer__col h4{font-size:14px!important;font-weight:700!important;margin-bottom:18px!important}.sr-footer__col a{font-size:13px!important;line-height:2!important}.sr-footer__col a:hover{color:#fff!important}.sr-footer__bar{border-top:1px solid #ffffff25!important;padding:24px 0!important;font-size:12px!important}.sr-footer__social{color:#fff!important;border:1px solid #ffffff30!important;background:transparent!important}
@media(min-width:1200px){.sr-nav__item{position:static}.sr-header__inner{position:relative}}
@media(max-width:1199px){.sr-header__inner{display:flex;padding:20px 0;gap:24px}.sr-header__actions{width:min(500px,65%);gap:12px}.sr-nav{width:min(90vw,380px);border-top:0;padding:80px 20px 30px;justify-content:flex-start;grid-row:auto;grid-column:auto;overflow-y:auto;visibility:hidden}.sr-nav.is-open{visibility:visible}.sr-header .sr-burger{display:inline-flex!important}.sr-nav a{font-size:15px}.sr-hero{padding:40px!important}.sr-hero__inner{gap:18px 32px}.sr-types{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sr-footer__top{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:900px){.catalog-layout{grid-template-columns:200px minmax(0,1fr);gap:22px}.catalog-sidebar{padding:18px}.products,.sr-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.product-hero{gap:28px}.product-hero h1{font-size:28px}.sr-hero__title{font-size:38px!important}.sr-herocar__img,.sr-herocar__img img{height:180px!important}.sr-hero{padding:32px!important}.reading-layout{grid-template-columns:minmax(0,1fr)}.page-toc{position:static;background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 20px}.page-toc details:not([open])>nav{display:none}.page-toc summary{padding:16px 0;cursor:pointer;pointer-events:auto;list-style:revert;margin:0}.page-toc nav{margin-bottom:18px}.offer{gap:14px}.sr-genders{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:700px){.sr-header__inner{flex-wrap:wrap;gap:14px;padding:16px 0}.sr-header__logo .sr-logo-img{height:33px}.sr-header__actions{width:auto;flex:1;gap:8px}.sr-header__search{height:40px!important;min-width:0}.sr-header__search-input{height:38px!important;font-size:13px!important;padding:8px 30px 8px 12px!important}.sr-header__search-btn{right:2px!important;top:2px!important;width:30px!important;height:34px!important}.sr-header__search-btn svg{width:16px;height:16px}.sr-header__icon{width:32px;height:36px}.sr-header__logo{max-width:42%}.sr-header__logo .sr-logo-img{max-width:100%;height:auto}.sr-hero{padding:28px!important;margin-top:20px;border-radius:16px}.sr-hero__inner{grid-template-columns:minmax(0,1fr);gap:18px}.sr-hero__title{font-size:36px!important;max-width:18ch!important}.sr-hero__sub{font-size:15px!important}.sr-herocar{grid-column:1;grid-row:auto;margin-top:12px!important;padding:16px!important}.sr-herocar__tile{flex-basis:100%!important;display:grid!important;grid-template-columns:100px minmax(0,1fr);gap:14px;align-items:center;padding:14px!important}.sr-herocar__img,.sr-herocar__img img{height:110px!important;margin:0!important}.sr-herocar__title{font-size:13px!important;line-height:1.5!important}.sr-herocar__brand{font-size:9px!important}.sr-herocar__price{font-size:16px!important}.sr-hero__search input{font-size:13px!important;padding:10px 6px!important}.sr-hero__search button{font-size:12px!important;padding:10px!important}.sr-hero__chips{gap:6px!important}.sr-valuestrip{display:grid!important;grid-template-columns:1fr;padding:18px 0!important;gap:9px}.sr-valuestrip__item{justify-content:flex-start!important;font-size:12px!important}.sr-section{padding:28px 0!important}.sr-section__title{font-size:25px!important}.sr-section__head{align-items:flex-start!important}.sr-section__link{font-size:12px!important;white-space:normal!important;text-align:right}.sr-types{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.sr-type{padding:16px 12px!important;gap:10px!important}.sr-type__icon{width:36px!important;height:36px!important;flex-shrink:0}.sr-type__name{font-size:13px!important}.sr-type__count{font-size:11px!important}.sr-genders{grid-template-columns:repeat(2,minmax(0,1fr))!important}.sr-spotlight{padding:28px!important}.sr-spotlight__title{font-size:25px!important}.sr-steps{grid-template-columns:1fr!important}.sr-spotlight__cta{white-space:normal}.sr-tip{padding:24px!important}.sr-tip__text{font-size:15px!important}.migration-main{margin:26px auto 48px}.catalog-hero{padding-bottom:24px;margin-bottom:24px}.catalog-hero h1{font-size:32px;margin-bottom:16px}.catalog-hero .prose{font-size:15px}.catalog-layout{grid-template-columns:minmax(0,1fr);gap:20px}.catalog-sidebar{padding:14px;background:#fff}.filter-heading{display:none}.mobile-filter-toggle{display:flex;width:100%;background:var(--sr-coral-tint);color:var(--sr-coral-text)!important}.catalog-sidebar:not(.is-open) form{display:none}.catalog-sidebar.is-open form{padding:10px}.catalog-toolbar{margin-bottom:16px}.catalog-toolbar>span{display:none}.product-card,.sr-card{padding:14px!important}.product-card>img,.sr-card__img,.sr-card__img img{height:155px!important;margin-bottom:14px!important}.product-card h2,.product-card h3,.sr-card__title{font-size:13px!important;line-height:1.5!important;margin-bottom:14px!important}.product-card__brand{font-size:9px!important}.product-card strong,.sr-card__price{font-size:18px!important}.product-card__bottom{gap:6px;padding-top:12px}.card-arrow{width:28px;height:28px;font-size:16px}.sr-card__priceline{flex-wrap:wrap!important}.sr-card__tomax{font-size:11px!important}.pagination{font-size:12px;gap:8px}.pagination a{padding:8px}.product-hero{grid-template-columns:minmax(0,1fr);gap:24px;margin:24px 0 36px}.product-images{padding:24px}.product-images img{max-height:300px}.product-hero h1{font-size:28px;margin:12px 0 20px}.product-hero .price{font-size:32px}.specs{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px;gap:20px}.price-comparison{padding:22px;margin:28px 0}.price-comparison h2{font-size:24px}.offer{grid-template-columns:1fr auto;gap:12px}.offer>a{grid-column:1/-1;width:100%}.offer>span{font-size:18px}.offer>strong{font-size:14px}.is-product .prose h2{font-size:26px}.is-product .prose{font-size:16px}.tgb-article__title,.tgb-bloghero__title{font-size:32px}.tgb-bloghero{padding:28px}.tgb-article__body{font-size:16px}.tgb-article__body h2{font-size:26px}.tgb-grid{grid-template-columns:1fr}.sr-footer__top{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important}.sr-footer__brand{grid-column:1/-1}.sr-footer__bar{flex-wrap:wrap;gap:14px}.sr-types-index .sr-typechips{grid-template-columns:1fr}.sr-listing__title{font-size:32px!important}}
@media(max-width:360px){.sr-hero{padding:22px!important}.sr-hero__title{font-size:30px!important}.sr-herocar__tile{grid-template-columns:76px minmax(0,1fr);gap:10px;padding:10px!important}.sr-type{flex-direction:column!important;align-items:flex-start!important}.product-card,.sr-card{padding:10px!important}.product-card>img,.sr-card__img,.sr-card__img img{height:120px!important}.card-arrow{display:none}.product-card strong{font-size:17px!important}.sr-header__inner{gap:10px}.sr-header__actions{gap:4px}.sr-header__search-input{padding-left:8px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Container sizing replaces inherited WordPress theme constraints. */
.sr-home{width:100%;max-width:none!important;padding:0!important;margin:0!important}.sr-hero{display:block!important}.sr-hero__inner{width:100%!important;flex:none!important}.sr-herocar{position:static!important;inset:auto!important;transform:none!important}.sr-header__search-input{max-width:none!important;min-width:0!important}.sr-header__search{flex:1!important;opacity:1!important;box-shadow:none!important}.sr-header__search-btn{visibility:visible!important;transform:none!important}.sr-header__search-input:focus{max-width:none!important}
.sr-hero{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:center}.sr-hero__inner{display:flex!important;flex-direction:column;gap:20px!important}.sr-herocar{grid-column:auto;grid-row:auto}.sr-header__search-input{flex:1 1 auto!important;transform:none!important;clip:auto!important;clip-path:none!important}.sr-header__search-input::placeholder{color:var(--sr-muted)!important;opacity:1!important}
@media(max-width:900px){.sr-hero{gap:28px}.sr-hero__title{font-size:36px!important}}
@media(max-width:700px){.sr-hero{grid-template-columns:minmax(0,1fr);gap:24px}.sr-hero__inner{gap:18px!important}.sr-herocar{grid-column:auto;grid-row:auto}.sr-hero__title{font-size:34px!important}}
@media(max-width:360px){.sr-hero__title{font-size:30px!important}}

.sr-brandchip--all{color:var(--sr-coral)!important}.sr-footer__logo span{color:var(--lime)!important}.catalog-sort{display:flex;align-items:center;gap:12px;font-size:12px;white-space:nowrap}.catalog-sort select{background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:13px;max-width:180px}.sr-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:900px){.sr-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.catalog-sort{gap:6px;font-size:0}.catalog-sort select{font-size:12px;max-width:165px;padding:8px}.catalog-toolbar{gap:8px}}
@media(max-width:700px){.sr-header__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px 0}.sr-header__logo{grid-column:1;grid-row:1;max-width:170px}.sr-header__actions{display:contents}.sr-header .sr-burger{grid-column:2;grid-row:1;justify-self:end}.sr-header .sr-header__actions .sr-header__search{grid-column:1/-1;grid-row:2;min-width:0!important;width:100%!important;max-width:none!important;height:42px!important;margin:0!important;transform:none!important;background:var(--sr-bg)!important}.sr-header .sr-header__actions .sr-header__search .sr-header__search-input{display:block!important;position:static!important;width:100%!important;max-width:none!important;opacity:1!important;height:40px!important;padding:10px 40px 10px 14px!important}.sr-header .sr-header__actions .sr-header__search .sr-header__search-open{display:none!important}.sr-header .sr-header__actions .sr-header__search .sr-header__search-btn{display:flex!important;opacity:1!important}.sr-header .sr-header__merken{display:none!important}}
.sr-herocar__title{-webkit-line-clamp:unset!important;overflow:visible!important}.sr-herocar__meta{padding:0!important;min-width:0}.sr-spotlight__title{overflow-wrap:anywhere}.sr-gender__meta{min-width:0}.sr-gender__name,.sr-gender__count{white-space:normal!important}
@media(max-width:700px){.sr-spotlight{flex-wrap:wrap!important;gap:18px!important}.sr-spotlight__body{flex:1 1 100%!important;min-width:0}.sr-gender{padding:14px!important;gap:10px!important;flex-direction:column!important;align-items:flex-start!important}.sr-gender__icon{width:36px!important;height:36px!important;flex-shrink:0}.sr-gender__name{font-size:13px!important}.sr-gender__count{font-size:11px!important}}
@media(max-width:360px){.sr-herocar__tile{display:block!important}.sr-herocar__img,.sr-herocar__img img{height:135px!important;margin-bottom:14px!important}.sr-herocar__meta{width:100%!important}}
.site-menu-close{display:none}@media(max-width:1199px){.sr-nav.is-open{padding-top:64px!important}.site-menu-close{display:block;position:absolute;right:20px;top:18px;padding:6px 10px;border:1px solid var(--line);background:var(--sr-bg);border-radius:8px;font-size:13px;color:var(--sr-coral-text)}}

.reading-layout h2[id]{scroll-margin-top:32px}@media(max-width:700px){.specs>div:last-child{grid-column:1/-1}}

/* Refined Tuingigant composition. Existing palette, content and v18 components. */
:root { --tg-elevation: 0 8px 28px #16432a08; }
a:focus-visible, button:focus-visible, summary:focus-visible, select:focus-visible,
input:focus-visible { outline: 3px solid var(--sr-coral); outline-offset: 4px; }
h1, h2, .sr-hero__title { text-wrap: balance; }
.sr-header__inner { padding-top: 20px; gap: 16px 60px; }
.sr-header__search { border-radius: 100px!important; }
.sr-header__search:focus-within { border-color: var(--sr-coral)!important; }
.sr-header .sr-nav__link, .sr-header .sr-nav__trigger { font-weight: 600; }
.sr-header__merken { color: var(--sr-coral-text); }
.sr-hero {
  padding: 44px 48px!important; gap: 64px; margin-top: 28px;
  grid-template-columns: minmax(0,1.4fr) minmax(0,1fr);
  border: 1px solid #16432a0c;
  background: radial-gradient(ellipse at 100% 0%, #c9ee8740, transparent 65%), var(--sr-coral-tint)!important;
}
.sr-hero__inner { gap: 18px!important; }
.sr-hero__title { font-size: clamp(34px,3.8vw,50px)!important; line-height: 1.13!important; }
.sr-hero__sub { font-size: 16px!important; color: var(--sr-ink)!important; line-height: 1.75!important; }
.sr-hero__pill { font-size: 12px!important; letter-spacing: .07em!important; }
.sr-hero__search { min-height: 60px; box-shadow: 0 8px 24px #16432a0b!important; }
.sr-hero__search button { min-height: 46px; }
.sr-hero__chip { border-color: #16432a18!important; background: #ffffff60!important; border-radius: 100px!important; padding: 5px 12px!important; }
.sr-herocar { padding: 0!important; border: 0; background: transparent!important; overflow: visible; }
.sr-herocar__label { font-size: 11px!important; letter-spacing: .09em; }
.sr-herocar__track { padding-bottom: 0; scrollbar-width: none; border-radius: 16px; }
.sr-herocar__track::-webkit-scrollbar { display: none; }
.sr-herocar__tile { padding: 24px!important; border-radius: 16px!important; border-color: #16432a0b; }
.sr-herocar__img, .sr-herocar__img img { height: 180px!important; }
.sr-herocar__title { font-size: 15px!important; line-height: 1.5!important; }
.sr-herocar__price { font-size: 22px!important; }
.carousel-controls { margin-top: 14px; }
.carousel-controls button { width: 40px; height: 40px; cursor: pointer; }
.carousel-controls button:hover { color: #fff; background: var(--sr-coral); }
.sr-valuestrip { padding: 22px 0!important; }
.sr-valuestrip__item { color: var(--sr-coral-text)!important; }
.sr-section { padding: 40px 0!important; }
.sr-section__head { align-items: baseline!important; }
.sr-section__title { font-size: 30px!important; }
.sr-section__link { text-underline-offset: 5px; }
.sr-section__link:hover { text-decoration: underline; }
.sr-type, .sr-gender { border-radius: 16px!important; }
.sr-type__icon, .sr-gender__icon { background: var(--sr-coral-tint)!important; color: var(--sr-coral)!important; }
.sr-spotlight { border-radius: 20px!important; }
.sr-brandchip { background: transparent!important; border-color: var(--line)!important; }
.sr-brandchip:hover { background: var(--sr-coral-tint)!important; }
.migration-main { margin-top: 32px; }
.crumbs { font-size: 12px; margin-bottom: 20px; }
.catalog-hero { padding-bottom: 24px; margin-bottom: 28px; }
.catalog-hero h1 { font-size: 40px; margin-bottom: 14px; }
.catalog-hero .prose { font-size: 15px; line-height: 1.75; }
.catalog-layout { gap: 28px; }
.catalog-toolbar { margin-bottom: 18px; }
.catalog-sidebar { border-radius: 14px; }
.catalog-sort select { min-height: 44px; }
.product-card, .sr-card { padding: 18px!important; border-color: #16432a12!important; box-shadow: var(--tg-elevation)!important; }
.product-card>img, .sr-card__img, .sr-card__img img { height: 184px!important; }
.product-card__brand, .sr-card__brand { color: var(--sr-coral)!important; font-size: 10px!important; letter-spacing: .05em; }
.product-card h2, .product-card h3, .sr-card__title { line-height: 1.5!important; margin-bottom: 18px!important; }
.product-card strong, .sr-card__price { font-size: 23px!important; letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
.product-card__bottom { padding-top: 14px; }
.card-arrow { width: 36px; height: 36px; flex-shrink: 0; }
.product-card:hover .card-arrow { background: var(--sr-coral); color: #fff; }
.product-hero { gap: 48px; margin-bottom: 44px; }
.product-images { box-shadow: var(--tg-elevation); border-color: #16432a12; padding: 40px; }
.product-images img { max-height: 380px; }
.product-hero h1 { font-size: 36px; line-height: 1.25; }
.product-hero .price { font-size: 42px; letter-spacing: -.035em; }
.product-hero .button { min-width: 190px; }
.price-comparison { padding: 32px; box-shadow: var(--tg-elevation); }
.offer:first-child { border-top: 0; }
.offer>span { font-variant-numeric: tabular-nums; }
.page-toc nav { gap: 0; padding: 0; }
.page-toc a { padding: 9px 0 9px 16px; border-left: 2px solid transparent; margin-left: -1px; }
.page-toc a:hover, .page-toc a:focus-visible { border-left-color: var(--sr-coral); color: var(--sr-coral-text); background: var(--sr-coral-tint); }
.tgb-article__title { font-size: 46px; line-height: 1.18; }
.tgb-article__hero { border-radius: 20px; }
.tgb-article__body h2 { padding-top: 12px; }
.tgb-card { border-color: #16432a12; box-shadow: var(--tg-elevation); overflow: hidden; }
.tgb-card__title { line-height: 1.5; }
.tgb-card__cat { color: var(--sr-coral); }
.sr-footer { margin-top: 40px; }
.sr-footer__col a { text-underline-offset: 4px; }
.sr-footer__col a:hover { text-decoration: underline; }
@media(min-width:1000px) {
  .tgb-article__inner:has(>.tgb-article__hero) { display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; }
  .tgb-article__head { align-self: center; margin: 0; }
  .tgb-article__hero { margin: 0; align-self: stretch; }
  .tgb-article__hero img { height: 100%; min-height: 330px; max-height: 430px; }
  .tgb-article__inner>.reading-layout { grid-column: 1/-1; margin-top: 56px; }
  .tgb-article__inner>:not(.tgb-article__head):not(.tgb-article__hero):not(.reading-layout) { grid-column: 1/-1; }
}
@media(max-width:1000px) {
  .sr-hero { padding: 32px!important; gap: 28px; }
  .sr-hero__title { font-size: 36px!important; }
  .product-hero { gap: 28px; }
  .product-hero h1 { font-size: 30px; }
}
@media(max-width:700px) {
  .sr-header__inner { padding: 14px 0; gap: 12px; }
  .sr-hero { grid-template-columns: minmax(0,1fr); padding: 24px!important; margin-top: 18px; gap: 24px; border-radius: 18px; }
  .sr-hero__inner { gap: 16px!important; }
  .sr-hero__title { font-size: 32px!important; line-height: 1.16!important; text-wrap: pretty; }
  .sr-hero__sub { font-size: 15px!important; line-height: 1.65!important; }
  .sr-hero__pill { font-size: 10px!important; }
  .sr-hero__chips { gap: 6px!important; }
  .sr-hero__chip { padding: 5px 9px!important; font-size: 11px!important; }
  .sr-hero__search { min-height: 54px; margin-top: 0!important; }
  .sr-hero__search button { min-height: 42px; }
  .sr-herocar { margin-top: 0!important; }
  .sr-herocar__tile { display: grid!important; grid-template-columns: 80px minmax(0,1fr); padding: 14px!important; gap: 12px; }
  .sr-herocar__img, .sr-herocar__img img { height: 100px!important; margin: 0!important; }
  .sr-herocar__brand { font-size: 9px!important; }
  .sr-herocar__title { font-size: 12px!important; }
  .sr-herocar__price { font-size: 18px!important; margin-top: 6px; }
  .carousel-controls { margin-top: 10px; }
  .sr-valuestrip { padding: 20px 0!important; }
  .sr-section { padding: 28px 0!important; }
  .sr-section__title { font-size: 25px!important; }
  .catalog-layout { gap: 16px; }
  .catalog-hero h1 { font-size: 32px; }
  .catalog-hero { margin-bottom: 20px; }
  .catalog-sidebar { padding: 0; border: 0; background: transparent; }
  .catalog-sidebar.is-open { padding: 12px; background: #fff; border: 1px solid var(--line); }
  .products, .sr-grid { gap: 12px!important; }
  .product-card, .sr-card { padding: 12px!important; border-radius: 12px!important; }
  .product-card>img, .sr-card__img, .sr-card__img img { height: 140px!important; }
  .product-card h2, .product-card h3, .sr-card__title { font-size: 13px!important; }
  .product-card strong, .sr-card__price { font-size: 20px!important; }
  .card-arrow { width: 28px; height: 28px; }
  .product-images { padding: 28px; }
  .product-images img { max-height: 280px; }
  .product-hero h1 { font-size: 28px; }
  .product-hero .price { font-size: 36px; }
  .product-hero .button { width: 100%; }
  .price-comparison { padding: 22px; }
  .tgb-article__title { font-size: 32px; }
  .tgb-article__hero img { aspect-ratio: 4/3; }
  .sr-footer { margin-top: 24px; }
}
@media(max-width:360px) {
  .sr-hero { padding: 18px!important; }
  .sr-hero__title { font-size: 29px!important; }
  .sr-herocar__tile { grid-template-columns: 64px minmax(0,1fr); gap: 10px; padding: 12px!important; }
  .product-card, .sr-card { padding: 10px!important; }
  .product-card>img, .sr-card__img, .sr-card__img img { height: 120px!important; }
  .product-card strong, .sr-card__price { font-size: 18px!important; }
}

/* Three editorial stories fill the complete homepage row. */
.sr-section--blog .tgb-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media(max-width:700px){.sr-section--blog .tgb-grid{grid-template-columns:minmax(0,1fr)}}
/* Editorial garden direction — 2026-10-16.
   Inspiration: Fermob (photographic composition), Finnish Design Shop (clear catalog).
   Brand colours and original text remain unchanged. */
.sr-hero {
  padding: 0!important; gap: 0; overflow: hidden; border: 0; border-radius: 20px;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  background: var(--sr-coral-text)!important; align-items: stretch;
}
.sr-hero__inner { padding: 48px; justify-content: center; align-items: stretch; gap: 22px!important; }
.sr-hero__title { color: #fff!important; font-size: clamp(34px,3.7vw,54px)!important; max-width: 17ch!important; line-height: 1.08!important; letter-spacing: -.045em!important; }
.sr-hero__pill { color: var(--lime)!important; letter-spacing: .09em!important; font-size: 11px!important; }
.sr-hero__sub { color: #ffffffd4!important; font-size: 16px!important; line-height: 1.75!important; }
.sr-hero__search { margin: 2px 0!important; border-radius: 10px!important; box-shadow: 0 8px 24px #00000012!important; }
.sr-hero__search button { background: var(--lime)!important; color: var(--sr-coral-text)!important; }
.sr-hero__search button:hover { background: #fff!important; }
.sr-hero__chips-label { color: #ffffffb8!important; }
.sr-hero__chip { color: #fff!important; border-color: #ffffff35!important; background: transparent!important; padding: 5px 11px!important; }
.sr-hero__chip:hover { background: #ffffff18!important; }
.garden-scene { margin: 0; min-width: 0; position: relative; align-self: stretch; overflow: hidden; }
.garden-scene img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 65% center; position: absolute; inset: 0; }
.sr-valuestrip { padding: 23px 0!important; display: flex!important; justify-content: space-between; border: 0; border-bottom: 1px solid var(--line); margin-bottom: 0!important; }
.sr-valuestrip__item { font-size: 12px!important; gap: 10px; }
.popular-section { width: calc(100% - var(--page-gutter)*2); max-width: 1280px; margin: 36px auto 44px; }
.popular-section .sr-herocar { display: grid; grid-template-columns: 1fr auto; gap: 18px; padding: 0!important; }
.popular-section .sr-herocar__label { grid-column: 1; grid-row: 1; font-family: var(--font-heading); font-size: 23px!important; font-weight: 650!important; text-transform: none; letter-spacing: -.03em; margin: 0!important; align-self: center; }
.popular-section .carousel-controls { grid-column: 2; grid-row: 1; margin: 0; }
.popular-section .sr-herocar__track { grid-column: 1/-1; grid-row: 2; gap: 20px!important; border-radius: 0; padding: 0 0 4px; }
.popular-section .sr-herocar__tile { flex: 0 0 calc((100% - 60px)/4)!important; padding: 20px!important; display: grid!important; grid-template-columns: 80px minmax(0,1fr); gap: 16px; align-items: center; border: 1px solid var(--line); border-radius: 12px!important; }
.popular-section .sr-herocar__img, .popular-section .sr-herocar__img img { height: 100px!important; margin: 0!important; }
.popular-section .sr-herocar__title { font-size: 12px!important; line-height: 1.5!important; }
.popular-section .sr-herocar__brand { font-size: 9px!important; color: var(--sr-coral)!important; }
.popular-section .sr-herocar__price { font-size: 17px!important; margin-top: 7px; }
.popular-section .sr-herocar__tile:hover { border-color: var(--sr-coral); }
.sr-section { padding: 38px 0!important; }
.sr-section__title { font-size: 32px!important; letter-spacing: -.045em!important; }
.sr-types { gap: 22px!important; }
.sr-type { position: relative; display: flex!important; flex-direction: column!important; align-items: stretch!important; gap: 0!important; padding: 0 0 20px!important; border: 0!important; border-bottom: 1px solid var(--line)!important; border-radius: 0!important; background: transparent!important; box-shadow: none!important; }
.sr-type .sr-type__icon { display: none; }
.category-photo { display: block; aspect-ratio: 4/3; background: #fff; border-radius: 14px; padding: 20px; margin-bottom: 20px; overflow: hidden; }
.category-photo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.sr-type__meta { padding-right: 30px; }
.sr-type__name { font-size: 19px!important; font-weight: 650!important; }
.sr-type__count { font-size: 12px!important; margin-top: 5px; }
.category-arrow { position: absolute; bottom: 28px; right: 0; font-size: 23px; color: var(--sr-coral); }
.sr-type:hover { transform: none; }
.sr-type:hover .category-photo img { transform: scale(1.045); }
.sr-gender { background: transparent!important; border: 1px solid var(--line)!important; border-radius: 10px!important; }
.sr-gender:hover { background: var(--sr-coral-tint)!important; }
.sr-spotlight { border-radius: 14px!important; }
.sr-tip { border-radius: 14px!important; }
.products, .sr-grid { gap: 26px!important; }
.product-card, .sr-card { padding: 0!important; border: 0!important; border-radius: 0!important; box-shadow: none!important; background: transparent!important; }
.product-card>img, .sr-card__img { height: 235px!important; border-radius: 12px!important; padding: 20px; background: #fff!important; margin-bottom: 20px!important; border: 1px solid #16432a0a; }
.sr-card__img img { height: 195px!important; margin: 0!important; }
.product-card:hover, .sr-card:hover { transform: none; box-shadow: none!important; }
.product-card:hover>img, .sr-card:hover .sr-card__img { border-color: #2e7d4e66; }
.product-card h2, .product-card h3, .sr-card__title { font-size: 15px!important; line-height: 1.55!important; }
.product-card__bottom, .sr-card__priceline { border-top-color: var(--line); padding-bottom: 8px; }
.product-card__bottom { margin-top: auto; }
.card-arrow { background: transparent; border: 1px solid #2e7d4e40; }
.sr-card__status { top: 12px!important; left: 12px!important; }
.catalog-hero { padding: 16px 0 30px; }
.catalog-hero h1 { font-size: 48px; letter-spacing: -.045em!important; }
.catalog-layout { grid-template-columns: 220px minmax(0,1fr); gap: 40px; }
.catalog-sidebar { border: 0; border-right: 1px solid var(--line); border-radius: 0; padding: 0 24px 0 0; background: transparent; }
.catalog-toolbar { margin-bottom: 26px; }
.product-images { border-radius: 16px; box-shadow: none; }
.product-hero { padding-bottom: 20px; }
.price-comparison { border-radius: 14px; box-shadow: none; }
.offer { padding: 24px 0; }
.offer>span { font-size: 24px; }
.tgb-card { border: 0; border-radius: 0; box-shadow: none; background: transparent; }
.tgb-card__body { padding: 22px 0!important; }
.tgb-card__img, .tgb-card__media { border-radius: 14px; overflow: hidden; }
.tgb-card__title { font-size: 22px; letter-spacing: -.03em; }
.sr-footer { border-radius: 24px 24px 0 0; }
@media(prefers-reduced-motion:no-preference) { .category-photo img { transition: transform .25s ease; } }
@media(max-width:1100px) {
  .sr-hero__inner { padding: 36px; }
  .sr-hero__title { font-size: 40px!important; }
  .popular-section .sr-herocar__tile { flex-basis: calc((100% - 40px)/3)!important; grid-template-columns: 64px minmax(0,1fr); padding: 15px!important; gap: 12px; }
  .catalog-layout { grid-template-columns: 190px minmax(0,1fr); gap: 26px; }
}
@media(max-width:900px) {
  .sr-hero__inner { padding: 28px; }
  .sr-hero__title { font-size: 36px!important; }
  .popular-section .sr-herocar__tile { flex-basis: calc((100% - 20px)/2)!important; }
  .sr-valuestrip { flex-wrap: wrap; gap: 12px; justify-content: flex-start; }
  .product-card>img, .sr-card__img { height: 210px!important; }
  .sr-card__img img { height: 170px!important; }
}
@media(max-width:700px) {
  .sr-hero { grid-template-columns: minmax(0,1fr); padding: 0!important; border-radius: 16px; margin-top: 16px; }
  .sr-hero__inner { padding: 28px 24px; gap: 18px!important; }
  .sr-hero__title { font-size: 34px!important; max-width: 18ch!important; }
  .sr-hero__sub { font-size: 15px!important; line-height: 1.65!important; }
  .garden-scene { aspect-ratio: 16/9; }
  .sr-valuestrip { display: grid!important; gap: 12px; padding: 20px 0!important; }
  .sr-valuestrip__item { font-size: 12px!important; }
  .popular-section { margin: 26px auto 30px; }
  .popular-section .sr-herocar__label { font-size: 22px!important; }
  .popular-section .sr-herocar__track { gap: 12px!important; }
  .popular-section .sr-herocar__tile { flex-basis: 86%!important; grid-template-columns: 72px minmax(0,1fr); padding: 16px!important; }
  .popular-section .sr-herocar__title { font-size: 13px!important; }
  .popular-section .sr-herocar__price { font-size: 18px!important; }
  .sr-section { padding: 28px 0!important; }
  .sr-section__title { font-size: 26px!important; }
  .sr-types { gap: 18px 12px!important; }
  .category-photo { padding: 12px; margin-bottom: 14px; border-radius: 10px; }
  .sr-type__name { font-size: 16px!important; }
  .sr-type__count { font-size: 11px!important; }
  .category-arrow { font-size: 19px; bottom: 28px; }
  .catalog-layout { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .catalog-sidebar { padding: 0; border: 0; }
  .catalog-sidebar.is-open { padding: 16px; border: 1px solid var(--line); border-radius: 12px; }
  .catalog-hero { padding: 0 0 24px; }
  .catalog-hero h1 { font-size: 34px; }
  .products, .sr-grid { gap: 22px 12px!important; }
  .product-card>img, .sr-card__img { height: 160px!important; padding: 12px; margin-bottom: 14px!important; }
  .sr-card__img img { height: 136px!important; }
  .product-card h2, .product-card h3, .sr-card__title { font-size: 13px!important; }
  .product-card__bottom { align-items: flex-end; gap: 4px; }
  .product-card strong, .sr-card__price { font-size: 20px!important; }
  .sr-card__body { padding: 0!important; }
  .tgb-card__title { font-size: 21px; }
  .sr-footer { border-radius: 16px 16px 0 0; }
}
@media(max-width:360px) {
  .sr-hero__inner { padding: 24px 18px; }
  .sr-hero__title { font-size: 30px!important; }
  .product-card>img, .sr-card__img { height: 136px!important; padding: 10px; }
  .sr-card__img img { height: 116px!important; }
  .product-card strong, .sr-card__price { font-size: 18px!important; }
}

/* Catalog usability: removable choices, honest price cues and mobile reach. */
.selected-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.selected-filters:empty{display:none}
.selected-filters a{display:inline-flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;background:var(--sr-coral-tint);color:var(--sr-coral-text);font-size:13px;min-height:40px}
.selected-filters a:hover{background:var(--sr-coral);color:#fff}
.selected-filters .clear-filters{background:transparent;text-decoration:underline;text-underline-offset:4px}
.catalog-empty{grid-column:1/-1;border:1px solid var(--line);border-radius:14px;padding:32px}
.product-card__details{display:block;font-size:12px;line-height:1.65;color:var(--muted);font-weight:400;margin-top:6px}
.product-card h2{overflow:visible!important;display:block!important;-webkit-line-clamp:unset!important}
.category-photo{aspect-ratio:1;padding:24px;background:#fff}
.category-photo img{object-fit:contain;mix-blend-mode:multiply}
.comparison-note{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 24px;max-width:78ch}
.offer{padding:22px 16px;border-radius:10px;gap:24px}
.offer.is-best{background:var(--sr-coral-tint);border-top-color:transparent;box-shadow:inset 3px 0 var(--sr-coral)}
.best-price-label{display:block;width:fit-content;margin-top:8px;font-size:11px;line-height:1.5;color:var(--sr-coral-text);font-weight:650}
.best-price-label[hidden]{display:none}
.offer small.offer-updated{margin-top:8px;font-size:11px;line-height:1.6;max-width:32ch}
.offer-updated time{display:inline}
.floating-filter{display:none}
@media(max-width:700px){
 .floating-filter:not([hidden]){display:block;position:fixed;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:50;min-height:48px;padding:12px 24px;background:var(--sr-coral-text);color:#fff;border:1px solid #ffffff80;border-radius:100px;box-shadow:0 6px 24px #16432a30;font:650 14px var(--font-body)}
 .floating-filter[hidden]{display:none}
 .mobile-filter-toggle{scroll-margin-top:16px}
 .catalog-results{padding-bottom:50px}
 .category-photo{padding:14px}
 .offer{padding:20px 12px;gap:12px}
 .offer>a{width:100%}
 .offer>span{font-size:22px}
 .product-card__details{font-size:11px}
 .selected-filters{gap:6px;margin-bottom:16px}
 .selected-filters a{font-size:12px}
}

/* Rebuild 2026-10-17 — task-first catalogue, shared product cards and comparison. */
:root{--ux-radius:14px;--ux-shadow:0 16px 50px #16432a14}
.sr-header__inner{padding-top:12px;padding-bottom:12px}
.sr-header__search{max-width:560px!important}
.header-utilities{display:flex;align-items:center;gap:16px;font-size:13px;font-weight:650}
.header-utilities button{font:inherit;border:1px solid var(--line);background:white;border-radius:8px;padding:10px 14px;color:var(--sr-coral-text);cursor:pointer}
.sr-hero{min-height:0!important}
.sr-hero__inner{padding:36px 42px!important}
.sr-hero__title{font-size:clamp(32px,3.3vw,48px)!important;line-height:1.12!important;max-width:16ch}
.sr-hero__lead{font-size:16px!important}
.garden-scene{min-height:380px!important;max-height:490px}
.sr-hero__quick{margin-top:18px!important}
.sr-section:has(.sr-types){padding-top:34px!important;padding-bottom:24px!important}
.category-photo{aspect-ratio:1.35;padding:18px;margin-bottom:16px}
.sr-section{padding-top:36px!important;padding-bottom:36px!important}
.popular-section{padding-top:24px!important;padding-bottom:32px!important}
.sr-spotlight{margin-top:16px!important;margin-bottom:20px!important}
.sr-herocar__title{display:block!important;-webkit-line-clamp:unset!important}
.sr-card__title{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important}
.catalog-hero{padding:0 0 24px!important;margin-bottom:0!important}
.catalog-hero .crumbs{margin-bottom:16px}
.catalog-hero h1{margin:0!important;font-size:40px!important}
.catalog-layout{gap:32px;grid-template-columns:220px minmax(0,1fr)}
.catalog-toolbar{padding:0 0 18px;margin-bottom:0}
.catalog-sidebar{font-size:14px}
.catalog-reading{margin:48px 0 0;padding:32px 0;border-top:1px solid var(--line)}
.catalog-reading:has(.prose:empty){display:none}
.choice-card{position:relative;min-width:0;display:flex;flex-direction:column}
.choice-card .product-card{display:flex!important;flex-direction:column;height:100%;border:1px solid var(--line)!important;padding:14px!important;border-radius:var(--ux-radius)!important;background:#fff!important;transition:border-color .15s,box-shadow .15s}
.choice-card .product-card:hover{border-color:var(--sr-coral)!important;box-shadow:var(--ux-shadow)}
.choice-card .product-card>img{width:100%;height:230px!important;padding:12px;margin-bottom:14px!important;background:#fff!important;object-fit:contain}
.choice-card .product-card h2{font-size:15px!important;line-height:1.5!important;margin:8px 0 12px;letter-spacing:0}
.product-card__brand{font-size:11px!important;letter-spacing:.04em;min-height:16px}
.card-facts{list-style:none;margin:0 0 20px;padding:0;font-size:12px;line-height:1.6;color:var(--sr-ink)}
.card-facts li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:5px 0}
.card-facts li span{color:var(--muted)}
.choice-card .product-card__bottom{margin-top:auto;border-top:0;align-items:end}
.choice-card .product-card__bottom>small{font-size:11px;color:var(--muted)}
.card-action{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-weight:650;font-size:13px;color:var(--sr-coral-text)}
.save-product{position:absolute;top:22px;right:22px;z-index:2;padding:7px 9px;border:1px solid var(--line);background:#fff;border-radius:7px;font:600 11px var(--font-body);color:var(--sr-coral-text);cursor:pointer}
.save-product[aria-pressed=true]{background:var(--sr-coral-text);color:white}
.save-product[hidden]{display:none}
.product-hero{align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding-bottom:0;margin-bottom:28px}
.product-hero>div:last-child{padding-top:20px}
.product-hero h1{font-size:32px;line-height:1.25}
.product-images{padding:24px;min-width:0}
.product-images picture{display:block}
.product-images>picture img,.product-images>img{height:360px!important;width:100%!important;object-fit:contain}
.gallery-thumbs{display:flex;gap:10px;margin-top:16px}
.gallery-thumbs button{background:white;border:1px solid var(--line);border-radius:8px;padding:5px;cursor:pointer}
.gallery-thumbs button[aria-pressed=true]{border-color:var(--sr-coral)}
.gallery-thumbs img{width:64px!important;height:64px!important;object-fit:contain}
.gallery-zoom{display:block;background:none;border:0;color:var(--sr-coral-text);font:inherit;font-size:12px;text-decoration:underline;margin:12px auto 0;cursor:pointer}
.hero-facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:18px 0}
.hero-facts li{padding:6px 10px;border:1px solid var(--line);border-radius:6px;font-size:13px}
.product-jumps{display:flex;gap:28px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:28px;font-size:14px;font-weight:650;overflow:auto}
.product-jumps a{white-space:nowrap}
.price-comparison{margin:24px 0 40px}
#productinformatie{margin-top:40px}
.sr-related .products{grid-template-columns:repeat(4,minmax(0,1fr))}
.tgb-article__head{padding-top:12px!important;padding-bottom:12px!important}
.tgb-article__title{font-size:clamp(30px,3.2vw,44px)!important}
.tgb-article__hero img{max-height:320px;object-fit:cover}
.search-suggestions{position:absolute;top:calc(100% + 8px);left:0;right:0;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--ux-shadow);z-index:100;padding:8px;max-height:55vh;overflow:auto}
.search-suggestions[hidden]{display:none}
.search-suggestions a{display:block;color:var(--ink);font-size:13px;padding:10px;border-radius:6px;line-height:1.45}
.search-suggestions a:hover,.search-suggestions a:focus{background:var(--sr-surface-soft)}
.search-suggestions small{display:block;color:var(--muted);font-size:11px}
.ux-dialog{border:1px solid var(--line);border-radius:18px;width:min(1100px,94vw);max-height:88vh;padding:28px;background:var(--sr-bg);color:var(--sr-ink)}
.ux-dialog::backdrop{background:#16432a88}
.ux-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}
.ux-dialog h2{margin:0;font-size:26px}
.ux-dialog button{padding:9px 14px;background:#fff;border:1px solid var(--line);border-radius:8px;font:inherit;cursor:pointer}
.saved-table{overflow:auto}
.saved-table table{border-collapse:collapse;width:100%;font-size:14px}
.saved-table td,.saved-table th{padding:16px;min-width:180px;vertical-align:top;text-align:left;border-bottom:1px solid var(--line)}
.saved-table th:first-child{min-width:110px}
.saved-table img{width:120px;height:120px;object-fit:contain;display:block;margin-bottom:12px}
.saved-table a{display:block;color:var(--sr-coral-text);font-weight:600}
.saved-table small{display:block;margin-top:8px}
.saved-status{font-size:13px;color:var(--muted)}
.product-sticky{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:45;background:var(--sr-coral-text);color:white;border-radius:12px;padding:12px 22px;box-shadow:var(--ux-shadow);font-weight:650}
.product-sticky[hidden]{display:none}
@media(min-width:901px){.catalog-sidebar{align-self:start;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}.tgb-article__inner{column-gap:40px}.sr-hero{grid-template-columns:1.05fr .95fr!important}}
@media(max-width:900px){.catalog-layout{grid-template-columns:190px minmax(0,1fr);gap:22px}.sr-related .products{grid-template-columns:repeat(2,minmax(0,1fr))}.product-hero{gap:24px}.header-utilities{gap:8px}.header-utilities a{display:none}}
@media(max-width:700px){
 .sr-header__inner{padding:10px 0!important;gap:8px!important}.sr-header__logo{max-width:145px}.header-utilities{grid-column:1/-1;grid-row:3;justify-content:space-between}.header-utilities a{display:block}.header-utilities button{padding:5px 10px;font-size:12px}
 .sr-hero{display:flex!important;flex-direction:column}.sr-hero__inner{padding:25px 22px!important}.sr-hero__title{font-size:32px!important;max-width:20ch}.garden-scene{min-height:190px!important;max-height:210px!important;order:2}.sr-hero__quick{margin-top:14px!important}.sr-hero__lead{font-size:14px!important}
 .sr-valuestrip{gap:12px!important}.category-photo{aspect-ratio:1.2}.sr-section__title{font-size:25px!important}
 .catalog-hero{padding-bottom:16px!important}.catalog-hero h1{font-size:30px!important}.catalog-hero .crumbs{margin-bottom:12px}.catalog-layout{display:block}.catalog-sidebar{position:static;margin-bottom:14px}.catalog-toolbar{padding-bottom:16px}.catalog-toolbar select{font-size:12px;max-width:165px}
 .choice-card .product-card{padding:10px!important;border-radius:10px!important}.choice-card .product-card>img{height:160px!important;padding:5px;margin-top:16px!important}.choice-card .product-card h2{font-size:13px!important}.card-facts{font-size:11px}.card-facts li{display:block}.card-facts li span{margin-right:5px}.save-product{top:9px;right:9px;font-size:10px;padding:5px 7px}.choice-card .product-card__bottom{display:block}.choice-card .product-card__bottom>small{display:block;margin-top:6px}.card-action{font-size:12px}.products{gap:16px 10px!important}
 .catalog-sidebar.is-open{position:fixed;inset:12px;z-index:110;background:var(--sr-bg);overflow:auto;padding:20px;box-shadow:0 0 0 100vmax #16432a66}.catalog-sidebar.is-open .mobile-filter-toggle{position:sticky;top:0;z-index:1}.catalog-sidebar.is-open #catalog-filters>button{position:sticky;bottom:0;width:100%}
 .product-hero{display:flex;flex-direction:column;gap:12px}.product-hero>div{width:100%}.product-hero>div:last-child{padding-top:0}.product-hero h1{font-size:26px}.product-images{padding:14px}.product-images>picture img,.product-images>img{height:250px!important}.product-jumps{gap:20px;font-size:13px;margin-bottom:20px}.product-hero .price{font-size:32px}.price-comparison{padding:20px 14px!important}.product-sticky{width:calc(100% - 40px);text-align:center;bottom:max(12px,env(safe-area-inset-bottom))}.ux-dialog{padding:18px}.ux-dialog h2{font-size:22px}.tgb-article__head{margin-bottom:12px!important}.tgb-article__hero img{max-height:220px}
}
@media(max-width:360px){.choice-card .product-card>img{height:125px!important}.choice-card .product-card h2{font-size:12px!important}.choice-card .product-card strong{font-size:18px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
[hidden]{display:none!important}
.sr-header__actions{gap:16px!important}.header-utilities{white-space:nowrap}
@media(min-width:1200px){.sr-header__search{width:350px!important;min-width:250px!important}}
@media(max-width:700px){.header-utilities{grid-row:1;grid-column:2;margin-right:38px}.header-utilities a{display:none}.header-utilities button{font-size:11px;padding:7px}.sr-header__logo{max-width:135px}}

.product-images>div:not(.gallery-thumbs) img{height:360px!important;width:100%!important;object-fit:contain}.gallery-thumbs{flex-wrap:wrap}
@media(max-width:700px){.product-images>div:not(.gallery-thumbs) img{height:250px!important}}

.garden-journeys{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:20px;max-width:var(--container,1200px);margin:28px auto;padding:30px;background:var(--sr-coral-text);color:#fff;border-radius:16px}
.garden-journeys h2{font-size:28px;color:white;line-height:1.2;margin:10px 0}.garden-journeys p{font-size:14px;line-height:1.6;color:#ffffffcf;margin-bottom:0}.journey-kicker{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--sr-lime,#d1ee86)}
.garden-journeys>a{display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:20px;border-left:1px solid #ffffff40;color:white}.garden-journeys>a>span{font-size:12px;color:#ffffffa0}.garden-journeys strong{font-size:20px;line-height:1.3}.garden-journeys small{font-size:12px}.garden-journeys>a:hover{background:#ffffff10;border-radius:8px}
.quick-choices{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.quick-choices a{padding:8px 14px;border:1px solid var(--line);border-radius:8px;background:white;font-size:13px;color:var(--sr-coral-text)}.quick-choices a:hover{border-color:var(--sr-coral)}
.budget-filter{margin-bottom:20px}.budget-filter h3{font-size:14px;margin:10px 0}.budget-filter label{font-size:12px}.budget-filter input{height:38px;margin-top:5px}
@media(max-width:900px){.garden-journeys{grid-template-columns:repeat(3,1fr);padding:22px}.garden-journeys>div{grid-column:1/-1}}
@media(max-width:700px){.garden-journeys{display:block;margin:22px 0;padding:24px}.garden-journeys>a{border-left:0;border-top:1px solid #ffffff40;margin-top:20px;padding:20px 0 0;gap:10px}.garden-journeys>a>span{display:none}.garden-journeys strong{font-size:19px}.quick-choices{flex-wrap:nowrap;overflow:auto;padding-bottom:4px;gap:6px;margin-top:14px}.quick-choices a{white-space:nowrap;padding:7px 10px;font-size:12px}.budget-filter{display:grid;grid-template-columns:1fr 1fr;gap:10px}.budget-filter h3{grid-column:1/-1}}

.sr-hero__title{max-width:21ch!important;font-size:clamp(32px,3.1vw,43px)!important}.sr-hero__sub{font-size:15px!important;line-height:1.7!important;margin:18px 0 24px!important}.garden-scene{max-height:none!important;height:100%;align-self:stretch}.sr-hero>.sr-hero__inner{padding:34px 40px!important}.sr-hero__pill{margin-bottom:16px!important}
.sr-hero+.sr-hero__chips{margin:18px 0 12px;padding:0 4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sr-hero+.sr-hero__chips .sr-hero__chips-label{color:var(--muted);margin:0 10px 0 0;font-size:12px}.sr-hero+.sr-hero__chips .sr-hero__chip{color:var(--sr-coral-text);border-color:var(--line);background:white;padding:7px 12px;font-size:12px}
.selection-explanation{font-size:12px;color:var(--muted);line-height:1.6;margin:10px 0 18px;max-width:85ch}.comparison-scope{font-size:13px;line-height:1.7;color:var(--muted);border-top:1px solid var(--line);padding:20px 0;margin:10px 0}
@media(max-width:700px){.sr-hero>.sr-hero__inner{padding:24px!important}.sr-hero__title{font-size:31px!important}.garden-scene{height:190px;min-height:190px!important;max-height:190px!important;width:100%}.sr-hero+.sr-hero__chips{gap:6px}.sr-hero+.sr-hero__chips .sr-hero__chip{font-size:11px;padding:6px 9px}.catalog-sidebar.is-open{z-index:100001!important}.selection-explanation{font-size:12px}}

.sr-home>.sr-hero__chips .sr-hero__chip{color:var(--sr-coral-text)!important;background:white!important;border:1px solid var(--line)!important}.sr-home>.sr-hero__chips .sr-hero__chips-label{color:var(--muted)!important}.sr-home>.sr-hero__chips .sr-hero__chip:hover{background:var(--sr-surface-soft)!important}
.product-save{position:static;display:block;margin-top:14px;padding:10px 14px;font-size:13px;width:fit-content}
.menu-advice{display:none}@media(max-width:1199px){.menu-advice{display:block;padding:18px 24px;font-weight:650;border-top:1px solid var(--line);color:var(--sr-coral-text)}}

/* Detail audit: align every module to the same content edges and spacing rhythm. */
.sr-home>.sr-hero__chips,.comparison-scope{width:calc(100% - 72px)!important;max-width:1360px!important;margin:20px auto!important;padding:0!important;box-sizing:border-box}
.sr-home>.sr-hero__chips{align-items:center!important;gap:8px!important}.sr-home>.sr-hero__chips .sr-hero__chips-label{flex:0 0 auto!important;width:auto!important;margin:0 8px 0 0!important}
.comparison-scope{padding:20px 0!important;line-height:1.75}
.sr-hero .sr-hero__inner{display:block!important;min-height:0!important}.sr-hero .sr-hero__pill{display:block;margin:0 0 18px!important}.sr-hero .sr-hero__title{margin:0!important}.sr-hero .sr-hero__sub{margin:22px 0 26px!important}.sr-hero .sr-hero__search{margin:0!important}
.popular-section{margin-top:28px!important;margin-bottom:20px!important;padding:16px 0!important}
.popular-section .sr-herocar{row-gap:18px!important}
.popular-section .sr-herocar__track{grid-row:2;align-items:stretch!important}
.popular-section .selection-explanation{grid-column:1/-1;grid-row:3;margin:0!important;max-width:85ch;line-height:1.7}
.popular-section .sr-herocar__tile{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;padding:18px!important;gap:14px!important}
.popular-section .sr-herocar__img{display:block;width:100%!important;height:150px!important;flex:none!important;background:white;border:0!important}
.popular-section .sr-herocar__img picture{display:block;width:100%;height:100%}.popular-section .sr-herocar__img img{width:100%!important;height:150px!important;object-fit:contain!important}
.popular-section .sr-herocar__meta{display:flex;flex-direction:column;flex:1;gap:8px}.popular-section .sr-herocar__title{font-size:14px!important;line-height:1.5!important}.popular-section .sr-herocar__price{margin-top:auto!important;padding-top:8px;font-size:20px!important}.popular-section .sr-herocar__brand{font-size:11px!important}
.carousel-controls button:disabled{opacity:.35;cursor:default}.carousel-controls button{min-width:42px;min-height:42px}
.sr-section:has(>.sr-spotlight){padding-top:12px!important;padding-bottom:12px!important}.sr-spotlight{margin:0!important;padding:28px!important}
.sr-grid .sr-card__body{display:flex!important;flex-direction:column!important;height:100%;gap:12px}.sr-grid .sr-card__title{margin:0!important;line-height:1.55!important}.sr-grid .sr-card__priceline{margin-top:auto!important}.sr-badge{font-size:12px!important;padding:5px 9px!important}
.card-facts li{align-items:baseline}.card-facts li span{flex-shrink:0}.product-card__details{font-size:13px;line-height:1.6}
@supports(grid-template-rows:subgrid){
 .products:has(>.choice-card){row-gap:20px!important}
 .products>.choice-card{display:grid;grid-template-rows:subgrid;grid-row:span 6;row-gap:0}
 .products>.choice-card>.product-card{display:grid!important;grid-template-rows:subgrid;grid-row:span 6;row-gap:0}
 .choice-card .card-facts{margin-bottom:16px}.choice-card .product-card__bottom{margin-top:0;padding-top:8px}.choice-card .card-action{margin-top:14px}
}
.sr-mega__promo{min-height:0!important;height:auto!important;justify-content:center!important;padding:28px!important}
body.filters-open{overflow:hidden}
@media(max-width:900px){.popular-section .sr-herocar__tile{flex-basis:calc((100% - 20px)/2)!important}}
@media(max-width:700px){
 .sr-home>.sr-hero__chips,.comparison-scope{width:calc(100% - 40px)!important;margin:16px auto!important}
 .sr-home>.sr-hero__chips .sr-hero__chips-label{flex-basis:100%!important;margin-bottom:2px!important}
 .sr-hero .sr-hero__sub{margin:18px 0 22px!important;font-size:14px!important}.sr-hero .sr-hero__pill{margin-bottom:16px!important}.sr-hero .sr-hero__title{font-size:29px!important;line-height:1.15!important}
 .popular-section .sr-herocar__tile{flex-basis:78%!important;padding:16px!important}.popular-section .sr-herocar__img,.popular-section .sr-herocar__img img{height:160px!important}
 .selection-explanation{font-size:12px}.sr-spotlight{padding:22px!important}.quick-choices{flex-wrap:wrap!important;overflow:visible!important}.quick-choices a{min-height:40px;display:flex;align-items:center}
 .product-card__details{font-size:12px}.choice-card .product-card__brand{font-size:10px!important}.choice-card .save-product{min-height:32px;padding:6px 9px}.choice-card .card-facts li{font-size:12px;line-height:1.6}
 .catalog-sidebar.is-open{overscroll-behavior:contain}.filter-choices{overscroll-behavior:contain}
}

.garden-journeys{width:calc(100% - 72px)!important;max-width:1360px!important;margin:28px auto!important;box-sizing:border-box}
.choice-card .product-card>img,.choice-card .product-card:hover>img{border:0!important;box-shadow:none!important}
@media(max-width:700px){.garden-journeys{width:calc(100% - 40px)!important;margin:24px auto!important}}
.popular-section .sr-herocar__meta{display:flex!important;flex-direction:column!important}.popular-section .sr-herocar__price{margin-top:auto!important}

/* Tuingigant V2 — a visual start, guided selection and a consistent comparison system. */
.tuingigant-v2{--v2-green:#2E7D4E;--v2-deep:#16432A;--v2-paper:#F8FAF6;--v2-ink:#20281F;--v2-line:#16432a1c;--v2-muted:#657264;background:var(--v2-paper)}
.tuingigant-v2 a,.tuingigant-v2 button{-webkit-tap-highlight-color:transparent}
.tuingigant-v2 :is(a,button,input,select):focus-visible{outline:3px solid var(--v2-green);outline-offset:4px}
.tuingigant-v2 .sr-header{border-bottom:1px solid var(--v2-line);box-shadow:none}
.tuingigant-v2 .sr-hero{background:transparent!important;overflow:visible;gap:42px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);margin-top:38px;border-radius:0;min-height:530px}
.tuingigant-v2 .sr-hero__inner{padding:38px 0 30px!important;align-self:center}
.tuingigant-v2 .sr-hero__pill{color:var(--v2-green)!important;letter-spacing:.12em!important;font-weight:750!important;display:inline-flex!important;align-items:center;gap:12px}
.tuingigant-v2 .sr-hero__pill:before{content:'';width:24px;height:2px;background:currentColor}
.tuingigant-v2 .sr-hero__title{color:var(--v2-deep)!important;font-size:clamp(38px,3.55vw,56px)!important;line-height:1.06!important;letter-spacing:-.052em!important;max-width:19ch!important;margin:22px 0!important;text-wrap:balance}
.tuingigant-v2 .sr-hero__sub{color:var(--v2-muted)!important;font-size:16px!important;line-height:1.75!important;max-width:48ch!important;margin:0 0 26px!important}
.tuingigant-v2 .sr-hero__search{border:1px solid var(--v2-line)!important;box-shadow:0 6px 22px #16432a06!important;min-height:62px;border-radius:12px!important;margin:0!important}
.tuingigant-v2 .sr-hero__search button{background:var(--v2-green)!important;color:white!important;min-height:48px;padding:10px 20px!important}
.v2-hero-actions{display:flex;align-items:center;gap:20px;margin:22px 0 0!important}
.v2-hero-actions>.button{background:transparent!important;border:0;border-bottom:1px solid var(--v2-green);border-radius:0;padding:5px 0!important;color:var(--v2-deep)!important;font-size:14px;display:flex;gap:18px;white-space:nowrap}
.v2-hero-actions>span{font-size:12px;color:var(--v2-muted);max-width:17ch;line-height:1.5}
.tuingigant-v2 .garden-scene{border-radius:24px 24px 90px 24px;min-height:530px;aspect-ratio:auto;box-shadow:0 20px 40px #16432a08}
.tuingigant-v2 .garden-scene img{object-position:62% center}
.v2-scene-links{position:absolute;inset:0;margin:0!important;color:#fff;background:linear-gradient(180deg,#16432a30,transparent 25%,transparent 75%,#16432a60)}
.v2-scene-caption{position:absolute;top:24px;left:24px;font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.12em;padding:9px 12px;border:1px solid #ffffff7a;border-radius:30px;backdrop-filter:blur(8px);background:#16432a45}
.v2-scene-links>small{position:absolute;bottom:24px;left:24px;font-size:11px;color:#fff;text-shadow:0 1px 3px #16432a}
.v2-hotspot{position:absolute;display:flex;gap:8px;align-items:center;background:#fff;color:var(--v2-deep)!important;border:1px solid #ffffffb0;border-radius:40px;font-size:12px;font-weight:650;padding:6px 13px 6px 6px;text-decoration:none;box-shadow:0 4px 20px #16432a22;white-space:nowrap;min-height:42px}
.v2-hotspot>span{display:grid;place-items:center;flex-shrink:0;border-radius:50%;width:28px;height:28px;background:var(--v2-green);color:#fff;line-height:0}
.v2-hotspot>span>svg{display:block;width:14px;height:14px;overflow:visible}
.v2-hotspot:hover{background:var(--lime);transform:translateY(-3px)}
.v2-hotspot--table{left:40%;top:58%}.v2-hotspot--chair{right:9%;top:78%}.v2-hotspot--garden{left:10%;top:32%}
.tuingigant-v2 .sr-hero__chips{margin:22px auto 0!important;padding:0 0 25px;border-bottom:1px solid var(--v2-line)}
.tuingigant-v2 .sr-hero__chip{border:0!important;background:transparent!important;padding:6px 9px!important;font-size:12px!important}
.tuingigant-v2 .sr-hero__chip:hover{text-decoration:underline!important}
.v2-discovery{width:calc(100% - 72px);max-width:1280px;margin:32px auto 0;padding:26px 30px;background:#fff;border:1px solid var(--v2-line);border-radius:18px;display:grid;grid-template-columns:1.15fr 1fr 1fr auto;gap:28px;align-items:center}
.v2-eyebrow{font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--v2-green)}
.v2-discovery h2{font-size:21px!important;line-height:1.2;letter-spacing:-.035em;margin:7px 0 0!important}
.v2-discovery-step{display:flex;gap:12px;align-items:flex-start}.v2-discovery-step>span{font-size:11px;color:var(--v2-green);border:1px solid var(--v2-line);border-radius:50%;width:28px;height:28px;flex-shrink:0;display:grid;place-items:center}
.v2-discovery-step strong{font-size:13px}.v2-discovery-step p{margin:6px 0 0;font-size:12px;line-height:1.6;color:var(--v2-muted)}
.v2-discovery>.button{font-size:12px;white-space:nowrap;padding:14px 17px;display:flex;align-items:center;gap:14px;border-radius:9px}
.tuingigant-v2 .sr-valuestrip{padding:24px 0!important;border:0;margin-bottom:12px!important;color:var(--v2-muted)}
.tuingigant-v2 .sr-section__title{font-size:30px!important;line-height:1.2!important}
.tuingigant-v2 .sr-type .category-photo{border:1px solid var(--v2-line);border-radius:18px;aspect-ratio:1.25;background:#fff;padding:28px}
.tuingigant-v2 .sr-type__name{font-size:18px!important}
.tuingigant-v2 .garden-journeys{background:transparent;color:var(--v2-ink);padding:24px 0 36px;gap:24px;grid-template-columns:1.15fr repeat(3,1fr);border-radius:0}
.tuingigant-v2 .garden-journeys>div{border:0;padding:8px 24px 8px 0}.tuingigant-v2 .garden-journeys h2{color:var(--v2-deep);font-size:28px;line-height:1.2}.tuingigant-v2 .garden-journeys p{color:var(--v2-muted);font-size:14px}
.tuingigant-v2 .journey-kicker{color:var(--v2-green)}
.tuingigant-v2 .garden-journeys>a{border:1px solid var(--v2-line);border-radius:16px;background:#fff;padding:24px!important;color:var(--v2-deep);display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.tuingigant-v2 .garden-journeys>a>span{background:var(--v2-paper);border-radius:50%;display:grid;place-items:center;width:36px;height:36px;font-size:12px;color:var(--v2-green)}
.tuingigant-v2 .garden-journeys>a strong{font-size:18px}.tuingigant-v2 .garden-journeys>a small{margin-top:auto;font-size:12px}.tuingigant-v2 .garden-journeys>a:hover{background:#e7f1e9;border-color:var(--v2-green)}
.tuingigant-v2 .sr-gender{padding:20px!important;border:0!important;border-bottom:1px solid var(--v2-line)!important;border-radius:0!important}
.tuingigant-v2 .sr-gender__icon{width:44px;height:44px;border-radius:50%;box-shadow:inset 0 0 0 1px #16432a12;background:#e7f1e9}
.tuingigant-v2 .sr-gender[href$='/hout/'] .sr-gender__icon,.tuingigant-v2 .sr-gender[href$='/teak/'] .sr-gender__icon{background:repeating-linear-gradient(14deg,#16432a12 0 1px,transparent 1px 6px),#dbe8dc}
.tuingigant-v2 .sr-gender[href$='/textiel/'] .sr-gender__icon{background:repeating-linear-gradient(0deg,#16432a15 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,#16432a15 0 1px,transparent 1px 4px),#edf3ed}
.tuingigant-v2 .sr-gender__name{font-size:15px!important}
.tuingigant-v2 .sr-spotlight{background:var(--v2-deep)!important;border-radius:18px!important;padding:30px!important}
.tuingigant-v2 .sr-card{border:1px solid var(--v2-line)!important;background:#fff!important;border-radius:16px!important;overflow:hidden}
.tuingigant-v2 .sr-card__img{border-radius:0!important;background:#fff!important}
.v2-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.v2-catalog-heading h1{margin-bottom:0!important}
.v2-finder-link{color:var(--v2-green);font-size:13px;font-weight:650;display:flex;align-items:center;gap:18px;padding:12px 16px;border:1px solid var(--v2-line);border-radius:30px;background:#fff;white-space:nowrap;text-decoration:none}
.v2-budget-presets{display:flex;gap:6px;margin-bottom:16px}.v2-budget-presets button{font:inherit;font-size:11px;background:#fff;border:1px solid var(--v2-line);border-radius:6px;padding:7px;cursor:pointer}.v2-budget-presets button:hover,.v2-budget-presets button[aria-pressed=true]{background:var(--v2-green);color:#fff}
.quick-choices a[aria-current=true]{background:var(--v2-green)!important;color:white!important;border-color:var(--v2-green)!important}
.tuingigant-v2 .choice-card{border-radius:16px;background:#fff;border:1px solid var(--v2-line);overflow:hidden;transition:border-color .2s}
.tuingigant-v2 .choice-card:hover{border-color:#2e7d4e88}.tuingigant-v2 .product-card>img{height:220px!important;padding:24px!important}
.tuingigant-v2 .product-card h2{font-size:15px!important;line-height:1.5!important}.tuingigant-v2 .product-card__details{font-size:12px;line-height:1.6;color:var(--v2-muted)}
.tuingigant-v2 .card-action{border-top:1px solid var(--v2-line);color:var(--v2-green);font-size:13px;font-weight:650;padding-top:14px}.tuingigant-v2 .save-product{border-radius:20px;min-height:34px;padding:7px 11px;background:#fff;font-size:11px}.tuingigant-v2 .save-product[aria-pressed=true]{background:#e7f1e9;color:var(--v2-deep);border-color:#2e7d4e60}
.tuingigant-v2 .specs{gap:1px;background:var(--v2-line);border:1px solid var(--v2-line);padding:0;overflow:hidden;border-radius:14px}.tuingigant-v2 .specs>div{padding:22px;background:#fff}.tuingigant-v2 .specs dt{font-size:12px;color:var(--v2-muted)}
/* A visible, lightweight personal selection. */
.selection-tray{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(840px,calc(100% - 40px));z-index:1100;display:flex;align-items:center;gap:22px;padding:14px 18px;border:1px solid #2e7d4e45;border-radius:18px;background:#fff;box-shadow:0 10px 48px #16432a30}
.selection-tray[hidden]{display:none}.selection-tray__items{display:flex;gap:8px}.selection-tray__item{position:relative;display:flex;align-items:center;justify-content:center;border:1px solid var(--v2-line);border-radius:10px;width:54px;height:54px;background:#fff}.selection-tray__item img{width:46px;height:46px;object-fit:contain}.selection-tray__item button{position:absolute;right:-5px;top:-7px;border:1px solid var(--v2-line);background:#fff;border-radius:50%;width:22px;height:22px;padding:0;cursor:pointer;font-size:16px}
.selection-tray__summary{flex:1;font-size:13px;color:var(--v2-deep)}.selection-tray__compare{border:0;border-radius:9px;background:var(--v2-green);color:#fff;font:inherit;font-size:13px;font-weight:650;min-height:44px;padding:12px 20px;cursor:pointer;white-space:nowrap}.has-selection-tray{padding-bottom:100px}.has-selection-tray .floating-filter{bottom:118px}.has-selection-tray .product-sticky{bottom:118px}
.selection-dialog{padding:30px;max-width:1100px;border:1px solid var(--v2-line);border-radius:20px}.selection-dialog::backdrop{background:#16432a80;backdrop-filter:blur(4px)}.selection-dialog .ux-dialog-head h2{font-size:28px;letter-spacing:-.04em}.selection-dialog .ux-dialog-head button{min-height:42px;border:1px solid var(--v2-line);border-radius:9px;background:var(--v2-paper);padding:8px 14px;cursor:pointer}
.selection-feedback{font-size:13px;color:var(--v2-muted);min-height:1.6em}.selection-options{display:flex;align-items:center;gap:20px;padding:15px 0}.selection-differences{display:flex;align-items:center;gap:8px;font-size:13px}.selection-differences input{accent-color:var(--v2-green);width:17px;height:17px}.selection-empty{background:var(--v2-paper);border:1px dashed var(--v2-line);border-radius:12px;padding:30px}.selection-row--difference{background:#e7f1e960}.selection-value--unknown{color:var(--v2-muted);font-style:italic}.selection-dialog .saved-table{border:1px solid var(--v2-line);border-radius:12px}.selection-dialog .saved-table td{vertical-align:top}.selection-dialog .saved-table td>a{line-height:1.45;font-size:13px}.selection-dialog .saved-table img{height:115px!important;width:100%;object-fit:contain}.selection-dialog .saved-table button{font-size:12px;color:var(--v2-muted);border:0;border-bottom:1px solid var(--v2-line);border-radius:0;background:none;padding:5px 0}.selection-dialog .saved-table th{color:var(--v2-deep);font-size:12px;min-width:130px}
.recently-viewed{width:calc(100% - 72px);max-width:1280px;margin:44px auto 60px}.recently-viewed__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:18px}.recently-viewed h2{font-size:26px;letter-spacing:-.04em;margin:0}.recently-viewed__head button{border:0;background:none;font-size:12px;color:var(--v2-muted);text-decoration:underline;cursor:pointer}.recently-viewed__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}.recently-viewed__card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--v2-deep);font-size:12px;line-height:1.5}.recently-viewed__card img{width:100%;height:130px;object-fit:contain;background:#fff;border:1px solid var(--v2-line);border-radius:12px;padding:12px}
@media(prefers-reduced-motion:reduce){.tuingigant-v2 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:1100px){.tuingigant-v2 .sr-hero{gap:30px;min-height:480px}.tuingigant-v2 .garden-scene{min-height:480px}.v2-discovery{grid-template-columns:1.1fr 1fr 1fr;gap:20px}.v2-discovery>.button{grid-column:1/-1;justify-self:start}.tuingigant-v2 .garden-journeys{grid-template-columns:repeat(3,minmax(0,1fr))}.tuingigant-v2 .garden-journeys>div{grid-column:1/-1;display:flex;gap:20px;align-items:center;padding:0}.tuingigant-v2 .garden-journeys h2{margin:0}.tuingigant-v2 .garden-journeys p{margin:0;max-width:40ch}.recently-viewed__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.tuingigant-v2 .sr-hero__title{font-size:38px!important}.tuingigant-v2 .sr-hero{grid-template-columns:1fr 1fr;gap:24px}.v2-hotspot{font-size:11px}.v2-hotspot--table{left:20%}.v2-hotspot--chair{right:6%}.v2-discovery{padding:22px}.v2-discovery-heading{grid-column:1/-1}.v2-discovery{grid-template-columns:1fr 1fr}.v2-discovery>.button{grid-column:1/-1;justify-self:stretch;justify-content:center}}
@media(max-width:700px){.tuingigant-v2 .sr-hero{grid-template-columns:1fr;gap:22px;margin-top:25px!important;min-height:0}.tuingigant-v2 .sr-hero__inner{padding:8px 0 0!important}.tuingigant-v2 .sr-hero__pill{font-size:10px!important}.tuingigant-v2 .sr-hero__title{font-size:37px!important;max-width:20ch!important;margin:18px 0!important}.tuingigant-v2 .sr-hero__sub{font-size:14px!important;line-height:1.65!important;margin-bottom:20px!important}.tuingigant-v2 .sr-hero__search{min-height:56px}.tuingigant-v2 .sr-hero__search input{font-size:12px!important;padding:9px!important}.tuingigant-v2 .sr-hero__search button{font-size:12px!important;padding:9px 13px!important;min-height:42px}.v2-hero-actions{margin-top:15px!important;gap:22px}.v2-hero-actions>.button{font-size:13px}.v2-hero-actions>span{font-size:11px}.tuingigant-v2 .garden-scene{min-height:0;aspect-ratio:1.25;border-radius:18px 18px 60px 18px}.v2-scene-caption{top:16px;left:16px;font-size:9px;padding:7px 9px}.v2-scene-links>small{left:16px;bottom:16px;font-size:9px}.v2-hotspot{padding:4px 10px 4px 4px;gap:6px;min-height:44px}.v2-hotspot>span{width:24px;height:24px;font-size:20px}.v2-hotspot--garden{top:28%;left:8%}.v2-hotspot--table{top:53%;left:40%}.v2-hotspot--chair{top:72%;right:9%}.tuingigant-v2 .sr-hero__chips{padding-bottom:16px;margin-top:18px!important;gap:3px!important}.tuingigant-v2 .sr-hero__chips-label{flex-basis:100%}.v2-discovery{width:calc(100% - 40px);margin-top:20px;padding:22px;gap:20px 14px}.v2-discovery h2{font-size:24px!important}.v2-discovery-step{display:block}.v2-discovery-step>span{margin-bottom:10px}.v2-discovery-step strong{font-size:13px}.v2-discovery-step p{font-size:11px}.tuingigant-v2 .sr-valuestrip{padding:20px 0!important}.tuingigant-v2 .sr-valuestrip__item{font-size:11px!important}.tuingigant-v2 .sr-section__title{font-size:26px!important}.tuingigant-v2 .sr-type .category-photo{padding:15px;border-radius:12px;margin-bottom:14px}.tuingigant-v2 .sr-type__name{font-size:16px!important}.tuingigant-v2 .sr-type__count{font-size:11px!important}.tuingigant-v2 .garden-journeys{grid-template-columns:1fr;gap:12px;padding:15px 0 28px}.tuingigant-v2 .garden-journeys>div{display:block;margin-bottom:8px}.tuingigant-v2 .garden-journeys h2{font-size:26px;margin:10px 0}.tuingigant-v2 .garden-journeys>a{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px 16px;padding:20px!important}.tuingigant-v2 .garden-journeys>a>span{grid-row:1/3}.tuingigant-v2 .garden-journeys>a strong{font-size:17px}.tuingigant-v2 .garden-journeys>a small{grid-column:2}.v2-catalog-heading{align-items:flex-start;gap:15px}.v2-catalog-heading h1{font-size:30px!important}.v2-finder-link{padding:8px 11px;font-size:11px;gap:8px;margin-top:3px}.tuingigant-v2 .product-card>img{height:160px!important;padding:14px!important}.tuingigant-v2 .product-card h2{font-size:13px!important}.tuingigant-v2 .product-card__details{font-size:11px}.tuingigant-v2 .card-facts{font-size:11px}.tuingigant-v2 .save-product{font-size:10px;min-height:32px;padding:6px 9px}.tuingigant-v2 .specs>div{padding:16px}.selection-tray{bottom:10px;gap:12px;padding:12px;width:calc(100% - 24px);border-radius:14px;flex-wrap:wrap}.selection-tray__items{gap:7px}.selection-tray__item{width:34px;height:34px;border-radius:6px}.selection-tray__item img{width:30px;height:30px}.selection-tray__item button{width:19px;height:19px;top:-7px;right:-4px;font-size:12px}.selection-tray__summary{font-size:11px;min-width:70px}.selection-tray__compare{font-size:11px;min-height:38px;padding:8px 12px}.has-selection-tray{padding-bottom:110px}.selection-dialog{padding:18px;width:calc(100% - 24px)}.selection-dialog .ux-dialog-head h2{font-size:23px}.selection-dialog .ux-dialog-head button{font-size:11px;padding:8px}.selection-dialog .saved-table th{min-width:96px;font-size:11px}.selection-dialog .saved-table td{min-width:165px}.selection-dialog .saved-table img{height:100px!important}.recently-viewed{width:calc(100% - 40px);margin:32px auto 40px}.recently-viewed__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.recently-viewed h2{font-size:24px}.recently-viewed__card img{height:120px}.recently-viewed__card{font-size:11px}.tuingigant-v2 .sr-spotlight{padding:23px!important}}
@media(max-width:360px){.tuingigant-v2 .sr-hero__title{font-size:31px!important}.v2-hotspot{font-size:10px}.v2-discovery{padding:18px}.selection-tray__items{display:none}.v2-catalog-heading{flex-wrap:wrap}.v2-finder-link{margin:0}}
/* Native choice dialog: the same calm components at every step. */
.v2-finder{border:1px solid var(--v2-line);border-radius:24px;padding:0;width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 40px);color:var(--v2-ink);background:#fff;box-shadow:0 20px 80px #16432a30;overflow:auto}
.v2-finder::backdrop{background:#16432a85;backdrop-filter:blur(5px)}.v2-finder-open{overflow:hidden}.v2-finder-shell{padding:30px 36px}.v2-finder [hidden],.selection-options[hidden],.selection-feedback[hidden]{display:none!important}
.v2-finder-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.v2-finder-eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--v2-green);font-weight:750;margin:0}.v2-finder-close{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--v2-line);background:var(--v2-paper);border-radius:50%;cursor:pointer}
.v2-finder-progress{display:flex;align-items:center;gap:18px;font-size:11px;color:var(--v2-muted);margin:0 0 24px}.v2-finder-progress-track{background:#e7f1e9;flex:1;height:4px;border-radius:10px;overflow:hidden}.v2-finder-progress-track>span{display:block;height:100%;width:33%;background:var(--v2-green)}
.v2-finder h2{font-family:var(--font-heading);font-size:32px;line-height:1.18;letter-spacing:-.04em;margin:0 0 12px;color:var(--v2-deep)}.v2-finder h2:focus{outline:none}.v2-finder #finder-description{font-size:14px;line-height:1.7;color:var(--v2-muted);margin:0 0 24px}
.v2-finder-step{border:0;padding:0;margin:0;min-width:0}.v2-finder-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v2-finder-option{position:relative;display:flex;align-items:center;gap:14px;padding:20px 16px;border:1px solid var(--v2-line);border-radius:12px;background:#fff;cursor:pointer;min-height:94px}.v2-finder-option:hover{background:var(--v2-paper)}.v2-finder-option:has(input:checked){border-color:var(--v2-green);background:#e7f1e9;box-shadow:inset 0 0 0 1px var(--v2-green)}.v2-finder-option:has(input:focus-visible){outline:3px solid var(--v2-green);outline-offset:3px}
.v2-finder-option input{position:absolute;opacity:0;width:1px;height:1px;top:15px;left:15px}.v2-finder-option-icon{color:var(--v2-green);flex-shrink:0}.v2-finder-option-copy{display:flex;flex-direction:column;gap:5px}.v2-finder-option-copy strong{font-size:14px;line-height:1.3;color:var(--v2-deep)}.v2-finder-option-copy>span{font-size:11px;color:var(--v2-muted);line-height:1.5}.v2-finder-check{display:none;margin-left:auto;color:var(--v2-green);font-size:14px}.v2-finder-option:has(input:checked) .v2-finder-check{display:block}.v2-finder-option-wide{grid-column:1/-1;min-height:65px}.v2-finder-seats{grid-template-columns:repeat(4,minmax(0,1fr))}.v2-finder-seats .v2-finder-option{padding:16px;min-height:94px}.v2-finder-seats strong{font-size:24px}.v2-finder-seats .v2-finder-option-wide strong{font-size:14px}.v2-finder-seats .v2-finder-option-wide{min-height:66px}
.v2-finder-hint{font-size:12px;line-height:1.7;color:var(--v2-muted);margin:18px 0 0}.v2-finder-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px;padding-top:22px;border-top:1px solid var(--v2-line)}.v2-finder-footer button{font:inherit;font-size:13px;cursor:pointer}.v2-finder-next{margin-left:auto;display:flex;gap:24px;min-height:46px;align-items:center;border:0}.v2-finder-back,.v2-finder-reset{border:0;background:none;color:var(--v2-muted);padding:12px 0}.v2-finder-reset{margin-left:auto;text-decoration:underline}
.v2-finder-custom{margin-top:18px}.v2-finder-custom>label{font-size:13px;font-weight:650}.v2-finder-amount{display:flex;align-items:center;gap:12px;border:1px solid var(--v2-line);border-radius:10px;margin-top:10px;padding:0 16px}.v2-finder-amount input{font:inherit;border:0;background:none;padding:14px 0;width:100%;min-width:0;color:var(--v2-ink)}.v2-finder-error{border-left:3px solid #E8512B;padding:12px;background:#E8512B0d;font-size:13px;line-height:1.5}
.v2-finder-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px;border-radius:12px;background:var(--v2-paper);margin:0 0 20px}.v2-finder-summary dt{font-size:11px;color:var(--v2-muted);margin-bottom:8px}.v2-finder-summary dd{margin:0;font-size:14px;font-weight:650;color:var(--v2-deep)}.v2-finder-result-count{font-size:20px;font-weight:650;color:var(--v2-deep)}.v2-finder-result-link{width:100%;display:flex;justify-content:center;margin-top:22px;padding:16px!important;border-radius:10px}.v2-finder-empty{padding:18px;background:var(--v2-paper);border-radius:12px;margin-top:18px}.v2-finder-empty p{font-size:13px;line-height:1.6;margin:0 0 14px}.v2-finder-empty-actions{display:flex;flex-wrap:wrap;gap:10px}.v2-finder-empty-actions :is(a,button){border:1px solid var(--v2-line);background:#fff;border-radius:7px;font:inherit;font-size:12px;color:var(--v2-deep);padding:10px;cursor:pointer;text-decoration:none}
.migration-main>.recently-viewed{width:100%}.selection-dialog .saved-table thead th{min-width:200px;vertical-align:top;text-align:left}.selection-dialog .saved-table thead th:first-child{min-width:130px}.selection-dialog .saved-table thead th a{font-size:13px;font-weight:650;line-height:1.5;display:block}.selection-dialog .saved-table thead th button{display:block;margin-top:12px}
@media(max-width:700px){.v2-finder{border-radius:18px;max-height:calc(100dvh - 24px);width:calc(100% - 24px)}.v2-finder-shell{padding:22px}.v2-finder h2{font-size:27px}.v2-finder-header{margin-bottom:16px}.v2-finder-progress{margin-bottom:22px}.v2-finder-options{gap:9px}.v2-finder-option{padding:15px 12px;flex-direction:column;align-items:flex-start;gap:12px}.v2-finder-option-copy strong{font-size:13px}.v2-finder-option-icon svg{width:32px;height:32px}.v2-finder-option-copy>span{font-size:11px}.v2-finder-check{position:absolute;right:10px;top:10px}.v2-finder-option-wide{min-height:60px;flex-direction:row;align-items:center}.v2-finder-seats{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-finder-seats .v2-finder-option{min-height:80px}.v2-finder-seats .v2-finder-option-wide{min-height:60px}.v2-finder h2+ p{font-size:13px!important}.v2-finder-summary{gap:16px;padding:16px;grid-template-columns:1fr}.v2-finder-summary>div{display:flex;justify-content:space-between;gap:16px}.v2-finder-summary dt{margin:0}.v2-finder-summary dd{text-align:right}.v2-finder-result-count{font-size:18px}.v2-finder-footer{gap:12px}.v2-finder-footer button{font-size:12px}.v2-finder-hint{font-size:11px}.selection-dialog .saved-table thead th{min-width:165px}.selection-dialog .saved-table thead th:first-child{min-width:96px}}
.tuingigant-v2 :is(.sr-hero__chips,.comparison-scope,.garden-journeys){max-width:1280px!important}
.tuingigant-v2:has(dialog[open]){overflow:hidden}
.selection-dialog .saved-table tr[data-field="Bekende productprijs"] td{font-size:20px;font-weight:750;color:var(--v2-deep)}
.selection-dialog .saved-table img{height:145px!important;background:white;border-radius:10px;padding:6px}
.selection-dialog .saved-table td,.selection-dialog .saved-table th{padding:16px}
@media(max-width:700px){.selection-dialog .saved-table tr[data-field="Bekende productprijs"] td{font-size:17px}.selection-dialog .saved-table img{height:110px!important}.selection-dialog .saved-table td,.selection-dialog .saved-table th{padding:12px}}
.selection-scroll-hint{display:none}.selection-dialog .saved-table th[scope=row]{position:sticky;left:0;z-index:1;background:var(--v2-paper)}
@media(max-width:700px){.selection-scroll-hint{display:block;font-size:11px;line-height:1.5;color:var(--v2-muted);margin:0;padding:12px;background:var(--v2-paper);position:sticky;left:0}.selection-dialog .saved-table thead th:first-child{position:sticky;left:0;z-index:1;background:var(--v2-paper)}}
.tuingigant-v2 .sr-card__body{padding:18px!important}.tuingigant-v2 .sr-card__priceline{padding-bottom:0!important}
@media(max-width:700px){.tuingigant-v2 .sr-card__body{padding:12px!important}}

/* Product purchase: a single, direct merchant action. */
.tuingigant-v2 .product-summary{min-width:0}
.tuingigant-v2 .product-summary h1{margin-bottom:18px}
.tuingigant-v2 .product-variant-label{display:block;max-width:420px;margin:22px 0 16px;font-size:13px;font-weight:700}
.tuingigant-v2 #product-variant{display:block;width:100%;max-width:100%;margin:8px 0 0;min-height:46px;background:#fff;color:var(--sr-ink)}
.tuingigant-v2 .product-purchase .price{margin:18px 0 0;color:#16432a}
.tuingigant-v2 .product-merchant{margin:3px 0 0;font-size:14px;color:#526153}
.tuingigant-v2 .product-hero .product-buy{display:flex;gap:14px;width:100%;max-width:420px;margin:20px 0 0;min-height:54px;background:#2e7d4e;font-size:16px;border-radius:10px}
.tuingigant-v2 .product-hero .product-buy:hover{background:#16432a}
.tuingigant-v2 .product-buy-note{font-size:12px;margin:10px 0 18px;color:#526153}
.tuingigant-v2 .product-hero [hidden]{display:none!important}
.tuingigant-v2 .offer>a.offer-shop-link{background:transparent;color:#2e7d4e!important;min-height:44px;border:0;padding:8px 0;border-radius:0;text-decoration:underline!important;text-underline-offset:4px;justify-content:flex-start;font-size:13px}
.tuingigant-v2 .offer>a.offer-shop-link:hover{background:transparent;color:#16432a!important}
@media(max-width:700px){
 .tuingigant-v2 .product-summary{order:-1}
 .tuingigant-v2 .product-hero{gap:24px}
 .tuingigant-v2 .product-hero h1{font-size:26px;margin-top:8px}
 .tuingigant-v2 .product-summary .hero-facts{margin-bottom:12px}
 .tuingigant-v2 .product-hero .product-buy,.tuingigant-v2 .product-variant-label{max-width:none}
 .tuingigant-v2 .product-images{margin-top:0}
 .tuingigant-v2 .offer>a.offer-shop-link{grid-column:1/-1;width:auto;justify-self:start}
}

.selection-dialog div.saved-table>.saved-status{margin:0;padding:14px 16px;line-height:1.6}

.selection-single-hint{font-size:13px;line-height:1.6;padding:14px 16px;margin:0;color:var(--v2-muted)}

/* Existing category copy is retained; additional guidance is scoped to first-page landings. */
.landing-paths{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:0 0 28px;padding:18px 0;border-top:1px solid #dce5dc;border-bottom:1px solid #dce5dc}
.landing-paths__links{display:flex;gap:10px;flex-wrap:wrap}.landing-paths__links a{display:inline-flex;align-items:center;gap:20px;padding:11px 16px;border:1px solid #dce5dc;border-radius:999px;color:#16432A;background:#fff;font-size:.9rem;font-weight:600;text-decoration:none}.landing-paths__links a:hover{background:#edf3ed;border-color:#2E7D4E}
.landing-paths__advice{font-size:.9rem;color:#16432A;text-underline-offset:4px}.landing-guide{max-width:1160px;margin:48px auto 28px;padding:40px;border:1px solid #dce5dc;border-radius:24px;background:#F8FAF6;scroll-margin-top:110px}.landing-guide__intro{max-width:760px}.landing-guide__eyebrow{color:#2E7D4E;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin:0 0 12px}.landing-guide h2{font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.2;letter-spacing:-.035em;margin:0 0 18px;color:#16432A}.landing-guide__intro>p:last-child{font-size:1.06rem;line-height:1.75;color:#394b3d}.landing-guide__sections{display:grid;grid-template-columns:1fr 1fr;gap:32px 40px;margin:32px 0}.landing-guide__section{display:flex;align-items:flex-start;gap:16px;min-width:0;border-top:1px solid #dce5dc;padding-top:24px}.landing-guide__number{font-size:.8rem;color:#2E7D4E;font-weight:700;padding-top:5px}.landing-guide h3{font-size:1.15rem;line-height:1.4;color:#16432A;margin:0 0 14px}.landing-guide__section p{font-size:.96rem;line-height:1.8;margin:0 0 14px;color:#394b3d}.landing-guide a{color:#16432A;text-decoration:underline;text-underline-offset:3px}.landing-guide__back{display:inline-flex;gap:14px;font-size:.95rem;font-weight:600;padding:8px 0}#catalog-products{scroll-margin-top:110px}
@media(max-width:760px){.landing-paths{gap:16px;margin-bottom:22px}.landing-paths__links{gap:8px}.landing-paths__links a{font-size:.82rem;padding:10px 12px;gap:12px}.landing-guide{padding:24px 20px;margin-top:32px;border-radius:18px}.landing-guide__sections{grid-template-columns:1fr;gap:12px;margin-top:24px}.landing-guide__section{gap:12px;padding-top:20px}.landing-guide__number{font-size:.75rem}.landing-guide h3{font-size:1.07rem}}
/* Existing landing pages: compact, server-rendered category paths. */
.landing-explore{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0 0 28px;padding:22px;border:1px solid #dfe7dc;border-radius:16px;background:#F8FAF6}
.landing-explore__group:only-child{grid-column:1/-1}
.landing-explore h2{font-size:15px;line-height:1.4;margin:0 0 10px;color:#16432A}
.landing-explore ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.landing-explore li{max-width:100%}
.landing-explore a{display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 13px;border:1px solid #dfe7dc;border-radius:8px;background:#fff;color:#16432A;text-decoration:none;font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.landing-explore a:hover{border-color:#2E7D4E;background:#f0f6ee}
.landing-explore small{color:#52604e;font-variant-numeric:tabular-nums;font-size:12px}
.landing-explore summary{padding:12px 0 8px;min-height:44px;font-size:14px;color:#16432A;text-decoration:underline;cursor:pointer}
.landing-explore details[open] ul{margin-bottom:4px}
.landing-context-note{max-width:75ch;margin:0 0 24px;font-size:15px;line-height:1.7;color:#52604e}
.landing-related{margin:36px 0;padding:24px;border-top:1px solid #dfe7dc;border-bottom:1px solid #dfe7dc}
.landing-related h2{font-size:21px;margin:0 0 12px;color:#16432A}
.author-archive{max-width:800px;margin-inline:auto}
.author-archive .wp-block-post-template{list-style:none;padding:0}
.author-archive .wp-block-post-template>li{padding:32px 0;border-bottom:1px solid #dfe7dc}
.author-archive .wp-block-query-pagination{display:flex;flex-wrap:wrap;gap:20px;margin:32px 0}
.author-archive .page-numbers{display:inline-flex;padding:12px;min-width:44px;justify-content:center}
.landing-related ul{display:grid;gap:10px;list-style:none;padding:0;margin:0}
.landing-related a,.catalog-empty__alternatives a{color:#16432A;text-decoration:underline;text-underline-offset:3px;line-height:1.6}
.catalog-empty__alternatives{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px}
.catalog-empty__alternatives a{padding:10px 0}
.landing-explore a:focus-visible,.landing-explore summary:focus-visible,.landing-related a:focus-visible,.catalog-empty__alternatives a:focus-visible{outline:3px solid #2E7D4E;outline-offset:3px}
@media(max-width:640px){.landing-explore{grid-template-columns:1fr;gap:18px;padding:16px;margin-bottom:20px}.landing-explore a{padding:9px 11px}.landing-related{padding:20px 0}.landing-related h2{font-size:20px}.catalog-empty__alternatives{flex-direction:column;gap:4px}}
