@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap");
/**
 * Avilia base stylesheet — editorial, image-first.
 * Foundations tokens (Archivo, terracotta, salie, goud) locked via theme.json.
 */

:root {
	--av-radius:   8px;
	--av-radius-l: 14px;
	--av-tap-min:  44px;
	--av-container: 1520px;
	--av-focus-ring: 0 0 0 3px rgba(154, 79, 53, 0.35);
	--av-shadow-card: 0 1px 2px rgba(28,25,23,0.05), 0 6px 20px rgba(28,25,23,0.06);
	--av-shadow-lift: 0 10px 30px rgba(28,25,23,0.08);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }

body {
	font-family: var(--wp--preset--font-family--archivo);
	font-size: var(--wp--preset--font-size--body);
	line-height: 1.6;
	color: var(--wp--preset--color--inkt);
	background: var(--wp--preset--color--basis);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0;
}

h1, h2, h3, h4, h5, h6 { font-weight: 500; margin: 0 0 12px; letter-spacing: -0.005em; }
img { max-width: 100%; height: auto; display: block; }

a { color: var(--wp--preset--color--terra-600); text-decoration: none; }
a:hover, a:focus-visible { color: var(--wp--preset--color--terra-800); text-decoration: underline; }
.wp-block-button__link,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
.wp-block-button__link:focus-visible,
.av-btn,
.av-btn:hover,
.av-btn:focus,
.av-btn:focus-visible { text-decoration: none !important; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
	outline: none; box-shadow: var(--av-focus-ring); border-radius: var(--av-radius);
}

.av-visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

/* Kill block-editor list markers inside our custom sections. */
.av-catgrid ul, .av-shops ul, .av-newin ul, .av-consults ul, .av-edband ul, .av-tabs, .av-trust ul {
	list-style: none !important; padding-left: 0 !important; margin-left: 0 !important;
}

/* -------------------------------------------------------------------------
   Buttons
   ------------------------------------------------------------------------- */
.av-btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: var(--av-tap-min);
	padding: 12px 22px;
	border-radius: 999px;
	border: 1px solid transparent;
	font-weight: 500; font-size: var(--wp--preset--font-size--body); letter-spacing: 0.01em;
	cursor: pointer;
	background: var(--wp--preset--color--terra-600);
	color: var(--wp--preset--color--basis);
	transition: background 120ms ease, transform 60ms ease;
	text-decoration: none;
}
.av-btn:hover  { background: var(--wp--preset--color--terra-800); text-decoration: none; color: var(--wp--preset--color--basis); }
.av-btn:active { transform: translateY(1px); }
.av-btn[disabled], .av-btn.is-disabled { background: var(--wp--preset--color--lijn); color: var(--wp--preset--color--gedempt); cursor: not-allowed; }
.av-btn--ghost   { background: transparent; color: var(--wp--preset--color--inkt); border-color: var(--wp--preset--color--lijn); }
.av-btn--ghost:hover { background: var(--wp--preset--color--vlak); color: var(--wp--preset--color--inkt); }
.av-btn--onimage { background: rgba(255,255,255,0.14); backdrop-filter: blur(6px); color: var(--wp--preset--color--basis); border: 1px solid rgba(255,255,255,0.28); }
.av-btn--onimage:hover { background: rgba(255,255,255,0.22); color: var(--wp--preset--color--basis); }
.av-btn--cream   { background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt); border-color: var(--wp--preset--color--basis); }
.av-btn--cream:hover { background: var(--wp--preset--color--vlak); color: var(--wp--preset--color--inkt); border-color: var(--wp--preset--color--vlak); }
.av-btn--outline { background: transparent; color: var(--wp--preset--color--basis); border-color: rgba(255,255,255,0.55); }
.av-btn--outline:hover { background: rgba(255,255,255,0.08); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--basis); }
.av-btn--brown { background: var(--wp--preset--color--bruin); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--bruin); }
.av-btn--brown:hover { background: #2f2015; color: var(--wp--preset--color--basis); border-color: #2f2015; }


/* -------------------------------------------------------------------------
   Form fields
   ------------------------------------------------------------------------- */
.av-field, .av-input { display: block; width: 100%; }
.av-field { margin: 0 0 16px; }
.av-field__label { display: block; font-size: var(--wp--preset--font-size--small); font-weight: 500; color: var(--wp--preset--color--inkt); margin-bottom: 6px; }
.av-field__label .req { color: var(--wp--preset--color--fout); }
.av-field__hint { display: block; font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--gedempt); margin-top: 4px; }
.av-field input, .av-field select, .av-field textarea, .av-input {
	width: 100%; min-height: var(--av-tap-min);
	padding: 10px 14px;
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	background: var(--wp--preset--color--vlak); color: var(--wp--preset--color--inkt);
	font-family: inherit; font-size: var(--wp--preset--font-size--body);
}
.av-field.is-error input, .av-field.is-error select, .av-field.is-error textarea { border-color: var(--wp--preset--color--fout); }

/* -------------------------------------------------------------------------
   Badges
   ------------------------------------------------------------------------- */
.av-badge {
	display: inline-flex; align-items: center; gap: 4px;
	padding: 2px 8px;
	border-radius: var(--av-radius);
	font-size: var(--wp--preset--font-size--small); font-weight: 500;
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	border: 1px solid var(--wp--preset--color--lijn); line-height: 1.4;
}
.av-badge--verified { background: color-mix(in srgb, var(--wp--preset--color--goud) 12%, var(--wp--preset--color--vlak)); border-color: var(--wp--preset--color--goud); color: var(--wp--preset--color--goud); }
.av-badge--goed     { background: color-mix(in srgb, var(--wp--preset--color--goed) 12%, var(--wp--preset--color--vlak)); color: var(--wp--preset--color--goed); border-color: color-mix(in srgb, var(--wp--preset--color--goed) 40%, transparent); }
.av-badge--aandacht { background: color-mix(in srgb, var(--wp--preset--color--aandacht) 14%, var(--wp--preset--color--vlak)); color: var(--wp--preset--color--aandacht); border-color: color-mix(in srgb, var(--wp--preset--color--aandacht) 40%, transparent); }
.av-badge--fout     { background: color-mix(in srgb, var(--wp--preset--color--fout) 12%, var(--wp--preset--color--vlak)); color: var(--wp--preset--color--fout); border-color: color-mix(in srgb, var(--wp--preset--color--fout) 40%, transparent); }

/* -------------------------------------------------------------------------
   Callouts, cards, price
   ------------------------------------------------------------------------- */
.av-callout {
	padding: 12px 16px; border-radius: var(--av-radius);
	border-left: 3px solid var(--wp--preset--color--lijn);
	background: var(--wp--preset--color--vlak); color: var(--wp--preset--color--inkt);
	font-size: var(--wp--preset--font-size--small); margin: 12px 0;
}
.av-callout--info     { border-left-color: var(--wp--preset--color--terra-600); background: var(--wp--preset--color--terra-050); }
.av-callout--goed     { border-left-color: var(--wp--preset--color--goed); }
.av-callout--aandacht { border-left-color: var(--wp--preset--color--aandacht); }
.av-callout--fout     { border-left-color: var(--wp--preset--color--fout); }

.av-card { background: var(--wp--preset--color--vlak); border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius); padding: 20px; box-shadow: var(--av-shadow-card); }

.av-price      { font-weight: 500; }
.av-price--old { color: var(--wp--preset--color--gedempt); text-decoration: line-through; font-weight: 400; margin-left: 8px; }

.av-container { max-width: var(--av-container); margin: 0 auto; padding: 0 40px; }

/* =========================================================================
   HEADER — dark top strip, cream main row, category nav
   ========================================================================= */
.av-topstrip { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); }
.av-topstrip p { margin: 0; color: var(--wp--preset--color--basis); }
.av-topstrip a { color: var(--wp--preset--color--goud); text-decoration: none; }
.av-topstrip a:hover { color: var(--wp--preset--color--basis); text-decoration: underline; }
.av-topstrip__row { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: center; }
.av-topstrip__left, .av-topstrip__right { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.av-topstrip__dot { opacity: 0.5; }
.av-topstrip__sell { color: var(--wp--preset--color--goud) !important; font-weight: 500; }

.av-header__row { align-items: center; gap: 24px; }
.av-header__logo { flex: 0 0 auto; }
.av-header__logo img,
.av-header .wp-block-site-logo img,
.custom-logo { max-height: 100px !important; height: auto !important; width: auto !important; max-width: none !important; display: block; }
@media (min-width: 1024px) {
	.av-header__logo img,
	.av-header .wp-block-site-logo img,
	.custom-logo { max-height: 130px !important; }
}

/* Search block — pill-rounded, muted vlak fill. */
.av-header__search { flex: 1 1 auto; max-width: 820px; margin: 0 8px; }
.av-header__search .wp-block-search__inside-wrapper {
	background: var(--wp--preset--color--terra-050);
	border: 1px solid transparent;
	border-radius: 999px;
	padding: 6px 8px 6px 22px;
	transition: border-color 120ms ease, background 120ms ease;
}
.av-header__search .wp-block-search__inside-wrapper:focus-within { border-color: var(--wp--preset--color--terra-600); }
.av-header__search .wp-block-search__input { border: 0; background: transparent; padding: 10px 6px; min-height: 46px; font-size: 15px; box-shadow: none; }
.av-header__search .wp-block-search__input:focus { box-shadow: none; }
.av-header__search .wp-block-search__button { background: var(--wp--preset--color--terra-600); color: var(--wp--preset--color--basis); border-radius: 999px; padding: 10px 14px; min-width: 40px; min-height: 40px; }

.av-header__nav { align-items: center; gap: 20px; }
.av-header__nav p { margin: 0; }
.av-header__nav a { color: var(--wp--preset--color--inkt); }
.av-header__nav a:hover { color: var(--wp--preset--color--terra-600); }

.av-header__cart {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 8px 18px;
	border: 1px solid var(--wp--preset--color--terra-800);
	border-radius: 999px;
	background: var(--wp--preset--color--terra-800);
	color: var(--wp--preset--color--basis);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	text-decoration: none;
	min-height: 40px;
}
.av-header__cart:hover { background: color-mix(in srgb, var(--wp--preset--color--terra-800) 82%, black); border-color: color-mix(in srgb, var(--wp--preset--color--terra-800) 82%, black); color: var(--wp--preset--color--basis); text-decoration: none; }
.av-header__cart, .av-header__cart span { color: var(--wp--preset--color--basis) !important; }

.av-header__cart-count {
	background: var(--wp--preset--color--terra-600);
	color: var(--wp--preset--color--basis);
	border-radius: 999px;
	padding: 2px 8px;
	font-size: var(--wp--preset--font-size--label);
	font-weight: 500;
	min-width: 22px; text-align: center; line-height: 1.3;
}

/* Category nav */
.av-catnav { background: var(--wp--preset--color--basis); overflow: hidden; max-width: 100vw; }
.av-catnav__list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	justify-content: center;
	gap: 28px;
	overflow-x: auto;
	scrollbar-width: none;
}
.av-catnav__list::-webkit-scrollbar { display: none; }
.av-catnav__list li { flex: 0 0 auto; }
.av-catnav__list a {
	color: #000;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none;
	white-space: nowrap;
	padding: 4px 0;
	border-bottom: 2px solid transparent;
	transition: border-color 120ms ease, color 120ms ease;
}
.av-catnav__list a:hover, .av-catnav__list a[aria-current] {
	color: var(--wp--preset--color--terra-600);
	border-bottom-color: var(--wp--preset--color--terra-600);
	text-decoration: none;
}

@media (max-width: 767px) {
	.av-header__search { display: none !important; }
	.av-header__nav p { display: none; }
	.av-header__nav { gap: 8px !important; }
	.av-header__nav .av-header__cart { display: inline-flex; padding: 8px 10px !important; min-width: 44px; min-height: 44px; }
	.av-header__cart-label { display: none !important; }
	.av-topstrip__row { justify-content: center; font-size: 12px; }
	.av-topstrip__left, .av-topstrip__right { gap: 6px; }
	.av-topstrip__right span:not(.av-topstrip__dot) { display: none; }
	.av-catnav__list { gap: 18px; padding: 0 20px !important; }
	.av-catnav { padding: 10px 0 !important; }
	.av-header__row { padding: 0 12px !important; gap: 8px !important; }
	/* Kill horizontal scroll from any full-bleed child */
	html, body { overflow-x: hidden; max-width: 100vw; }
}

/* =========================================================================
   HERO — centered logo + kicker + big line + sub + 3-CTA row on full-bleed image
   ========================================================================= */
.av-hero { background: var(--wp--preset--color--inkt); }
.av-hero__frame {
	position: relative;
	min-height: 620px;
	overflow: hidden;
	color: var(--wp--preset--color--basis);
	isolation: isolate;
}
.av-hero__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
.av-hero__overlay {
	position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(180deg, rgba(15,10,7,0.25) 0%, rgba(15,10,7,0.55) 100%);
}
.av-hero__body {
	position: relative; z-index: 2;
	padding: 120px 20px 140px;
	display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
	text-align: left;
	min-height: 720px;
}
.av-hero__logo {
	display: block;
	max-width: 220px; width: auto; height: auto;
	margin: 0 0 28px;
	filter: drop-shadow(0 2px 12px rgba(0,0,0,0.25));
}
.av-hero__copy { max-width: 640px; margin: 0; }
.av-hero__kicker {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 500; text-transform: uppercase; letter-spacing: 0.22em;
	color: var(--wp--preset--color--basis);
	opacity: 0.9;
	margin: 0 0 22px;
}
.av-hero__heading {
	font-family: var(--wp--preset--font-family--cormorant);
	font-size: clamp(40px, 6vw, 72px); line-height: 1.05; letter-spacing: -0.005em; font-weight: 500;
	margin: 0 0 24px;
	color: var(--wp--preset--color--basis);
}
.av-hero__text {
	font-size: var(--wp--preset--font-size--lead);
	line-height: 1.55; color: rgba(250,248,245,0.92);
	margin: 0 0 32px;
	max-width: 52ch;
}
.av-hero__ctas {
	display: flex; flex-wrap: wrap; justify-content: flex-start;
	gap: 14px;
	margin: 0;
}
.av-hero__ctas .av-btn {
	min-height: 48px; padding: 12px 28px;
	border-radius: 999px;
	font-weight: 500;
	white-space: nowrap;
}
.av-btn--terra {
	background: var(--wp--preset--color--terra-600);
	color: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--terra-600);
}
.av-btn--terra:hover {
	background: var(--wp--preset--color--terra-800);
	border-color: var(--wp--preset--color--terra-800);
	color: var(--wp--preset--color--basis);
}

@media (min-width: 1024px) {
	.av-hero__frame, .av-hero__body { min-height: 720px; }
	.av-hero__body { padding: 88px 40px 96px; }
	.av-hero__logo { max-width: 260px; margin-bottom: 36px; }
	.av-hero__heading { font-size: 68px; line-height: 1.02; }
	.av-hero__text { font-size: 19px; }
}

@media (max-width: 767px) {
	.av-hero__frame, .av-hero__body { min-height: 560px; }
	.av-hero__body { padding: 44px 20px 56px; }
	.av-hero__logo { max-width: 170px; margin-bottom: 22px; }
	.av-hero__heading { font-size: 34px; }
	.av-hero__text { font-size: 16px; }
	.av-hero__ctas { flex-direction: column; align-items: stretch; gap: 10px; }
	.av-hero__ctas .av-btn { width: 100%; }
}

/* =========================================================================
   TRUST STRIP — 4-col value bar with icon + label + sub
   ========================================================================= */
.av-trust { background: var(--wp--preset--color--basis); border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-trust__list {
	display: grid; grid-template-columns: 1fr; gap: 20px;
	padding: 24px 20px;
}
.av-trust__item { display: flex; align-items: flex-start; gap: 12px; color: var(--wp--preset--color--inkt); font-size: var(--wp--preset--font-size--body); }
.av-trust__icon {
	width: 34px; height: 34px; flex: 0 0 auto;
	color: var(--wp--preset--color--terra-600);
	display: grid; place-items: center;
	font-size: 20px;
	line-height: 1;
}
.av-trust__text { display: flex; flex-direction: column; gap: 2px; }
.av-trust__label { font-size: var(--wp--preset--font-size--body); font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-trust__sub { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--gedempt); }
@media (min-width: 768px)  { .av-trust__list { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .av-trust__list { grid-template-columns: repeat(4, 1fr); padding: 32px 40px; gap: 32px; } }

/* =========================================================================
   CATEGORY GRID — image cards with text overlay
   ========================================================================= */
.av-catgrid { padding: 96px 0; background: var(--wp--preset--color--basis); }
.av-catgrid__head { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; margin-bottom: 56px; }
.av-catgrid__heading { font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(30px, 3.6vw, 46px); font-weight: 500; line-height: 1.15; margin: 0 0 4px; }
.av-catgrid__sub { color: var(--wp--preset--color--gedempt); font-size: var(--wp--preset--font-size--body); margin: 0; }
.av-catgrid__all { font-size: var(--wp--preset--font-size--small); font-weight: 500; color: var(--wp--preset--color--terra-600); }

.av-catgrid__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}
.av-catgrid__item { margin: 0; }
.av-catgrid__card {
	display: flex; flex-direction: column;
	color: var(--wp--preset--color--inkt);
	text-decoration: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	overflow: visible;
	box-shadow: none;
	transition: transform 200ms ease;
}
.av-catgrid__card:hover { color: var(--wp--preset--color--inkt); text-decoration: none; transform: translateY(-2px); }
.av-catgrid__thumb {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: var(--wp--preset--color--terra-050);
	border-radius: var(--av-radius-l);
}
.av-catgrid__img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.av-catgrid__card:hover .av-catgrid__img { transform: scale(1.03); }
.av-catgrid__foot {
	display: flex; justify-content: center; align-items: baseline;
	gap: 12px;
	padding: 16px 4px 4px;
}
.av-catgrid__label { font-size: 15px; font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-catgrid__count { display: none; }
@media (min-width: 768px)  { .av-catgrid__list { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 1024px) { .av-catgrid__list { grid-template-columns: repeat(4, 1fr); gap: 28px; } }

/* =========================================================================
   FEATURED SHOPS — light cards, image top, avatar + rating row, ships-in + visit shop
   ========================================================================= */
.av-shops { padding: 120px 0; background: var(--wp--preset--color--bruin); color: var(--wp--preset--color--basis); }
.av-shops__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 48px; flex-wrap: wrap; }
.av-shops__heading { font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(34px, 4vw, 54px); font-weight: 500; line-height: 1.12; letter-spacing: -0.005em; margin: 0 0 10px; color: var(--wp--preset--color--basis); }
.av-shops__sub { color: rgba(238,232,223,0.72); font-size: var(--wp--preset--font-size--body); margin: 0; max-width: 62ch; }
.av-shops__all { font-size: var(--wp--preset--font-size--small); font-weight: 500; color: var(--wp--preset--color--basis); text-decoration: none; border-bottom: 1px solid rgba(238,232,223,0.35); padding-bottom: 2px; }
.av-shops__all:hover { color: var(--wp--preset--color--basis); border-bottom-color: var(--wp--preset--color--basis); text-decoration: none; }

.av-shops__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 32px 24px; }
.av-shops__item { margin: 0; }
.av-shops__card {
	display: flex; flex-direction: column;
	background: transparent;
	color: var(--wp--preset--color--inkt);
	border: 0;
	border-radius: 0;
	overflow: hidden;
	box-shadow: none;
	text-decoration: none;
	transition: transform 200ms ease;
}
.av-shops__card:hover { transform: translateY(-2px); text-decoration: none; color: var(--wp--preset--color--basis); }
.av-shops__thumb { display: block; aspect-ratio: 4 / 3; background: var(--wp--preset--color--terra-050); overflow: hidden; border-radius: var(--av-radius-l); }
.av-shops__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.av-shops__card:hover .av-shops__thumb img { transform: scale(1.03); }

.av-shops__body { display: flex; flex-direction: column; gap: 6px; padding: 20px 4px 4px; }
.av-shops__head-row { display: flex; gap: 12px; align-items: center; }
.av-shops__avatar {
	width: 40px; height: 40px; flex: 0 0 auto;
	border-radius: var(--av-radius);
	background: var(--wp--preset--color--terra-050);
	color: var(--wp--preset--color--terra-800);
	font-weight: 500; font-size: 18px;
	display: grid; place-items: center;
}
.av-shops__title-block { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.av-shops__name-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.av-shops__name { font-family: var(--wp--preset--font-family--cormorant); font-weight: 500; font-size: 22px; line-height: 1.2; color: var(--wp--preset--color--basis); text-decoration: none; margin-top: 6px; }
.av-shops__meta-row { font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(238,232,223,0.62); }
.av-shops__pitch { font-size: 13px; line-height: 1.5; color: rgba(238,232,223,0.85); max-width: 34ch; }

.av-shops__name:hover { color: var(--wp--preset--color--inkt); text-decoration: underline; }
.av-shops__meta-row { font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(238,232,223,0.6); margin: 0; }
.av-shops__pitch { font-size: 13px; color: rgba(238,232,223,0.72); line-height: 1.55; margin: 4px 0 0; }

.av-shops__foot {
	display: flex; justify-content: space-between; align-items: center;
	gap: 12px;
	padding-top: 14px;
	border-top: 1px solid var(--wp--preset--color--lijn);
	margin-top: 4px;
}
.av-shops__ships { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--gedempt); }
.av-shops__visit {
	min-height: 36px; padding: 6px 14px;
	font-size: var(--wp--preset--font-size--small);
	background: var(--wp--preset--color--vlak);
	color: var(--wp--preset--color--inkt);
	border-color: var(--wp--preset--color--lijn);
}
.av-shops__visit:hover { background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt); border-color: var(--wp--preset--color--gedempt); }

@media (min-width: 768px)  { .av-shops__list { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .av-shops__list { grid-template-columns: repeat(3, 1fr); gap: 24px; } }

/* =========================================================================
   NEW ARRIVALS — product cards
   ========================================================================= */
.av-newin { padding: 88px 0; background: var(--wp--preset--color--basis); }
.av-newin__head {
	display: flex; justify-content: space-between; align-items: center;
	gap: 20px; margin-bottom: 24px; flex-wrap: wrap;
}
.av-newin__heading {
	font-size: 32px; line-height: 1.15; margin: 0;
	font-weight: 500; letter-spacing: -0.01em; color: var(--wp--preset--color--inkt);
}
@media (min-width: 1024px) { .av-newin__heading { font-size: 40px; } }

.av-newin__tabs { display: inline-flex; gap: 16px; flex-wrap: wrap; margin-left: auto; }
.av-newin__tab {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 6px 4px; min-height: 32px;
	font: inherit; font-size: 14px; font-weight: 500;
	background: transparent;
	color: var(--wp--preset--color--gedempt);
	border: 0;
	border-bottom: 2px solid transparent;
	border-radius: 0; cursor: pointer;
	transition: color .15s ease, border-color .15s ease;
}
.av-newin__tab:hover { color: var(--wp--preset--color--inkt); }
.av-newin__tab.is-active {
	background: transparent;
	color: var(--wp--preset--color--inkt);
	border-bottom-color: var(--wp--preset--color--terra-600);
}

/* Slider layout (was 4-col grid) */
.av-newin__scroller { position: relative; }
.av-newin__list {
	display: flex; gap: 20px;
	overflow-x: auto; overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	padding: 4px 4px 12px;
	margin: 0 -4px;
}
.av-newin__list::-webkit-scrollbar { display: none; }
.av-newin__item { flex: 0 0 calc(50% - 10px); scroll-snap-align: start; }
@media (min-width: 768px)  { .av-newin__item { flex: 0 0 calc(33.333% - 14px); } }
@media (min-width: 1024px) { .av-newin__item { flex: 0 0 calc(25% - 18px); } .av-newin__list { gap: 24px; } }
@media (min-width: 1280px) { .av-newin__item { flex: 0 0 calc(20% - 20px); } }

.av-newin__nav {
	position: absolute; top: 40%;
	transform: translateY(-50%);
	z-index: 3;
	width: 44px; height: 44px; border-radius: 50%;
	border: 1px solid var(--wp--preset--color--lijn);
	background: var(--wp--preset--color--vlak);
	color: var(--wp--preset--color--inkt);
	font-size: 22px; line-height: 1;
	display: inline-flex; align-items: center; justify-content: center;
	cursor: pointer;
	box-shadow: 0 2px 10px rgba(28,25,23,0.10);
	transition: box-shadow .2s ease, transform .2s ease, opacity .2s ease;
}
.av-newin__nav:hover { box-shadow: 0 4px 16px rgba(28,25,23,0.16); }
.av-newin__nav--prev { left: -14px; }
.av-newin__nav--next { right: -14px; }
.av-newin__nav[hidden] { display: none; }
@media (max-width: 767px) {
	.av-newin__nav--prev { left: 4px; }
	.av-newin__nav--next { right: 4px; }
}

.av-newin__card {
	display: block; text-decoration: none; color: var(--wp--preset--color--inkt);
	background: var(--wp--preset--color--vlak);
	border: 1px solid transparent;
	border-radius: var(--av-radius-l);
	overflow: hidden;
	transition: box-shadow .2s ease, border-color .2s ease;
}
.av-newin__card:hover { text-decoration: none; color: var(--wp--preset--color--inkt); box-shadow: var(--av-shadow-card); border-color: var(--wp--preset--color--gedempt); }

.av-newin__thumb {
	position: relative; display: block;
	aspect-ratio: 1 / 1;
	background: var(--wp--preset--color--vlak);
	overflow: hidden;
}
.av-newin__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease; }
.av-newin__card:hover .av-newin__thumb img { transform: scale(1.03); }

.av-newin__badge {
	position: absolute; top: 12px; left: 12px;
	display: inline-flex; align-items: center;
	padding: 4px 10px; font-size: 11px; font-weight: 500;
	background: var(--wp--preset--color--basis);
	color: var(--wp--preset--color--inkt);
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(28,25,23,0.08);
}

.av-newin__body { display: flex; flex-direction: column; gap: 6px; padding: 14px 14px 14px; }
.av-newin__shop { display: inline-flex; align-items: center; gap: 6px; font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--gedempt); }
.av-newin__chip { width: 10px; height: 10px; border-radius: 2px; background: var(--wp--preset--color--terra-300, #E3CFC5); flex: 0 0 auto; }
.av-newin__shopname { color: var(--wp--preset--color--gedempt); }
.av-newin__name { font-weight: 500; font-size: 13px; line-height: 1.4; color: var(--wp--preset--color--inkt); }
.av-newin__row {
	display: flex; justify-content: space-between; align-items: baseline;
	gap: 8px; margin-top: 2px;
}
.av-newin__price { font-weight: 500; font-size: 12px; color: var(--wp--preset--color--gedempt); display: inline-flex; align-items: baseline; gap: 8px; }
.av-newin__price .woocommerce-Price-amount { font-weight: 500; }
.av-newin__rating { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-newin__stars { position: relative; display: inline-block; font-size: 13px; letter-spacing: 2px; line-height: 1; color: var(--wp--preset--color--lijn); font-family: Arial, sans-serif; }
.av-newin__stars::before { content: "★★★★★"; }
.av-newin__stars > span { position: absolute; top: 0; left: 0; overflow: hidden; white-space: nowrap; color: #C99A2E; }
.av-newin__stars > span::before { content: "★★★★★"; }
.av-newin__rating-num { font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-newin__nav.is-disabled { opacity: 0.35; cursor: default; pointer-events: none; }

.av-newin__old { font-size: 13px; color: var(--wp--preset--color--gedempt); text-decoration: line-through; font-weight: 400; }
.av-newin__old .woocommerce-Price-amount { color: var(--wp--preset--color--gedempt); }
.av-newin__stock { display: none; }

/* =========================================================================
   CONSULTATIONS — dark editorial, portrait cards
   ========================================================================= */
.av-consults {
	padding: 120px 0;
	background: var(--wp--preset--color--bruin);
	color: var(--wp--preset--color--basis);
}
.av-consults__grid { display: grid; grid-template-columns: 1fr; gap: 40px; }
.av-consults__intro { max-width: 46ch; }

.av-consults__kicker {
	font-size: 11px;
	font-weight: 600; text-transform: uppercase; letter-spacing: 0.22em;
	color: rgba(238,232,223,0.7);
	margin: 0 0 20px;
}
.av-consults__heading { font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(34px, 4vw, 54px); font-weight: 500; line-height: 1.1; margin: 0 0 18px; letter-spacing: -0.005em; color: var(--wp--preset--color--basis); }
.av-consults__body { font-size: var(--wp--preset--font-size--lead); color: rgba(250,248,245,0.85); margin: 0 0 22px; max-width: 42ch; }

.av-consults__bullets { list-style: none !important; margin: 0 0 28px !important; padding: 0 !important; display: grid; gap: 10px; }
.av-consults__bullets li { display: flex; align-items: flex-start; gap: 10px; color: rgba(250,248,245,0.9); font-size: var(--wp--preset--font-size--body); }
.av-consults__check { color: var(--wp--preset--color--terra-200); font-weight: 600; line-height: 1.5; }

.av-consults .av-consults__cta.av-btn {
	background: var(--wp--preset--color--terra-600);
	color: var(--wp--preset--color--basis);
	border-color: var(--wp--preset--color--terra-600);
}
.av-consults .av-consults__cta.av-btn:hover { background: var(--wp--preset--color--terra-800); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--terra-800); }

.av-consults__list { display: grid; grid-template-columns: 1fr; gap: 16px; }
.av-consults__item { margin: 0; }
.av-consults__card {
	display: flex; flex-direction: column;
	background: rgba(255,255,255,0.04);
	color: var(--wp--preset--color--basis);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: var(--av-radius-l);
	overflow: hidden;
	text-decoration: none;
	transition: transform 200ms ease, border-color 200ms ease, background 200ms ease;
}
.av-consults__card:hover { transform: translateY(-2px); color: var(--wp--preset--color--basis); text-decoration: none; border-color: rgba(255,255,255,0.2); background: rgba(255,255,255,0.06); }
.av-consults__thumb {
	display: block; aspect-ratio: 16 / 9;
	background: #37332f;
	overflow: hidden;
}
.av-consults__thumb img { width: 100%; height: 100%; object-fit: cover; }
.av-consults__meta { display: flex; flex-direction: column; gap: 4px; padding: 18px 20px 22px; }
.av-consults__title { font-family: var(--wp--preset--font-family--cormorant); font-size: 22px; font-weight: 500; line-height: 1.2; margin: 0 0 4px; color: var(--wp--preset--color--basis); }
.av-consults__who { font-size: var(--wp--preset--font-size--small); color: rgba(250,248,245,0.75); margin: 0; }
.av-consults__when { font-size: var(--wp--preset--font-size--small); color: rgba(250,248,245,0.6); margin: 0; }
.av-consults__row {
	display: flex; justify-content: space-between; align-items: baseline;
	margin: 12px 0 0; gap: 12px;
}
.av-consults__price { font-size: var(--wp--preset--font-size--h3); font-weight: 500; color: var(--wp--preset--color--basis); }
.av-consults__slot { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--salie-200); }

@media (min-width: 768px)  { .av-consults__list { grid-template-columns: repeat(2, 1fr); gap: 18px; } }
@media (min-width: 1024px) { .av-consults__grid { grid-template-columns: 0.85fr 1.15fr; gap: 64px; align-items: start; } }

/* =========================================================================
   EDITORIAL BAND — 4 columns text on cream
   ========================================================================= */
.av-edband { padding: 72px 0; background: var(--wp--preset--color--basis); }
.av-edband__heading { font-size: var(--wp--preset--font-size--h1); margin: 0 0 28px; }
.av-edband__list { display: grid; grid-template-columns: 1fr; gap: 20px; }
.av-edband__item { padding: 0; border-left: 3px solid var(--wp--preset--color--terra-200); padding-left: 16px; }
.av-edband__title { font-size: var(--wp--preset--font-size--h3); margin: 0 0 6px; }
.av-edband__body { font-size: var(--wp--preset--font-size--body); color: var(--wp--preset--color--gedempt); margin: 0; max-width: 40ch; }
@media (min-width: 768px)  { .av-edband__list { grid-template-columns: repeat(2, 1fr); gap: 28px; } }
@media (min-width: 1024px) { .av-edband__list { grid-template-columns: repeat(4, 1fr); gap: 32px; } }

/* =========================================================================
   NEWSLETTER
   ========================================================================= */
.av-newsletter { padding: 40px 0 96px; background: var(--wp--preset--color--basis); }
.av-newsletter__box { display: flex; flex-direction: column; gap: 24px; padding: 40px; background: var(--wp--preset--color--vlak); box-shadow: none; border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius-l); }
.av-newsletter__heading { font-size: var(--wp--preset--font-size--h2); margin: 0 0 6px; }
.av-newsletter__body { color: var(--wp--preset--color--gedempt); margin: 0; }
.av-newsletter__form { display: flex; gap: 8px; flex-direction: column; }
.av-newsletter__form input { flex: 1; }
@media (min-width: 768px) {
	.av-newsletter__box { flex-direction: row; align-items: center; justify-content: space-between; gap: 32px; }
	.av-newsletter__copy { max-width: 46ch; }
	.av-newsletter__form { flex-direction: row; max-width: 460px; }
}

/* =========================================================================
   FOOTER + MOBILE TABS
   ========================================================================= */
.av-footer .wp-block-column p { margin: 0 0 8px; }
.av-footer .wp-block-column a { color: var(--wp--preset--color--gedempt); }
.av-footer .wp-block-column a:hover { color: var(--wp--preset--color--terra-600); }

.av-tabs {
	position: fixed; inset: auto 0 0 0;
	background: var(--wp--preset--color--vlak);
	border-top: 1px solid var(--wp--preset--color--lijn);
	display: grid; grid-template-columns: repeat(4, 1fr);
	padding: 6px 0 max(6px, env(safe-area-inset-bottom));
	z-index: 40;
}
.av-tabs__link {
	display: flex; flex-direction: column; align-items: center; gap: 2px;
	padding: 6px 2px; font-size: 11px;
	color: var(--wp--preset--color--inkt); text-decoration: none;
	min-height: var(--av-tap-min);
}
.av-tabs__link:hover { color: var(--wp--preset--color--terra-600); text-decoration: none; }
.av-tabs__link > span:first-child { font-size: 18px; line-height: 1; }

@media (min-width: 1024px) { .av-tabs { display: none; } body { padding-bottom: 0 !important; } }
@media (max-width: 1023px) { body { padding-bottom: 68px; } }

/* =========================================================================
   PRODUCT ARCHIVE — category / tag / search
   ========================================================================= */
.av-arch { padding: 24px 0 72px; background: var(--wp--preset--color--basis); }
.av-arch__crumbs { font-size: 13px; color: var(--wp--preset--color--gedempt); margin-bottom: 20px; }
.av-arch__crumbs a { color: var(--wp--preset--color--gedempt); }
.av-arch__crumbs a:hover { color: var(--wp--preset--color--terra-600); text-decoration: none; }
.av-arch__crumb-sep { margin: 0 8px; opacity: 0.5; }

.av-arch__head {
	display: flex; justify-content: space-between; align-items: flex-start;
	gap: 24px; margin-bottom: 24px; flex-wrap: wrap;
}
.av-arch__head-main { flex: 1 1 auto; min-width: 0; }
.av-arch__title { font-size: 32px; line-height: 1.15; margin: 0 0 8px; font-weight: 500; letter-spacing: -0.01em; }
@media (min-width: 1024px) { .av-arch__title { font-size: 40px; } }
.av-arch__sub { font-size: 14px; color: var(--wp--preset--color--gedempt); max-width: 640px; margin: 0; }
.av-arch__head-side { display: inline-flex; align-items: center; gap: 12px; }
.av-arch__sort-label { font-size: 13px; color: var(--wp--preset--color--gedempt); }
.av-arch__sort-form select {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius);
	padding: 10px 32px 10px 14px; font: inherit; font-size: 14px;
	color: var(--wp--preset--color--inkt); cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1l5 5 5-5' stroke='%231C1917' stroke-width='1.5' fill='none'/></svg>");
	background-repeat: no-repeat; background-position: right 12px center;
}

/* Layout grid */
.av-arch__grid {
	display: grid; gap: 24px;
	grid-template-columns: 1fr;
	grid-template-areas: "main";
}
@media (min-width: 900px) {
	.av-arch__grid {
		grid-template-columns: 260px minmax(0, 1fr);
		grid-template-areas: "side main";
		gap: 32px;
	}
}
.av-arch__side { grid-area: side; }
.av-arch__main { grid-area: main; min-width: 0; }

/* Sidebar */
.av-arch__side-toggle {
	display: none;
	padding: 10px 16px; background: var(--wp--preset--color--inkt);
	color: var(--wp--preset--color--basis); border: 0; border-radius: var(--av-radius);
	font: inherit; font-size: 14px; font-weight: 500; cursor: pointer;
	align-items: center; gap: 8px;
}
.av-arch__side-toggle-count {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 20px; height: 20px; padding: 0 6px;
	background: var(--wp--preset--color--terra-600); color: var(--wp--preset--color--basis);
	border-radius: 999px; font-size: 11px; font-weight: 500;
}
.av-arch__filters {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 20px 22px;
	position: sticky; top: 20px;
}
.av-arch__filters-inner { display: flex; flex-direction: column; gap: 22px; }
.av-arch__filters-head {
	display: flex; justify-content: space-between; align-items: center;
	padding-bottom: 12px; border-bottom: 1px solid var(--wp--preset--color--lijn);
}
.av-arch__filters-head h2 { margin: 0; font-size: 16px; font-weight: 500; }
.av-arch__filters-clear { font-size: 13px; color: var(--wp--preset--color--inkt); text-decoration: underline; }
.av-arch__drawer-close { display: none; background: transparent; border: 0; font-size: 22px; cursor: pointer; padding: 0 8px; }

.av-arch__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.av-arch__chip {
	display: inline-flex; align-items: center; gap: 6px;
	padding: 6px 12px; font-size: 13px;
	background: color-mix(in srgb, var(--wp--preset--color--terra-600) 8%, var(--wp--preset--color--basis));
	color: var(--wp--preset--color--terra-800);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--terra-600) 30%, transparent);
	border-radius: 999px;
}
.av-arch__chip:hover { text-decoration: none; background: color-mix(in srgb, var(--wp--preset--color--terra-600) 14%, var(--wp--preset--color--basis)); }

.av-arch__group { border: 0; padding: 0; margin: 0; }
.av-arch__group legend {
	font-size: 14px; font-weight: 500; margin: 0 0 10px;
	color: var(--wp--preset--color--inkt); padding: 0; width: 100%;
	display: flex; justify-content: space-between; align-items: center;
}
.av-arch__group ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.av-arch__group + .av-arch__group { padding-top: 22px; border-top: 1px solid var(--wp--preset--color--lijn); }
.av-arch__tag { font-size: 11px; color: var(--wp--preset--color--gedempt); font-weight: 400; }
.av-arch__more {
	margin-top: 10px; background: transparent; border: 0; padding: 0;
	font: inherit; font-size: 13px; color: var(--wp--preset--color--inkt);
	text-decoration: underline; cursor: pointer;
}
.av-arch__more:hover { color: var(--wp--preset--color--terra-600); }
.av-arch__group label {
	display: grid; grid-template-columns: 20px 1fr auto; align-items: center; gap: 10px;
	font-size: 14px; cursor: pointer; color: var(--wp--preset--color--inkt);
}
.av-arch__group input[type=checkbox] { width: 16px; height: 16px; margin: 0; accent-color: var(--wp--preset--color--inkt); }
.av-arch__count { font-size: 12px; color: var(--wp--preset--color--gedempt); }

.av-arch__price { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; }
.av-arch__price label {
	display: inline-flex; align-items: center; gap: 4px;
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius); padding: 6px 8px;
	font-size: 13px; color: var(--wp--preset--color--gedempt);
	grid-template-columns: none;
}
.av-arch__price input {
	width: 100%; border: 0; padding: 2px 4px; font: inherit; font-size: 14px;
	background: transparent; color: var(--wp--preset--color--inkt); min-width: 0;
	-moz-appearance: textfield;
}
.av-arch__price input::-webkit-outer-spin-button, .av-arch__price input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.av-arch__price span { font-size: 12px; color: var(--wp--preset--color--gedempt); text-align: center; }

.av-arch__group--flags label { grid-template-columns: 20px 1fr; }

.av-arch__apply {
	display: none; padding: 12px 16px; background: var(--wp--preset--color--inkt);
	color: var(--wp--preset--color--basis); border: 0; border-radius: var(--av-radius);
	font: inherit; font-size: 14px; font-weight: 500; cursor: pointer;
}

.av-arch__note {
	font-size: 12px; line-height: 1.5; color: var(--wp--preset--color--gedempt);
	background: var(--wp--preset--color--vlak);
	padding: 12px 14px; border-radius: var(--av-radius); margin: 0;
}

/* Main column */
.av-arch__bar {
	display: flex; justify-content: space-between; align-items: center;
	gap: 12px; margin-bottom: 20px; flex-wrap: wrap;
}
.av-arch__count-line { margin: 0; font-size: 14px; color: var(--wp--preset--color--gedempt); }
.av-arch__count-line strong { color: var(--wp--preset--color--inkt); font-weight: 500; }
.av-arch__bar-sep { margin: 0 6px; opacity: 0.5; }
.av-arch__view { display: inline-flex; gap: 8px; }
.av-arch__view-btn {
	display: inline-flex; align-items: center; padding: 8px 16px; font-size: 13px; font-weight: 500;
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
}
.av-arch__view-btn:hover { border-color: var(--wp--preset--color--gedempt); text-decoration: none; color: var(--wp--preset--color--inkt); }
.av-arch__view-btn.is-active { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--inkt); }
.av-arch__view-btn.is-active:hover { color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--inkt); }

/* Wishlist on card */
.av-newin__wish {
	position: absolute; top: 12px; right: 12px;
	width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center;
	background: var(--wp--preset--color--basis); border: 1px solid var(--wp--preset--color--lijn);
	border-radius: 999px; cursor: pointer; color: var(--wp--preset--color--gedempt);
	box-shadow: 0 1px 2px rgba(28,25,23,0.08);
	transition: color .15s ease;
}
.av-newin__wish:hover { color: var(--wp--preset--color--terra-600); }
.av-newin__wish.is-on { color: var(--wp--preset--color--terra-600); }
.av-newin__wish.is-on svg { fill: currentColor; }

/* Archive grid — 3 columns desktop, own reset (independent of newin) */
.av-arch__list {
	list-style: none !important; margin: 0; padding: 0;
	display: grid; gap: 20px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.av-arch__list li { list-style: none; margin: 0; padding: 0; }
.av-arch__list li::marker { content: ''; }
@media (min-width: 768px)  { .av-arch__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; } }
@media (min-width: 1024px) { .av-arch__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }

/* List view */
.av-arch__list--lijst { grid-template-columns: 1fr !important; gap: 12px !important; }
.av-arch__list--lijst .av-newin__card { display: grid; grid-template-columns: 160px 1fr; align-items: stretch; }
.av-arch__list--lijst .av-newin__thumb { aspect-ratio: 1 / 1; }
.av-arch__list--lijst .av-newin__body { padding: 16px 20px; }

/* Pagination */
.av-arch__pager {
	display: flex; justify-content: space-between; align-items: center;
	gap: 16px; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--wp--preset--color--lijn);
	flex-wrap: wrap;
}
.av-arch__pager-count { margin: 0; font-size: 13px; color: var(--wp--preset--color--gedempt); }
.av-arch__pager-list { list-style: none; margin: 0; padding: 0; display: inline-flex; gap: 6px; }
.av-arch__pager-btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 36px; height: 36px; padding: 0 12px;
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	font-size: 13px; font-weight: 500;
}
.av-arch__pager-btn:hover { border-color: var(--wp--preset--color--gedempt); text-decoration: none; color: var(--wp--preset--color--inkt); }
.av-arch__pager-btn.is-active { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--inkt); }
.av-arch__pager-btn.is-disabled { opacity: 0.4; pointer-events: none; }
.av-arch__pager-dots { display: inline-flex; align-items: center; padding: 0 6px; color: var(--wp--preset--color--gedempt); }

/* Empty state */
.av-arch__empty {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 40px 32px; text-align: center;
}
.av-arch__empty h2 { font-size: 20px; font-weight: 500; margin: 0 0 8px; }
.av-arch__empty p { font-size: 14px; color: var(--wp--preset--color--gedempt); margin: 0 0 20px; }
.av-arch__empty-cta { display: inline-flex; gap: 10px; flex-wrap: wrap; justify-content: center; }
.av-arch__empty-primary {
	display: inline-flex; padding: 10px 18px; background: var(--wp--preset--color--inkt);
	color: var(--wp--preset--color--basis); border-radius: var(--av-radius); font-weight: 500; font-size: 14px;
}
.av-arch__empty-primary:hover { text-decoration: none; color: var(--wp--preset--color--basis); }
.av-arch__empty-ghost {
	display: inline-flex; padding: 10px 18px; background: var(--wp--preset--color--basis);
	color: var(--wp--preset--color--inkt); border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius); font-weight: 500; font-size: 14px;
}
.av-arch__empty-ghost:hover { text-decoration: none; color: var(--wp--preset--color--inkt); border-color: var(--wp--preset--color--inkt); }

/* Mobile drawer */
@media (max-width: 899px) {
	.av-arch__side-toggle { display: inline-flex; margin-bottom: 16px; }
	.av-arch__filters {
		position: fixed; inset: 0; z-index: 100; border-radius: 0;
		transform: translateX(-100%); transition: transform .2s ease;
		max-width: 360px; overflow-y: auto;
		padding: 20px; top: 0;
	}
	.av-arch__filters.is-open { transform: translateX(0); box-shadow: 0 0 40px rgba(0,0,0,0.2); }
	.av-arch__drawer-close { display: inline-flex; }
	.av-arch__apply { display: inline-flex; }
}

/* =========================================================================
   PRODUCT DETAIL — custom PDP
   ========================================================================= */
.av-pdp { padding: 32px 0 72px; background: var(--wp--preset--color--vlak); }
.av-pdp__crumbs { font-size: 13px; color: var(--wp--preset--color--gedempt); margin-bottom: 24px; }
.av-pdp__crumbs a { color: var(--wp--preset--color--gedempt); }
.av-pdp__crumbs a:hover { color: var(--wp--preset--color--terra-600); text-decoration: none; }
.av-pdp__crumb-sep { margin: 0 8px; opacity: 0.5; }
.av-pdp__crumbs [aria-current] { color: var(--wp--preset--color--inkt); }

.av-pdp__grid {
	display: grid; gap: 24px;
	grid-template-columns: 1fr;
	grid-template-areas:
		"gallery"
		"summary"
		"body"
		"side";
}
@media (min-width: 900px) {
	.av-pdp__grid {
		grid-template-columns: minmax(0, 1.55fr) minmax(320px, 420px);
		grid-template-areas:
			"gallery summary"
			"body    side";
		gap: 32px;
	}
}
.av-pdp__gallery-wrap { grid-area: gallery; }
.av-pdp__summary { grid-area: summary; }
.av-pdp__body { grid-area: body; display: flex; flex-direction: column; gap: 24px; }
.av-pdp__side { grid-area: side; display: flex; flex-direction: column; gap: 20px; }

/* Gallery */
.av-pdp__gallery { display: grid; grid-template-columns: 80px 1fr; gap: 14px; }
.av-pdp__thumbs { display: flex; flex-direction: column; gap: 10px; max-height: 560px; overflow-y: auto; }
.av-pdp__thumb {
	width: 80px; height: 80px; padding: 0; border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius); overflow: hidden; background: var(--wp--preset--color--vlak);
	cursor: pointer; transition: border-color .15s ease;
}
.av-pdp__thumb.is-active { border-color: var(--wp--preset--color--inkt); }
.av-pdp__thumb:hover { border-color: var(--wp--preset--color--gedempt); }
.av-pdp__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.av-pdp__main {
	position: relative;
	background: var(--wp--preset--color--vlak);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	overflow: hidden; width: 100%; max-height: 620px;
	display: flex; align-items: center; justify-content: center;
}
.av-pdp__main img { width: 100%; height: auto; max-height: 620px; object-fit: cover; display: block; }
.av-pdp__badge {
	position: absolute; top: 16px; left: 16px;
	padding: 4px 10px; font-size: 11px; font-weight: 500;
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	border-radius: 4px; box-shadow: 0 1px 2px rgba(28,25,23,0.08);
}
@media (max-width: 640px) {
	.av-pdp__gallery { grid-template-columns: 1fr; }
	.av-pdp__thumbs { flex-direction: row; max-height: none; order: 2; }
	.av-pdp__thumb { width: 64px; height: 64px; }
}

/* Summary card */
.av-pdp__summary-card {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 24px; position: sticky; top: 24px;
}
.av-pdp__title {
	font-size: 26px; line-height: 1.2; font-weight: 500; margin: 0 0 14px;
	letter-spacing: -0.01em; color: var(--wp--preset--color--inkt);
}
@media (min-width: 1024px) { .av-pdp__title { font-size: 30px; } }
.av-pdp__price-row { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; margin-bottom: 4px; }
.av-pdp__price { font-size: 24px; font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-pdp__price .woocommerce-Price-amount { font-weight: 500; }
.av-pdp__price-old { font-size: 15px; color: var(--wp--preset--color--gedempt); text-decoration: line-through; }
.av-pdp__price-old .woocommerce-Price-amount { color: var(--wp--preset--color--gedempt); }
.av-pdp__discount {
	display: inline-block; padding: 2px 8px; font-size: 12px; font-weight: 500;
	background: color-mix(in srgb, var(--wp--preset--color--terra-600) 12%, transparent);
	color: var(--wp--preset--color--terra-800); border-radius: 4px;
}
.av-pdp__price-meta { font-size: 13px; color: var(--wp--preset--color--gedempt); margin: 0 0 20px; }
.av-pdp__short { font-size: 14px; color: var(--wp--preset--color--inkt); margin-bottom: 20px; }
.av-pdp__short p { margin: 0 0 8px; }

.av-pdp__form { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.av-pdp__qty-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.av-pdp__qty {
	display: inline-flex; align-items: center;
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	overflow: hidden;
}
.av-pdp__qty-btn {
	width: 36px; height: 40px; border: 0; background: transparent;
	font-size: 18px; cursor: pointer; color: var(--wp--preset--color--inkt);
}
.av-pdp__qty-btn:hover { background: var(--wp--preset--color--vlak); }
.av-pdp__qty-input {
	width: 44px; height: 40px; border: 0; border-left: 1px solid var(--wp--preset--color--lijn);
	border-right: 1px solid var(--wp--preset--color--lijn);
	text-align: center; font: inherit; background: transparent;
	-moz-appearance: textfield;
}
.av-pdp__qty-input::-webkit-outer-spin-button, .av-pdp__qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.av-pdp__delivery { font-size: 13px; color: var(--wp--preset--color--gedempt); }

.av-pdp__buy-row { display: flex; gap: 10px; }
.av-pdp__buy {
	flex: 1 1 auto;
	background: var(--wp--preset--color--terra-800); color: var(--wp--preset--color--basis);
	border: 0; padding: 14px 20px; font: inherit; font-size: 15px; font-weight: 500;
	border-radius: var(--av-radius); cursor: pointer;
	transition: background .15s ease;
}
.av-pdp__buy:hover { background: color-mix(in srgb, var(--wp--preset--color--terra-800) 82%, black); }
.av-pdp__wish {
	width: 48px; height: 48px; display: inline-flex; align-items: center; justify-content: center;
	background: var(--wp--preset--color--basis); border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius); cursor: pointer; color: var(--wp--preset--color--inkt);
	transition: border-color .15s ease, color .15s ease;
}
.av-pdp__wish:hover { border-color: var(--wp--preset--color--terra-600); color: var(--wp--preset--color--terra-600); }

.av-pdp__stock-row { display: flex; align-items: center; justify-content: space-between; font-size: 12px; color: var(--wp--preset--color--gedempt); gap: 12px; }
.av-pdp__stock-badge {
	display: inline-block; padding: 3px 10px; border-radius: 4px; font-size: 12px; font-weight: 500;
	background: color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 12%, transparent);
	color: var(--wp--preset--color--goed, #4E7C4A);
}
.av-pdp__stock-badge--out {
	background: color-mix(in srgb, var(--wp--preset--color--aandacht, #9A6A2E) 14%, transparent);
	color: var(--wp--preset--color--aandacht, #9A6A2E);
}
.av-pdp__sku { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px; }

/* Cards */
.av-pdp__card {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 24px 26px;
}
.av-pdp__card-h { font-size: 18px; font-weight: 500; margin: 0 0 14px; color: var(--wp--preset--color--inkt); }
.av-pdp__desc { font-size: 15px; line-height: 1.7; color: var(--wp--preset--color--inkt); }
.av-pdp__desc h3 { font-size: 15px; font-weight: 500; margin: 20px 0 8px; }
.av-pdp__desc p { margin: 0 0 12px; }
.av-pdp__desc ul, .av-pdp__desc ol { margin: 0 0 12px 20px; padding: 0; }

/* Attributes table */
.av-pdp__attrs {
	margin: 22px 0 0; padding: 20px 0 0;
	border-top: 1px solid var(--wp--preset--color--lijn);
	display: grid; grid-template-columns: 1fr; gap: 0;
}
@media (min-width: 640px) { .av-pdp__attrs { grid-template-columns: 1fr 1fr; column-gap: 32px; } }
.av-pdp__attrs-row {
	display: flex; justify-content: space-between; gap: 16px;
	padding: 10px 0; border-bottom: 1px solid var(--wp--preset--color--lijn);
	font-size: 14px;
}
.av-pdp__attrs-row dt { color: var(--wp--preset--color--gedempt); margin: 0; }
.av-pdp__attrs-row dd { color: var(--wp--preset--color--inkt); margin: 0; text-align: right; font-weight: 500; }

/* Vendor card */
.av-pdp__vendor { }
.av-pdp__vendor-head { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 14px; }
.av-pdp__vendor-avatar {
	width: 44px; height: 44px; flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--wp--preset--color--vlak);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius); font-weight: 500; font-size: 16px;
}
.av-pdp__vendor-info { flex: 1 1 auto; min-width: 0; }
.av-pdp__vendor-name-row { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.av-pdp__vendor-name { font-weight: 500; color: var(--wp--preset--color--inkt); font-size: 15px; }
.av-pdp__vendor-name:hover { color: var(--wp--preset--color--terra-600); text-decoration: none; }
.av-pdp__vendor-verified {
	display: inline-flex; align-items: center; gap: 4px;
	font-size: 11px; padding: 3px 8px; border-radius: 4px;
	background: color-mix(in srgb, var(--wp--preset--color--goud) 14%, transparent);
	color: var(--wp--preset--color--goud); font-weight: 500;
}
.av-pdp__vendor-meta { font-size: 13px; color: var(--wp--preset--color--gedempt); margin: 4px 0 0; }
.av-pdp__vendor-pitch { font-size: 14px; color: var(--wp--preset--color--inkt); margin: 0 0 14px; }
.av-pdp__vendor-cta { display: flex; gap: 10px; flex-wrap: wrap; }
.av-btn--ghost {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 10px 16px; font-size: 14px; font-weight: 500;
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	transition: border-color .15s ease;
}
.av-btn--ghost:hover { border-color: var(--wp--preset--color--inkt); text-decoration: none; color: var(--wp--preset--color--inkt); }

/* Shipping card */
.av-pdp__ship-h { font-size: 15px; font-weight: 500; margin: 0 0 8px; color: var(--wp--preset--color--inkt); }
.av-pdp__ship-body { font-size: 13px; line-height: 1.6; color: var(--wp--preset--color--gedempt); margin: 0; }

/* Reviews */
.av-pdp__reviews-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 18px; }
.av-pdp__reviews-sub { font-size: 13px; color: var(--wp--preset--color--gedempt); margin: 4px 0 0; max-width: 480px; }
.av-pdp__reviews-score { text-align: right; }
.av-pdp__reviews-num { display: block; font-size: 32px; font-weight: 500; line-height: 1; color: var(--wp--preset--color--inkt); }
.av-pdp__reviews-count { display: block; font-size: 12px; color: var(--wp--preset--color--gedempt); margin-top: 4px; }
.av-pdp__reviews-list { list-style: none; margin: 0; padding: 0; }
.av-pdp__review { padding: 18px 0; border-top: 1px solid var(--wp--preset--color--lijn); }
.av-pdp__review-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 13px; margin-bottom: 8px; }
.av-pdp__review-name { font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-pdp__review-verified {
	display: inline-flex; align-items: center; gap: 4px;
	font-size: 11px; padding: 2px 8px; border-radius: 4px;
	background: color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 12%, transparent);
	color: var(--wp--preset--color--goed, #4E7C4A);
}
.av-pdp__review-stars { color: var(--wp--preset--color--goud); letter-spacing: 1px; }
.av-pdp__review-date { color: var(--wp--preset--color--gedempt); margin-left: auto; }
.av-pdp__review-body { font-size: 14px; line-height: 1.6; color: var(--wp--preset--color--inkt); margin: 0; }
.av-pdp__reviews-all { display: inline-block; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--wp--preset--color--lijn); width: 100%; font-weight: 500; font-size: 14px; }

/* =========================================================================
   PDP VARIANT SELECTOR
   ========================================================================= */
.av-pdp__variants { margin: 0 0 18px; padding-top: 4px; }
.av-pdp__variants-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10px; }
.av-pdp__variants-h { font-size: 14px; font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-pdp__variants-help { font-size: 12px; color: var(--wp--preset--color--gedempt); text-decoration: underline; }
.av-pdp__variants-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.av-pdp__variant label {
	display: grid; grid-template-columns: 18px 1fr auto; align-items: center; gap: 12px;
	padding: 12px 14px; border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	cursor: pointer; background: var(--wp--preset--color--basis);
	transition: border-color .15s ease, background .15s ease;
}
.av-pdp__variant.is-active label { border-color: var(--wp--preset--color--terra-600); background: color-mix(in srgb, var(--wp--preset--color--terra-600) 5%, var(--wp--preset--color--basis)); }
.av-pdp__variant input[type=radio] { accent-color: var(--wp--preset--color--terra-600); }
.av-pdp__variant-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.av-pdp__variant-name { font-size: 14px; font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-pdp__variant-meta { font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-pdp__variant-price { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; font-size: 14px; font-weight: 500; }

/* PDP vendor image avatar */
.av-pdp__vendor-avatar--img { padding: 0; overflow: hidden; background: transparent; border: 0; }
.av-pdp__vendor-avatar--img img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* PDP related products */
.av-pdp__related { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--wp--preset--color--lijn); }
.av-pdp__related-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 20px; }
.av-pdp__related-h { font-size: 22px; font-weight: 500; margin: 0; }
.av-pdp__related-all { font-size: 14px; font-weight: 500; color: var(--wp--preset--color--terra-600); }
.av-pdp__related-list {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px;
}
@media (min-width: 900px) { .av-pdp__related-list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* =========================================================================
   VENDOR PUBLIC SHOP
   ========================================================================= */
.av-vendor { padding: 24px 0 72px; background: var(--wp--preset--color--basis); }
.av-vendor__hero {
	background: var(--wp--preset--color--vlak);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 32px; margin-bottom: 24px;
}
.av-vendor__hero-info { display: flex; gap: 24px; align-items: flex-start; flex-wrap: wrap; }
.av-vendor__logo { width: 96px; height: 96px; border-radius: var(--av-radius-l); object-fit: cover; background: var(--wp--preset--color--basis); border: 1px solid var(--wp--preset--color--lijn); }
.av-vendor__logo--fallback { display: inline-flex; align-items: center; justify-content: center; font-size: 32px; font-weight: 500; color: var(--wp--preset--color--gedempt); }
.av-vendor__hero-text { flex: 1 1 320px; min-width: 0; }
.av-vendor__name-row { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-bottom: 6px; }
.av-vendor__name { font-size: 28px; margin: 0; font-weight: 500; letter-spacing: -0.01em; }
.av-vendor__meta { font-size: 14px; color: var(--wp--preset--color--gedempt); margin: 0 0 14px; }
.av-vendor__pitch { font-size: 15px; color: var(--wp--preset--color--inkt); margin: 0 0 20px; max-width: 640px; }
.av-vendor__hero-cta { display: inline-flex; gap: 10px; flex-wrap: wrap; }
.av-vendor__cards { display: grid; grid-template-columns: 1fr; gap: 16px; margin-bottom: 32px; }
@media (min-width: 768px) { .av-vendor__cards { grid-template-columns: repeat(3, 1fr); } }
.av-vendor__products { padding-top: 24px; border-top: 1px solid var(--wp--preset--color--lijn); }

/* =========================================================================
   VENDOR PORTAL DASHBOARD
   ========================================================================= */
.av-portal { padding: 32px 0 80px; background: var(--wp--preset--color--basis); }
.av-portal__head { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; margin-bottom: 24px; }
.av-portal__brand { display: flex; gap: 16px; align-items: center; }
.av-portal__logo { width: 56px; height: 56px; border-radius: var(--av-radius); object-fit: cover; background: var(--wp--preset--color--vlak); border: 1px solid var(--wp--preset--color--lijn); }
.av-portal__logo--fb { display: inline-flex; align-items: center; justify-content: center; font-size: 22px; font-weight: 500; color: var(--wp--preset--color--gedempt); }
.av-portal__eyebrow { font-size: 11px; text-transform: uppercase; letter-spacing: 0.12em; color: var(--wp--preset--color--gedempt); margin: 0; font-weight: 500; }
.av-portal__title { font-size: 26px; font-weight: 500; margin: 2px 0 0; letter-spacing: -0.01em; }

.av-portal__tabs {
	display: flex; gap: 4px; overflow-x: auto; margin-bottom: 24px;
	border-bottom: 1px solid var(--wp--preset--color--lijn);
	scrollbar-width: none;
}
.av-portal__tabs::-webkit-scrollbar { display: none; }
.av-portal__tab {
	padding: 12px 16px; font-size: 14px; font-weight: 500;
	color: var(--wp--preset--color--gedempt); border-bottom: 2px solid transparent;
	white-space: nowrap;
}
.av-portal__tab:hover { color: var(--wp--preset--color--inkt); text-decoration: none; }
.av-portal__tab.is-active { color: var(--wp--preset--color--inkt); border-bottom-color: var(--wp--preset--color--inkt); }

.av-portal__stats {
	display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin-bottom: 24px;
}
@media (min-width: 768px) { .av-portal__stats { grid-template-columns: repeat(4, 1fr); } }
.av-portal__stat {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l); padding: 18px 20px;
}
.av-portal__stat-label { font-size: 12px; color: var(--wp--preset--color--gedempt); margin: 0 0 8px; text-transform: uppercase; letter-spacing: 0.06em; }
.av-portal__stat-value { font-size: 26px; font-weight: 500; margin: 0; color: var(--wp--preset--color--inkt); letter-spacing: -0.01em; }
.av-portal__stat-delta { font-size: 12px; color: var(--wp--preset--color--goed, #4E7C4A); margin: 6px 0 0; font-weight: 500; }

.av-portal__grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
@media (min-width: 1024px) { .av-portal__grid { grid-template-columns: minmax(0, 1fr) 320px; } }

.av-portal__panel-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 14px; }
.av-portal__panel-head h2 { font-size: 18px; font-weight: 500; margin: 0; }
.av-portal__panel-head a { font-size: 13px; color: var(--wp--preset--color--terra-600); font-weight: 500; }

.av-portal__table { width: 100%; border-collapse: collapse; }
.av-portal__table th, .av-portal__table td { padding: 12px 8px; text-align: left; font-size: 14px; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-portal__table th { font-weight: 500; color: var(--wp--preset--color--gedempt); font-size: 12px; text-transform: uppercase; letter-spacing: 0.06em; }
.av-portal__table code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; color: var(--wp--preset--color--gedempt); }

.av-portal__pill { display: inline-flex; padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 500; }
.av-portal__pill--nieuw { background: color-mix(in srgb, var(--wp--preset--color--terra-600) 12%, transparent); color: var(--wp--preset--color--terra-800); }
.av-portal__pill--ok    { background: color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 12%, transparent); color: var(--wp--preset--color--goed, #4E7C4A); }
.av-portal__pill--warn  { background: color-mix(in srgb, var(--wp--preset--color--aandacht, #9A6A2E) 14%, transparent); color: var(--wp--preset--color--aandacht, #9A6A2E); }

.av-portal__side { display: flex; flex-direction: column; gap: 16px; }

/* =========================================================================
   CART / CHECKOUT / MY-ACCOUNT — skin Woo default templates
   ========================================================================= */
.woocommerce-cart, .woocommerce-checkout, .woocommerce-account {
	background: var(--wp--preset--color--basis);
}
.woocommerce-cart .entry-content, .woocommerce-checkout .entry-content, .woocommerce-account .entry-content,
.woocommerce-cart .wc-block-woocommerce-cart, .woocommerce-checkout .wc-block-woocommerce-checkout {
	max-width: 1360px; margin: 0 auto; padding: 32px 20px 72px;
}
.woocommerce-cart .entry-title, .woocommerce-checkout .entry-title, .woocommerce-account .entry-title,
.wc-block-cart__main-title, .wc-block-checkout__main-title {
	font-size: 32px !important; font-weight: 500 !important; letter-spacing: -0.01em !important;
	margin-bottom: 20px !important; color: var(--wp--preset--color--inkt) !important;
}

.woocommerce table.shop_table {
	border: 1px solid var(--wp--preset--color--lijn) !important;
	border-radius: var(--av-radius-l);
	background: var(--wp--preset--color--basis);
	border-collapse: separate; overflow: hidden;
}
.woocommerce table.shop_table th { background: var(--wp--preset--color--vlak); font-weight: 500; }

.woocommerce .cart-collaterals { display: grid; grid-template-columns: 1fr; gap: 24px; margin-top: 24px; }
@media (min-width: 900px) { .woocommerce .cart-collaterals { grid-template-columns: minmax(0, 1fr) 380px; } }
.woocommerce .cart_totals {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l); padding: 24px 26px;
}

.woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
	background: var(--wp--preset--color--inkt) !important;
	color: var(--wp--preset--color--basis) !important;
	border: 0 !important; border-radius: var(--av-radius) !important;
	padding: 14px 20px !important; font-weight: 500 !important;
	transition: background .15s ease;
}
.woocommerce a.button.alt, .woocommerce button.button.alt {
	background: var(--wp--preset--color--terra-600) !important;
}
.woocommerce a.button:hover, .woocommerce button.button:hover {
	background: color-mix(in srgb, var(--wp--preset--color--inkt) 82%, var(--wp--preset--color--terra-800)) !important;
	text-decoration: none;
}
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-error {
	background: var(--wp--preset--color--vlak) !important;
	border-top: 3px solid var(--wp--preset--color--terra-600) !important;
	color: var(--wp--preset--color--inkt) !important;
	border-radius: var(--av-radius);
	padding: 14px 18px 14px 44px !important;
}
.woocommerce .woocommerce-info::before { color: var(--wp--preset--color--terra-600) !important; }

/* My Account */
.woocommerce-account .woocommerce { display: grid; grid-template-columns: 1fr; gap: 24px; }
@media (min-width: 900px) { .woocommerce-account .woocommerce { grid-template-columns: 240px minmax(0, 1fr); } }
.woocommerce-account .woocommerce-MyAccount-navigation {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l); padding: 12px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 2px; }
.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block; padding: 10px 14px; border-radius: var(--av-radius);
	color: var(--wp--preset--color--inkt); font-size: 14px;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
	background: var(--wp--preset--color--vlak); text-decoration: none;
}
.woocommerce-account .woocommerce-MyAccount-content {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l); padding: 24px 28px;
}
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
	max-width: 480px; margin: 24px auto;
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l); padding: 32px;
}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
	border: 1px solid var(--wp--preset--color--lijn) !important;
	border-radius: var(--av-radius) !important;
	padding: 10px 12px !important; background: var(--wp--preset--color--basis) !important;
}

/* Cross-vendor split label on cart lines */
.woocommerce table.shop_table td.product-name a { color: var(--wp--preset--color--inkt); font-weight: 500; }
.woocommerce table.shop_table td.product-name .variation { color: var(--wp--preset--color--gedempt); }

/* =========================================================================
   AUTH BLOCK — customer login/register with tabs
   ========================================================================= */
.av-auth { padding: 40px 0 80px; background: var(--wp--preset--color--basis); }
.av-auth__wrap {
	display: grid; grid-template-columns: 1fr; gap: 24px;
	max-width: 960px; margin: 0 auto;
}
@media (min-width: 900px) { .av-auth__wrap { grid-template-columns: 380px 1fr; gap: 32px; } }

.av-auth__hero {
	border-radius: var(--av-radius-l);
	overflow: hidden; position: relative;
	background: var(--wp--preset--color--vlak); min-height: 320px;
}
.av-auth__hero-photo { position: absolute; inset: 0; background-size: cover; background-position: center; }
.av-auth__hero-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(28,25,23,0) 40%, rgba(28,25,23,0.85) 100%); }
.av-auth__hero-brand {
	position: absolute; left: 24px; bottom: 24px; right: 24px;
	color: var(--wp--preset--color--basis); z-index: 2;
	display: grid; grid-template-columns: 40px 1fr; gap: 10px 12px; align-items: center;
}
.av-auth__hero-logo {
	width: 40px; height: 40px; border-radius: var(--av-radius);
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	display: inline-flex; align-items: center; justify-content: center;
	font-weight: 500; grid-row: 1; grid-column: 1;
}
.av-auth__hero-name { font-size: 20px; font-weight: 500; grid-row: 1; grid-column: 2; align-self: center; }
.av-auth__hero-pitch { font-size: 13px; opacity: 0.9; margin: 0; grid-column: 1 / -1; }
@media (max-width: 899px) { .av-auth__hero { min-height: 180px; } }

.av-auth__card {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 28px 32px;
}
.av-auth__tabs {
	display: grid; grid-template-columns: 1fr 1fr; gap: 0;
	background: var(--wp--preset--color--vlak);
	border-radius: var(--av-radius); padding: 4px; margin-bottom: 24px;
}
.av-auth__tab {
	padding: 10px 12px; text-align: center; font-size: 14px; font-weight: 500;
	color: var(--wp--preset--color--gedempt); border-radius: 6px;
}
.av-auth__tab.is-active { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); }
.av-auth__tab:hover { text-decoration: none; }
.av-auth__h { font-size: 24px; font-weight: 500; margin: 0 0 10px; letter-spacing: -0.01em; }
.av-auth__sub { font-size: 14px; color: var(--wp--preset--color--gedempt); margin: 0 0 20px; }
.av-auth__form { display: flex; flex-direction: column; gap: 14px; }
.av-auth__form label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.av-auth__form label > span { font-weight: 500; }
.av-auth__form input[type=text], .av-auth__form input[type=email], .av-auth__form input[type=password] {
	width: 100%; padding: 10px 12px; font: inherit; font-size: 14px;
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
}
.av-auth__form input:focus { outline: none; border-color: var(--wp--preset--color--terra-600); box-shadow: var(--av-focus-ring); }
.av-auth__form label.av-signup__check {
	display: grid !important; grid-template-columns: 20px 1fr !important;
	flex-direction: row !important; align-items: start !important; gap: 10px !important;
	font-size: 13px; color: var(--wp--preset--color--inkt);
}
.av-auth__form label.av-signup__check > span { font-weight: 400; line-height: 1.5; }
.av-auth__form label.av-signup__check > input[type="checkbox"] {
	margin: 3px 0 0 !important; width: 16px !important; height: 16px !important;
	accent-color: var(--wp--preset--color--terra-600);
	appearance: auto; grid-column: 1;
}
.av-auth__field.has-error input { border-color: var(--wp--preset--color--fout, #B04A3F); }
.av-auth__field-err { display: flex; gap: 6px; align-items: center; font-size: 12px; color: var(--wp--preset--color--fout, #B04A3F); margin-top: 4px; }
.av-auth__field-err[hidden] { display: none; }
.av-auth__field-err::before { content: '⊘'; }
.av-auth__pw-row { display: flex; justify-content: space-between; align-items: baseline; }
.av-auth__forgot { font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-auth__btn {
	background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis);
	border: 0; padding: 14px 20px; font: inherit; font-size: 15px; font-weight: 500;
	border-radius: var(--av-radius); cursor: pointer; margin-top: 8px;
	transition: background .15s ease;
}
.av-auth__btn:hover { background: color-mix(in srgb, var(--wp--preset--color--inkt) 82%, var(--wp--preset--color--terra-800)); }
.av-auth__or { position: relative; text-align: center; margin: 20px 0 12px; color: var(--wp--preset--color--gedempt); font-size: 12px; }
.av-auth__or::before, .av-auth__or::after { content: ''; position: absolute; top: 50%; width: 45%; height: 1px; background: var(--wp--preset--color--lijn); }
.av-auth__or::before { left: 0; } .av-auth__or::after { right: 0; }
.av-auth__or span { background: var(--wp--preset--color--basis); padding: 0 12px; }
.av-auth__sso {
	display: flex; align-items: center; justify-content: center; padding: 12px 16px;
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	color: var(--wp--preset--color--inkt); font-weight: 500; font-size: 14px;
	background: var(--wp--preset--color--basis);
}
.av-auth__sso:hover { text-decoration: none; border-color: var(--wp--preset--color--inkt); color: var(--wp--preset--color--inkt); }
.av-auth__hint { font-size: 12px; color: var(--wp--preset--color--gedempt); margin-top: 4px; }
.av-auth__foot { text-align: center; font-size: 13px; margin: 16px 0 0; color: var(--wp--preset--color--gedempt); }
.av-auth__foot a { color: var(--wp--preset--color--terra-600); text-decoration: underline; }

.av-auth__strength { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; margin-top: 6px; }
.av-auth__strength span { height: 4px; background: var(--wp--preset--color--lijn); border-radius: 2px; }
.av-auth__strength span.is-on { background: var(--wp--preset--color--goed, #4E7C4A); }

/* =========================================================================
   VENDOR WIZARD (5 steps)
   ========================================================================= */
.av-wiz { padding: 24px 0 80px; background: var(--wp--preset--color--basis); }
.av-wiz__topbar {
	display: flex; justify-content: space-between; align-items: center;
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 16px 22px; margin-bottom: 20px;
}
.av-wiz__brand { display: flex; align-items: center; gap: 12px; }
.av-wiz__brand-logo {
	width: 34px; height: 34px; border-radius: var(--av-radius);
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	display: inline-flex; align-items: center; justify-content: center;
	font-weight: 500;
}
.av-wiz__brand strong { font-size: 18px; font-weight: 500; }
.av-wiz__brand-eyebrow { font-size: 11px; text-transform: uppercase; letter-spacing: 0.12em; color: var(--wp--preset--color--gedempt); margin-left: 8px; }
.av-wiz__topbar-side { display: inline-flex; align-items: center; gap: 20px; font-size: 13px; color: var(--wp--preset--color--gedempt); }
.av-wiz__saved { color: var(--wp--preset--color--goed, #4E7C4A); }
.av-wiz__topbar-side a { color: var(--wp--preset--color--gedempt); text-decoration: underline; }

.av-wiz__steps {
	list-style: none; margin: 0 0 28px; padding: 0;
	display: grid; grid-template-columns: repeat(5, 1fr); gap: 8px;
}
@media (max-width: 899px) { .av-wiz__steps { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .av-wiz__steps { grid-template-columns: 1fr; } .av-wiz__step { padding: 12px 14px; } }
.av-wiz__step {
	display: flex; align-items: center; gap: 12px; padding: 16px 18px;
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
}
.av-wiz__step-num {
	width: 28px; height: 28px; flex: 0 0 auto;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: 999px; font-weight: 500; font-size: 14px;
	background: var(--wp--preset--color--vlak);
	color: var(--wp--preset--color--gedempt);
	border: 1px solid var(--wp--preset--color--lijn);
}
.av-wiz__step.is-done .av-wiz__step-num { background: var(--wp--preset--color--goed, #4E7C4A); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--goed, #4E7C4A); }
.av-wiz__step.is-now  .av-wiz__step-num { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--inkt); }
.av-wiz__step-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.av-wiz__step-label { font-size: 14px; font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-wiz__step.is-todo .av-wiz__step-label { color: var(--wp--preset--color--gedempt); }
.av-wiz__step-sub { font-size: 12px; color: var(--wp--preset--color--gedempt); }

.av-wiz__grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
@media (min-width: 900px) { .av-wiz__grid { grid-template-columns: minmax(0, 1fr) 340px; gap: 32px; } }
.av-wiz__main { display: flex; flex-direction: column; gap: 20px; }
.av-wiz__side { display: flex; flex-direction: column; gap: 16px; }

.av-signup__field-check { position: relative; display: flex; flex-direction: column; gap: 6px; }
.av-signup__check-ok { font-size: 12px; color: var(--wp--preset--color--goed, #4E7C4A); }

.av-wiz__terms {
	max-height: 240px; overflow-y: auto;
	background: var(--wp--preset--color--vlak);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	padding: 16px 20px; font-size: 13px; line-height: 1.6; color: var(--wp--preset--color--inkt);
	margin-bottom: 12px;
}
.av-wiz__terms p { margin: 0 0 10px; }

.av-wiz__nav { display: flex; align-items: center; gap: 12px; padding-top: 12px; flex-wrap: wrap; }
.av-wiz__nav-hint {
	background: color-mix(in srgb, var(--wp--preset--color--aandacht, #9A6A2E) 10%, var(--wp--preset--color--basis));
	color: var(--wp--preset--color--aandacht, #9A6A2E);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--aandacht, #9A6A2E) 30%, transparent);
	padding: 8px 14px; border-radius: var(--av-radius); font-size: 13px;
	display: none;
}
.av-wiz__main.needs-terms .av-signup__btn { opacity: 0.4; pointer-events: none; }
.av-wiz__main.needs-terms .av-wiz__nav-hint { display: inline-flex; }

.av-wiz__stripe-head { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 16px; }
.av-wiz__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.av-wiz__dot { display: inline-block; width: 8px; height: 8px; border-radius: 999px; background: var(--wp--preset--color--lijn); margin-right: 10px; vertical-align: middle; }

.av-wiz__progress { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.av-wiz__progress li {
	display: flex; align-items: center; gap: 14px; padding: 14px 4px;
	border-bottom: 1px solid var(--wp--preset--color--lijn); font-size: 14px;
}
.av-wiz__progress li:last-child { border-bottom: 0; }
.av-wiz__progress span:not(.av-wiz__pdot) { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.av-wiz__progress span:not(.av-wiz__pdot) small { color: var(--wp--preset--color--gedempt); font-size: 12px; }
.av-wiz__pdot {
	width: 28px; height: 28px; border-radius: 999px;
	display: inline-flex; align-items: center; justify-content: center;
	font-weight: 500; font-size: 13px; flex: 0 0 auto;
}
.av-wiz__progress .is-done .av-wiz__pdot { background: var(--wp--preset--color--goed, #4E7C4A); color: var(--wp--preset--color--basis); }
.av-wiz__progress .is-now .av-wiz__pdot { background: var(--wp--preset--color--gedempt); color: var(--wp--preset--color--basis); }
.av-wiz__pdot--warn { background: color-mix(in srgb, var(--wp--preset--color--aandacht, #9A6A2E) 20%, transparent); color: var(--wp--preset--color--aandacht, #9A6A2E); border: 1px solid var(--wp--preset--color--aandacht, #9A6A2E); }

.av-wiz__2fa-bar {
	background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis);
	padding: 14px 20px; border-radius: var(--av-radius);
	font-size: 13px; line-height: 1.5;
}
.av-wiz__2fa-explainer { margin: 0; }
.av-wiz__2fa-list { list-style: none; margin: 20px 0 24px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.av-wiz__2fa-list li { border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius); padding: 14px 16px; }
.av-wiz__2fa-list li.is-active { border-color: var(--wp--preset--color--terra-600); background: color-mix(in srgb, var(--wp--preset--color--terra-600) 5%, var(--wp--preset--color--basis)); }
.av-wiz__2fa-list label { display: grid; grid-template-columns: 20px 1fr; gap: 12px; cursor: pointer; align-items: start; }
.av-wiz__2fa-list input { margin-top: 3px; accent-color: var(--wp--preset--color--terra-600); }
.av-wiz__2fa-name { font-weight: 500; display: flex; align-items: center; gap: 8px; margin-bottom: 2px; }
.av-wiz__2fa-badge { font-size: 11px; padding: 2px 8px; border-radius: 4px; background: color-mix(in srgb, var(--wp--preset--color--goud) 14%, transparent); color: var(--wp--preset--color--goud); font-weight: 500; }
.av-wiz__2fa-desc { font-size: 12px; color: var(--wp--preset--color--gedempt); }

.av-wiz__2fa-scan {
	display: grid; grid-template-columns: 1fr; gap: 20px;
	background: var(--wp--preset--color--vlak); border-radius: var(--av-radius);
	padding: 20px; margin-top: 12px;
}
@media (min-width: 640px) { .av-wiz__2fa-scan { grid-template-columns: 160px 1fr; } }
.av-wiz__2fa-qr {
	width: 160px; height: 160px;
	background:
		linear-gradient(45deg, var(--wp--preset--color--inkt) 25%, transparent 25%, transparent 75%, var(--wp--preset--color--inkt) 75%),
		linear-gradient(45deg, var(--wp--preset--color--inkt) 25%, transparent 25%, transparent 75%, var(--wp--preset--color--inkt) 75%);
	background-position: 0 0, 10px 10px; background-size: 20px 20px;
	background-color: var(--wp--preset--color--basis);
	border-radius: 8px; border: 1px solid var(--wp--preset--color--lijn);
}
.av-wiz__2fa-key {
	display: inline-block; padding: 8px 12px; background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius);
	font-family: ui-monospace, SFMono-Regular, monospace; font-size: 13px; letter-spacing: 0.06em; margin: 8px 0;
}

.av-wiz__side-head { display: flex; gap: 12px; align-items: center; margin-bottom: 10px; }
.av-wiz__side-head small { display: block; font-size: 11px; color: var(--wp--preset--color--gedempt); text-transform: uppercase; letter-spacing: 0.08em; }

.av-wiz__costs { margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.av-wiz__costs div { display: flex; justify-content: space-between; padding: 4px 0; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-wiz__costs div:last-child { border-bottom: 0; }
.av-wiz__costs dt { color: var(--wp--preset--color--gedempt); margin: 0; }
.av-wiz__costs dd { color: var(--wp--preset--color--inkt); font-weight: 500; margin: 0; }

/* =========================================================================
   HEADER VENDOR DROPDOWN
   ========================================================================= */
.av-header__vendor { position: relative; }
.av-header__vendor-btn {
	background: transparent; border: 1px solid var(--wp--preset--color--lijn);
	border-radius: 999px; padding: 6px 14px; font: inherit; font-size: 13px; font-weight: 500;
	color: var(--wp--preset--color--inkt); cursor: pointer;
	display: inline-flex; align-items: center; gap: 6px;
	transition: border-color .15s ease, background .15s ease;
}
.av-header__vendor-btn:hover { border-color: var(--wp--preset--color--inkt); }
.av-header__vendor-btn[aria-expanded="true"] { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--inkt); }
.av-header__vendor-menu {
	position: absolute; top: calc(100% + 10px); right: 0; z-index: 60;
	min-width: 220px;
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: var(--av-radius-l);
	box-shadow: var(--av-shadow-lift);
	padding: 8px; flex-direction: column;
}
.av-header__vendor-menu:not([hidden]) { display: flex; }
.av-header__vendor-menu[hidden] { display: none !important; }
.av-header__vendor-item {
	display: block; padding: 10px 14px; font-size: 14px;
	color: var(--wp--preset--color--inkt) !important;
	border-radius: var(--av-radius);
	text-decoration: none;
}
.av-header__vendor-item:hover { background: var(--wp--preset--color--vlak); text-decoration: none; color: var(--wp--preset--color--inkt) !important; }
.av-header__vendor-item--primary {
	background: var(--wp--preset--color--inkt) !important;
	color: var(--wp--preset--color--basis) !important; font-weight: 500;
}
.av-header__vendor-item--primary:hover {
	background: color-mix(in srgb, var(--wp--preset--color--inkt) 82%, var(--wp--preset--color--terra-800)) !important;
	color: var(--wp--preset--color--basis) !important;
}
.av-header__vendor-item--sub { font-size: 13px; color: var(--wp--preset--color--gedempt); padding: 6px 14px; }
.av-header__vendor-menu hr { border: 0; border-top: 1px solid var(--wp--preset--color--lijn); margin: 6px 0; }

@media (max-width: 1023px) { .av-header__vendor { display: none; } }

/* =========================================================================
   PORTAL EXTRAS (flash, empty, msg list)
   ========================================================================= */
.av-portal__flash {
	background: color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 10%, var(--wp--preset--color--basis));
	color: var(--wp--preset--color--goed, #4E7C4A);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 40%, transparent);
	border-radius: var(--av-radius);
	padding: 12px 16px; font-size: 14px; margin-bottom: 20px;
}
.av-portal__empty-slot { text-align: center; padding: 40px 20px; }
.av-portal__empty-slot p { color: var(--wp--preset--color--gedempt); margin: 0 0 16px; }

.av-portal__msg-list { list-style: none; margin: 0; padding: 0; }
.av-portal__msg {
	display: grid; grid-template-columns: 140px 1fr auto; gap: 16px;
	padding: 14px 8px; border-bottom: 1px solid var(--wp--preset--color--lijn); font-size: 14px;
}
.av-portal__msg.is-unread { background: color-mix(in srgb, var(--wp--preset--color--terra-600) 4%, transparent); font-weight: 500; }
.av-portal__msg-name { color: var(--wp--preset--color--inkt); }
.av-portal__msg-subj { color: var(--wp--preset--color--gedempt); }
.av-portal__msg.is-unread .av-portal__msg-subj { color: var(--wp--preset--color--inkt); }
.av-portal__msg-time { color: var(--wp--preset--color--gedempt); font-size: 12px; }

.av-portal--gate { padding: 60px 0 100px; }

/* =========================================================================
   VENDOR SIGNUP FORM
   ========================================================================= */
.av-signupwrap { padding: 40px 0 80px; background: var(--wp--preset--color--basis); }
.av-signupwrap__head { text-align: left; margin-bottom: 32px; max-width: 720px; }
.av-eyebrow { font-size: 11px; text-transform: uppercase; letter-spacing: 0.12em; color: var(--wp--preset--color--terra-600); font-weight: 500; margin: 0 0 10px; }
.av-signupwrap__h { font-size: 32px; font-weight: 500; margin: 0 0 12px; letter-spacing: -0.01em; }
@media (min-width: 1024px) { .av-signupwrap__h { font-size: 40px; } }
.av-signupwrap__sub { font-size: 15px; color: var(--wp--preset--color--gedempt); margin: 0; }
.av-signupwrap__grid { display: grid; grid-template-columns: 1fr; gap: 24px; }
@media (min-width: 900px) { .av-signupwrap__grid { grid-template-columns: minmax(0, 1fr) 320px; gap: 32px; } }
.av-signupwrap__form {
	background: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius-l);
	padding: 28px 32px;
}
.av-signupwrap__side { display: flex; flex-direction: column; gap: 16px; }
.av-signupwrap__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--wp--preset--color--inkt); }
.av-signupwrap__list li { padding-left: 18px; position: relative; }
.av-signupwrap__list li::before { content: '✓'; position: absolute; left: 0; color: var(--wp--preset--color--goud); }
ol.av-signupwrap__list { counter-reset: sc; }
ol.av-signupwrap__list li::before { counter-increment: sc; content: counter(sc) '.'; color: var(--wp--preset--color--terra-600); font-weight: 500; }

.av-signup { display: flex; flex-direction: column; gap: 42px; }
.av-signup__error {
	background: color-mix(in srgb, var(--wp--preset--color--fout, #B04A3F) 12%, var(--wp--preset--color--basis));
	color: var(--wp--preset--color--fout, #B04A3F);
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--fout, #B04A3F) 40%, transparent);
	border-radius: var(--av-radius);
	padding: 12px 16px; font-size: 14px;
}
.av-signup__done {
	background: color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 8%, var(--wp--preset--color--basis));
	border: 1px solid color-mix(in srgb, var(--wp--preset--color--goed, #4E7C4A) 40%, transparent);
	border-radius: var(--av-radius-l);
	padding: 32px;
}
.av-signup__done h2 { font-size: 22px; margin: 0 0 10px; font-weight: 500; color: var(--wp--preset--color--goed, #4E7C4A); }
.av-signup__done p { margin: 0; font-size: 14px; color: var(--wp--preset--color--inkt); }

.av-signup__group { border: 0; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 28px; }
.av-signup__group legend { font-size: 12px; text-transform: uppercase; letter-spacing: 0.08em; font-weight: 500; color: var(--wp--preset--color--gedempt); padding: 0 0 6px; border-bottom: 1px solid var(--wp--preset--color--lijn); width: 100%; margin-bottom: 6px; }
.av-signup__row { display: grid; grid-template-columns: 1fr; gap: 28px 32px; }
@media (min-width: 640px) { .av-signup__row { grid-template-columns: 1fr 1fr; gap: 28px 40px; } }
.av-signup label { display: flex; flex-direction: column; gap: 12px; font-size: 13px; color: var(--wp--preset--color--inkt); }
.av-signup label > span { font-weight: 500; }
.av-signup input[type=text], .av-signup input[type=email], .av-signup input[type=tel], .av-signup select, .av-signup textarea {
	width: 100%; padding: 10px 12px; font: inherit; font-size: 14px;
	background: var(--wp--preset--color--basis);
	color: var(--wp--preset--color--inkt);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: var(--av-radius);
}
.av-signup input:focus, .av-signup select:focus, .av-signup textarea:focus { outline: none; border-color: var(--wp--preset--color--terra-600); box-shadow: var(--av-focus-ring); }
.av-signup textarea { resize: vertical; min-height: 80px; }
.av-signup label.av-signup__check, label.av-signup__check { display: grid; grid-template-columns: 20px 1fr; align-items: start; gap: 10px; font-size: 13px; flex-direction: initial; }
.av-signup__check input { margin-top: 3px; }
.av-signup__check a { color: var(--wp--preset--color--terra-600); text-decoration: underline; }
.av-signup__submit { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; padding-top: 8px; }
.av-signup__btn {
	background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis);
	border: 0; padding: 14px 24px; font: inherit; font-size: 15px; font-weight: 500;
	border-radius: var(--av-radius); cursor: pointer;
	transition: background .15s ease;
}
.av-signup__btn:hover { background: color-mix(in srgb, var(--wp--preset--color--inkt) 82%, var(--wp--preset--color--terra-800)); }
.av-signup__hint { font-size: 12px; color: var(--wp--preset--color--gedempt); margin: 0; }

.av-turnstile { margin-top: 8px; }

/* Language switcher */
.av-lang { list-style: none; margin: 0; padding: 0; display: inline-flex; gap: 4px; align-items: center; }
.av-lang__item { margin: 0; }
.av-lang__item a {
	display: inline-block; padding: 2px 8px; font-size: 11px; font-weight: 500;
	letter-spacing: 0.06em; text-transform: uppercase; color: var(--wp--preset--color--basis);
	text-decoration: none; border-radius: 4px; opacity: 0.6; transition: opacity .15s ease;
}
.av-lang__item a:hover { opacity: 1; text-decoration: none; color: var(--wp--preset--color--basis); }
.av-lang__item.is-active a { opacity: 1; background: rgba(255,255,255,0.12); }
.av-topstrip__right { gap: 12px; }


/* Hide WC add-to-cart notice entirely */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .wc-block-components-notice-banner.is-success { display: none !important; }
.av-header__cart-count.is-empty { display: none; }

/* Header user pill (logged in) */
.av-header__user { display: inline-flex; align-items: center; gap: 8px; padding: 4px 14px 4px 4px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 999px; text-decoration: none; color: var(--wp--preset--color--inkt); font-size: 14px; }
.av-header__user:hover, .av-header__user:hover .av-header__user-name { border-color: var(--wp--preset--color--lijn); text-decoration: none; color: var(--wp--preset--color--inkt); }
.av-header__user-avatar { width: 28px; height: 28px; border-radius: 50%; overflow: hidden; background: var(--wp--preset--color--basis); display: inline-flex; align-items: center; justify-content: center; font-weight: 600; color: var(--wp--preset--color--inkt); font-size: 12px; }
.av-header__user-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.av-header__user-name { font-weight: 500; }
.av-header__login { color: var(--wp--preset--color--inkt); text-decoration: none; font-size: 14px; }
.av-header__login:hover { color: var(--wp--preset--color--terra-600); }


/* AV form spacing fix — 2026-08-31 */
.av-signup__row + .av-signup__row { margin-top: 28px; }
.av-pdp__card .av-signup__row:not(:last-child) { margin-bottom: 28px; }
.av-pdp__card .av-signup__row + .av-signup__row { margin-top: 0; }
.av-pdp__card > h2 + .av-signup__row, .av-pdp__card > .av-pdp__card-h + .av-signup__row { margin-top: 8px; }
.av-signup label > span + input, .av-signup label > span + select, .av-signup label > span + textarea { margin-top: 4px; }


/* ============ Avilia Vendor Portal — matches customer account visual system ============ */
.av-vp { padding: 0; background: #FFFFFF; color: var(--wp--preset--color--inkt); font-family: Archivo, sans-serif; }
.av-vp .av-container { max-width: none; margin: 0; padding: 0; }
.av-vp__shell { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 0; align-items: stretch; min-height: calc(100vh - 60px); }
@media (max-width: 1023px) { .av-vp__shell { grid-template-columns: 1fr; } }

/* Sidebar */
.av-vp__side { background: #FFFFFF; border-right: 1px solid var(--wp--preset--color--lijn); padding: 24px 20px; display: flex; flex-direction: column; gap: 16px; align-self: stretch; }
.av-vp__brand { display: flex; gap: 12px; align-items: center; padding: 0 4px 18px; border-bottom: 1px solid var(--wp--preset--color--lijn); margin-bottom: 4px; }
.av-vp__brand-logo { width: 34px; height: 34px; border-radius: 8px; background: var(--wp--preset--color--basis); border: 1px solid var(--wp--preset--color--lijn); color: var(--wp--preset--color--inkt); display: inline-flex; align-items: center; justify-content: center; font-weight: 600; font-size: 15px; }
.av-vp__brand-logo--big { width: 96px; height: 96px; font-size: 40px; }
.av-vp__brand-body { min-width: 0; flex: 1; }
.av-vp__brand-name { margin: 0; font-weight: 600; font-size: 14px; display: flex; align-items: center; gap: 6px; color: var(--wp--preset--color--inkt); }
.av-vp__brand-check { color: var(--wp--preset--color--terra-600); font-size: 12px; }
.av-vp__brand-city { margin: 2px 0 0; font-size: 12px; color: var(--wp--preset--color--gedempt); }

.av-vp__nav { display: flex; flex-direction: column; gap: 2px; }
.av-vp__nav-item { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 8px; color: var(--wp--preset--color--inkt); text-decoration: none; font-size: 14px; }
.av-vp__nav-item:hover { background: var(--wp--preset--color--basis); text-decoration: none; }
.av-vp__nav-item.is-active { background: var(--wp--preset--color--basis); font-weight: 600; }
.av-vp__nav-item.is-active .av-vp__nav-dot { background: var(--wp--preset--color--terra-600); }
.av-vp__nav-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--wp--preset--color--lijn); flex-shrink: 0; }
.av-vp__nav-lbl { flex-grow: 1; }
.av-vp__nav-badge { background: var(--wp--preset--color--terra-600); color: #fff; border-radius: 999px; padding: 1px 8px; font-size: 12px; font-weight: 600; }

.av-vp__payout-mini { background: transparent; padding: 12px 12px 8px; margin-top: auto; }
.av-vp__payout-kicker { font-size: 11px; text-transform: uppercase; letter-spacing: 0.1em; color: var(--wp--preset--color--gedempt); margin: 0 0 4px; }
.av-vp__payout-amount { font-size: 18px; font-weight: 600; margin: 0; color: var(--wp--preset--color--inkt); font-family: 'Courier New', ui-monospace, monospace; }
.av-vp__payout-sub { font-size: 11px; color: var(--wp--preset--color--gedempt); margin: 4px 0 0; line-height: 1.5; }
.av-vp__shop-link { display: inline-block; margin: 6px 12px 0; color: var(--wp--preset--color--terra-600); font-size: 13px; text-decoration: underline; } .av-vp__logout { display: inline-flex; align-items: center; gap: 8px; margin: 10px 12px 12px; padding: 8px 12px; color: var(--wp--preset--color--gedempt, #6B6560); font-size: 13px; text-decoration: none; border: 1px solid var(--wp--preset--color--lijn, #E7E2DA); border-radius: 8px; background: transparent; transition: all .15s ease; width: calc(100% - 24px); box-sizing: border-box; } .av-vp__logout:hover { color: var(--wp--preset--color--terra-700, #9A4F35); border-color: var(--wp--preset--color--terra-700, #9A4F35); background: #FAF8F5; }

/* Main */
.av-vp__main { display: flex; flex-direction: column; gap: 20px; padding: 28px 32px; background: #F8F6F2; align-self: stretch; min-width: 0; }
.av-vp__topbar { display: flex; align-items: flex-end; gap: 20px; flex-wrap: wrap; padding-bottom: 4px; }
.av-vp__topbar-title { flex: 1; min-width: 0; }
.av-vp__topbar-title h1 { margin: 0 0 4px; font-size: 32px; line-height: 1.1; font-weight: 500; color: var(--wp--preset--color--inkt); }
.av-vp__topbar-title p { margin: 0; font-size: 14px; color: var(--wp--preset--color--gedempt); }
.av-vp__topbar-tools { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.av-vp__search { position: relative; display: inline-flex; align-items: center; background: #fff; border: 1px solid var(--wp--preset--color--lijn); border-radius: 10px; padding: 8px 12px 8px 32px; min-width: 260px; }
.av-vp__search input { border: 0; outline: 0; background: transparent; flex: 1; font-size: 14px; color: var(--wp--preset--color--inkt); }
.av-vp__search-icon { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); color: var(--wp--preset--color--gedempt); font-size: 15px; }
.av-vp__bell { position: relative; background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 10px; width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; color: var(--wp--preset--color--inkt); }
.av-vp__bell-dot { position: absolute; top: 9px; right: 10px; width: 7px; height: 7px; background: var(--wp--preset--color--fout, #B14A3E); border-radius: 999px; }
.av-vp__cta { background: var(--wp--preset--color--inkt); color: #FFF; border-radius: 10px; padding: 10px 18px; font-size: 14px; font-weight: 500; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; border: none; cursor: pointer; }
.av-vp__cta:hover { opacity: 0.9; }
.av-vp__cta--sm { padding: 8px 14px; font-size: 13px; }

.av-vp__body { display: flex; flex-direction: column; gap: 12px; } .av-vp__body > form { display: flex; flex-direction: column; gap: 12px; }

/* KPI cards */
.av-vp__kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.av-vp__kpis--3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 1199px) { .av-vp__kpis { grid-template-columns: repeat(2, 1fr); } }
.av-vp__kpi { background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 12px; padding: 18px 20px; }
.av-vp__kpi-lbl { font-size: 12px; color: var(--wp--preset--color--gedempt); margin: 0 0 8px; }
.av-vp__kpi-val { font-size: 28px; font-weight: 600; margin: 0; color: var(--wp--preset--color--inkt); font-family: 'Courier New', ui-monospace, monospace; }
.av-vp__kpi-val--money { color: var(--wp--preset--color--terra-600); }
.av-vp__kpi-val--muted { color: var(--wp--preset--color--gedempt); }
.av-vp__kpi-val--warn { color: var(--wp--preset--color--aandacht, #8A6520); }
.av-vp__kpi-sub { font-size: 12px; color: var(--wp--preset--color--gedempt); margin: 6px 0 0; }

/* Panel */
.av-vp__panel { background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 12px; padding: 20px 22px; display: flex; flex-direction: column; gap: 14px; }
.av-vp__panel--soft { background: #FFF; }
.av-vp__panel--table { padding: 0; overflow: hidden; }
.av-vp__panel--table .av-vp__panel-head { padding: 16px 22px 0; }
.av-vp__panel-head { display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.av-vp__panel-head h2, .av-vp__panel-head h3 { margin: 0; font-size: 17px; font-weight: 600; }
.av-vp__panel-head span { font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-vp__panel-empty { color: var(--wp--preset--color--gedempt); font-size: 13px; text-align: center; padding: 30px 0; margin: 0; }
.av-vp__notice { background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 10px; padding: 14px 18px; font-size: 13px; color: var(--wp--preset--color--gedempt); }
.av-vp__notice--warn { background: #FBF3E4; border-color: #E8D6A9; color: #6E5A2A; }
.av-vp__notice--ok { background: #EEF3E9; border-color: #BFD0AF; color: #365525; }
.av-vp__notice p { margin: 0; }
.av-vp__notice p + p { margin-top: 8px; }

/* Row 2 */
.av-vp__row-2 { display: grid; grid-template-columns: 1fr 340px; gap: 20px; align-items: start; }
.av-vp__row-2--wide-left { grid-template-columns: minmax(0, 1fr) 320px; }
@media (max-width: 1199px) { .av-vp__row-2, .av-vp__row-2--wide-left { grid-template-columns: 1fr; } }

/* Todo list */
.av-vp__todo { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.av-vp__todo li { display: flex; align-items: center; gap: 14px; padding: 10px 12px; border-radius: 8px; }
.av-vp__todo li:hover { background: #F8F6F2; }
.av-vp__todo-num { width: 32px; height: 32px; border-radius: 8px; background: #F4E7DF; color: var(--wp--preset--color--terra-600); display: inline-flex; align-items: center; justify-content: center; font-weight: 600; font-size: 14px; flex-shrink: 0; }
.av-vp__todo-body { flex: 1; min-width: 0; }
.av-vp__todo-t { margin: 0; font-weight: 600; font-size: 14px; }
.av-vp__todo-s { margin: 2px 0 0; font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-vp__todo-empty { color: var(--wp--preset--color--gedempt); font-size: 13px; padding: 10px 12px; }

.av-vp__agenda-item { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-vp__agenda-item:last-child { border-bottom: 0; }
.av-vp__agenda-time { font-weight: 600; font-family: 'Courier New', ui-monospace, monospace; font-size: 15px; color: var(--wp--preset--color--inkt); min-width: 46px; }
.av-vp__agenda-body { flex: 1; min-width: 0; }
.av-vp__agenda-t { margin: 0; font-size: 14px; font-weight: 600; }
.av-vp__agenda-s { margin: 2px 0 0; font-size: 12px; color: var(--wp--preset--color--gedempt); }

.av-vp__score { margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--wp--preset--color--lijn); display: flex; flex-direction: column; gap: 12px; }
.av-vp__score h3 { font-size: 14px; margin: 0 0 4px; font-weight: 600; }
.av-vp__score-row { display: flex; flex-direction: column; gap: 6px; }
.av-vp__score-head { display: flex; justify-content: space-between; font-size: 13px; }
.av-vp__score-head strong { font-weight: 600; }
.av-vp__score-bar { height: 4px; border-radius: 999px; background: var(--wp--preset--color--lijn); overflow: hidden; }
.av-vp__score-bar span { display: block; height: 100%; background: var(--wp--preset--color--terra-600); }

/* Filters (pills) — matches .av-acc__tab */
.av-vp__filters { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 4px 0; }
.av-vp__filter { padding: 8px 16px; border-radius: 999px; background: #FFFFFF; border: 1px solid var(--wp--preset--color--lijn); color: var(--wp--preset--color--inkt); text-decoration: none; font-size: 14px; }
.av-vp__filter:hover { border-color: var(--wp--preset--color--inkt); }
.av-vp__filter.is-active { background: var(--wp--preset--color--inkt); color: #fff; border-color: var(--wp--preset--color--inkt); }
.av-vp__filter-right { margin-left: auto; }

/* Tables */
.av-vp__table { width: 100%; border-collapse: collapse; font-size: 13px; }
.av-vp__table thead th { text-align: left; padding: 12px 22px; font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--wp--preset--color--gedempt); font-weight: 600; background: #F8F6F2; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-vp__table tbody td { padding: 14px 22px; border-bottom: 1px solid var(--wp--preset--color--lijn); vertical-align: middle; }
.av-vp__table tbody tr:last-child td { border-bottom: 0; }
.av-vp__th-check { width: 40px; }
.av-vp__th-num { text-align: right; font-family: 'Courier New', ui-monospace, monospace; }
.av-vp__cell-strong { margin: 0; font-weight: 600; }
.av-vp__cell-muted { margin: 2px 0 0; font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-vp__link { color: var(--wp--preset--color--terra-600); text-decoration: none; }
.av-vp__link:hover { text-decoration: underline; }
.av-vp__empty { text-align: center; color: var(--wp--preset--color--gedempt); padding: 40px 0 !important; }

.av-vp__pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 12px; border-radius: 999px; font-size: 12px; font-weight: 500; border: 1px solid transparent; }
.av-vp__pill--sm { padding: 2px 8px; font-size: 10px; }
.av-vp__pill--nieuw { background: #FBF3E3; color: var(--wp--preset--color--goud, #8A6520); border-color: #E9D9AC; }
.av-vp__pill--ok    { background: #E9F3EC; color: #2E7D5B; border-color: #C6E0CD; }
.av-vp__pill--warn  { background: #F4E7DF; color: var(--wp--preset--color--terra-600); border-color: #E5C3B4; }
.av-vp__pill--muted { background: var(--wp--preset--color--basis); color: var(--wp--preset--color--gedempt); border-color: var(--wp--preset--color--lijn); }

.av-vp__inline { width: 90px; padding: 6px 8px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 6px; font-size: 13px; font-family: 'Courier New', ui-monospace, monospace; text-align: right; }
.av-vp__prod-row { display: flex; gap: 12px; align-items: center; }
.av-vp__prod-thumb { width: 44px; height: 44px; border-radius: 6px; overflow: hidden; background: var(--wp--preset--color--basis); flex-shrink: 0; }
.av-vp__prod-thumb img { width: 100%; height: 100%; object-fit: cover; }

.av-vp__table-foot { display: flex; justify-content: space-between; align-items: center; padding: 12px 22px; border-top: 1px solid var(--wp--preset--color--lijn); background: #F8F6F2; font-size: 13px; color: var(--wp--preset--color--gedempt); }
.av-vp__table-actions { display: flex; gap: 10px; align-items: center; }

/* Returns */
.av-vp__return { background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 12px; padding: 16px 20px; display: flex; flex-direction: column; gap: 12px; }
.av-vp__return-head { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-vp__return-id { font-weight: 600; color: var(--wp--preset--color--inkt); }
.av-vp__return-due { margin-left: auto; color: var(--wp--preset--color--aandacht, #8A6520); }
.av-vp__return-body { display: grid; grid-template-columns: 64px 1fr auto; gap: 16px; align-items: start; }
.av-vp__return-thumb { width: 64px; height: 64px; background: var(--wp--preset--color--basis); border-radius: 8px; overflow: hidden; }
.av-vp__return-thumb img { width: 100%; height: 100%; object-fit: cover; }
.av-vp__return-quote { margin: 8px 0 0; padding: 8px 10px; font-style: italic; color: var(--wp--preset--color--gedempt); border-left: 3px solid var(--wp--preset--color--lijn); font-size: 13px; background: #F8F6F2; border-radius: 0 6px 6px 0; }
.av-vp__return-photos { display: flex; gap: 8px; margin-top: 8px; }
.av-vp__return-photo { width: 40px; height: 40px; background: var(--wp--preset--color--basis); border: 1px dashed var(--wp--preset--color--lijn); border-radius: 6px; display: inline-flex; align-items: center; justify-content: center; font-size: 10px; color: var(--wp--preset--color--gedempt); }
.av-vp__return-money { text-align: right; }
.av-vp__return-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; padding-top: 8px; border-top: 1px solid var(--wp--preset--color--lijn); }
.av-vp__return-actions .av-btn--danger { color: var(--wp--preset--color--fout, #B14A3E); }
.av-vp__return-actions form:last-child { margin-left: auto; }

/* Calendar */
.av-vp__cal { display: grid; grid-template-columns: repeat(7, 1fr); gap: 8px; padding: 12px 0; }
.av-vp__cal-col { min-height: 220px; background: #F8F6F2; border-radius: 8px; padding: 10px 8px; }
.av-vp__cal-head { text-align: center; padding-bottom: 8px; border-bottom: 1px solid var(--wp--preset--color--lijn); margin-bottom: 8px; }
.av-vp__cal-day { display: block; font-size: 10px; text-transform: uppercase; color: var(--wp--preset--color--gedempt); }
.av-vp__cal-date { display: block; font-size: 16px; font-weight: 600; }
.av-vp__cal-slots { display: flex; flex-direction: column; gap: 4px; }
.av-vp__cal-slot { display: flex; flex-direction: column; padding: 6px 8px; border-radius: 6px; font-size: 11px; line-height: 1.3; }
.av-vp__cal-slot--free { background: #E9F3EC; color: #2E7D5B; border: 1px solid #C6E0CD; }
.av-vp__cal-slot--booked { background: #F4E7DF; color: var(--wp--preset--color--terra-600); border: 1px solid #E5C3B4; }
.av-vp__cal-slot-time { font-weight: 600; }
.av-vp__cal-legend { display: flex; gap: 20px; padding-top: 12px; border-top: 1px solid var(--wp--preset--color--lijn); font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-vp__cal-key { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 4px; }
.av-vp__cal-key--free   { background: #E9F3EC; border: 1px solid #C6E0CD; }
.av-vp__cal-key--booked { background: #F4E7DF; border: 1px solid #E5C3B4; }
.av-vp__cal-key--blocked{ background: var(--wp--preset--color--basis); border: 1px solid var(--wp--preset--color--lijn); }
.av-vp__wk-nav { display: flex; gap: 4px; }

.av-vp__field { display: flex; flex-direction: column; gap: 8px; }
.av-vp__field label { font-weight: 600; font-size: 13px; }
.av-vp__field select, .av-vp__field input[type="time"] { padding: 8px 12px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 6px; font-size: 13px; }
.av-vp__daychips { display: flex; gap: 6px; flex-wrap: wrap; }
.av-vp__daychip { display: inline-flex; align-items: center; gap: 6px; padding: 7px 14px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 999px; background: #fff; font-size: 13px; font-weight: 500; color: var(--wp--preset--color--inkt); cursor: pointer; transition: all .15s ease; user-select: none; }
.av-vp__daychip input { position: absolute; opacity: 0; pointer-events: none; width: 0; height: 0; margin: 0; }
.av-vp__daychip:hover { border-color: var(--wp--preset--color--terra-700, #9A4F35); } .av-vp__daychip.is-on { background: #F7EDE7; border-color: var(--wp--preset--color--terra-700, #9A4F35); color: var(--wp--preset--color--terra-700, #9A4F35); } .av-vp__daychip.is-on::before { content: "✓"; font-weight: 700; font-size: 11px; line-height: 1; }

/* Chat */
.av-vp__chat { display: grid; grid-template-columns: 320px 1fr; gap: 0; background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 12px; overflow: hidden; height: 640px; }
@media (max-width: 899px) { .av-vp__chat { grid-template-columns: 1fr; height: auto; } }
.av-vp__chat-list { border-right: 1px solid var(--wp--preset--color--lijn); overflow-y: auto; }
.av-vp__chat-search { padding: 12px; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-vp__chat-search input { width: 100%; padding: 8px 12px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 999px; font-size: 13px; }
.av-vp__chat-item { display: grid; grid-template-columns: 36px 1fr auto; gap: 12px; padding: 12px 14px; border-bottom: 1px solid var(--wp--preset--color--lijn); text-decoration: none; color: inherit; }
.av-vp__chat-item.is-active { background: #F8F6F2; }
.av-vp__chat-avatar { width: 36px; height: 36px; border-radius: 999px; background: var(--wp--preset--color--basis); border: 1px solid var(--wp--preset--color--lijn); display: inline-flex; align-items: center; justify-content: center; font-weight: 600; font-size: 13px; color: var(--wp--preset--color--inkt); }
.av-vp__chat-avatar--sm { width: 28px; height: 28px; font-size: 11px; }
.av-vp__chat-body { min-width: 0; }
.av-vp__chat-name { display: block; font-weight: 600; font-size: 13px; }
.av-vp__chat-snip { display: block; font-size: 12px; color: var(--wp--preset--color--gedempt); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; margin-top: 2px; }
.av-vp__chat-tag { display: inline-block; margin-top: 4px; padding: 2px 6px; background: var(--wp--preset--color--basis); border-radius: 4px; font-size: 10px; color: var(--wp--preset--color--gedempt); }
.av-vp__chat-meta { text-align: right; font-size: 11px; color: var(--wp--preset--color--gedempt); }
.av-vp__chat-dot { display: inline-block; width: 8px; height: 8px; background: var(--wp--preset--color--fout, #B14A3E); border-radius: 999px; margin-top: 4px; }
.av-vp__chat-pane { display: flex; flex-direction: column; }
.av-vp__chat-empty { flex: 1; display: flex; align-items: center; justify-content: center; color: var(--wp--preset--color--gedempt); }
.av-vp__chat-header { display: flex; gap: 12px; align-items: center; padding: 14px 20px; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-vp__chat-header > div:nth-child(2) { flex: 1; min-width: 0; }
.av-vp__chat-stream { flex: 1; overflow-y: auto; padding: 20px; display: flex; flex-direction: column; gap: 12px; background: #F8F6F2; }
.av-vp__chat-bubble { max-width: 65%; padding: 10px 14px; border-radius: 12px; font-size: 13px; line-height: 1.5; }
.av-vp__chat-bubble small { display: block; font-size: 10px; margin-top: 4px; opacity: 0.7; }
.av-vp__chat-bubble div p { margin: 0; }
.av-vp__chat-bubble--peer { background: #FFF; border: 1px solid var(--wp--preset--color--lijn); align-self: flex-start; }
.av-vp__chat-bubble--me   { background: var(--wp--preset--color--inkt); color: #FFF; align-self: flex-end; }
.av-vp__chat-quick { display: flex; gap: 8px; padding: 10px 20px; border-top: 1px solid var(--wp--preset--color--lijn); flex-wrap: wrap; }
.av-vp__chat-form { display: flex; gap: 10px; padding: 12px 20px 16px; border-top: 1px solid var(--wp--preset--color--lijn); }
.av-vp__chat-form textarea { flex: 1; border: 1px solid var(--wp--preset--color--lijn); border-radius: 8px; padding: 10px 12px; font-size: 13px; resize: none; font-family: inherit; }

/* Reviews */
.av-vp__review { padding: 16px 0; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-vp__review:last-child { border-bottom: 0; }
.av-vp__review-head { display: grid; grid-template-columns: 28px 1fr auto; gap: 12px; align-items: center; }
.av-vp__review-body { margin: 10px 0 8px; font-size: 14px; line-height: 1.5; }
.av-vp__review-reply { background: #F8F6F2; border-left: 3px solid var(--wp--preset--color--terra-600); padding: 10px 14px; margin: 8px 0; border-radius: 0 6px 6px 0; font-size: 13px; }
.av-vp__review-reply p { margin: 0; }
.av-vp__review-reply p + p { margin-top: 4px; color: var(--wp--preset--color--gedempt); }
.av-vp__review-form { display: flex; gap: 8px; align-items: center; margin-top: 8px; }
.av-vp__review-form input[type="text"] { flex: 1; padding: 8px 12px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 6px; font-size: 13px; }
.av-vp__rating-huge { font-size: 44px; font-weight: 600; margin: 12px 0 4px; color: var(--wp--preset--color--terra-600); }
.av-vp__rating-dist { display: flex; flex-direction: column; gap: 4px; margin-top: 12px; }
.av-vp__rating-row { display: grid; grid-template-columns: 12px 1fr 30px; gap: 8px; align-items: center; font-size: 12px; color: var(--wp--preset--color--gedempt); }
.av-vp__rating-bar { height: 6px; background: var(--wp--preset--color--lijn); border-radius: 999px; overflow: hidden; }
.av-vp__rating-bar span { display: block; height: 100%; background: var(--wp--preset--color--terra-600); }

/* Shipping */
.av-vp__ship-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
@media (max-width: 899px) { .av-vp__ship-grid { grid-template-columns: repeat(2, 1fr); } }
.av-vp__ship-grid label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.av-vp__ship-grid input, .av-vp__ship-grid select { padding: 8px 12px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 6px; font-size: 13px; }
.av-vp__prefix { display: flex; align-items: center; gap: 6px; }
.av-vp__prefix input { flex: 1; }
.av-vp__ship { display: flex; flex-direction: column; gap: 18px; }

/* Profile */
.av-vp__profile-banner { width: 100%; aspect-ratio: 2880 / 560; background: var(--wp--preset--color--basis); border-radius: 8px; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.av-vp__profile-banner img { width: 100%; height: 100%; object-fit: cover; }
.av-vp__profile-banner-empty { color: var(--wp--preset--color--gedempt); font-size: 13px; }
.av-vp__banner-actions { display: flex; gap: 8px; }
.av-vp__profile-grid { display: grid; grid-template-columns: 140px 1fr; gap: 20px; margin-top: 20px; }
.av-vp__profile-logo { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.av-vp__profile-fields { display: flex; flex-direction: column; gap: 14px; }
.av-vp__profile-fields label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; }
.av-vp__profile-fields input, .av-vp__profile-fields textarea { padding: 8px 12px; border: 1px solid var(--wp--preset--color--lijn); border-radius: 6px; font-size: 13px; font-family: inherit; }
.av-vp__preview { padding: 0; }
.av-vp__preview img { width: 100%; height: 120px; object-fit: cover; border-radius: 8px 8px 0 0; }
.av-vp__preview-body { padding: 14px 0 0; }
.av-vp__preview-body p { margin: 6px 0; font-size: 13px; }
.av-vp__checklist { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; font-size: 13px; }
.av-vp__checklist li { display: flex; gap: 8px; align-items: center; }
.av-vp__checklist li.is-done span { color: #2E7D5B; }
.av-vp__checklist li.is-todo span { color: var(--wp--preset--color--aandacht, #8A6520); }

/* Settings */
.av-vp__notif-row { display: flex; justify-content: space-between; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--wp--preset--color--lijn); }
.av-vp__notif-row:last-child { border-bottom: 0; }
.av-vp__notif-toggles { display: flex; gap: 20px; font-size: 13px; }
.av-vp__notif-toggles label { display: inline-flex; align-items: center; gap: 6px; }
.av-vp__team-row { display: grid; grid-template-columns: 28px 1fr auto auto; gap: 12px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--wp--preset--color--lijn); font-size: 13px; }
.av-vp__team-row:last-child { border-bottom: 0; }

/* Ghost btn */
.av-btn--ghost { background: transparent; border: 1px solid var(--wp--preset--color--lijn); color: var(--wp--preset--color--inkt); padding: 8px 14px; font-size: 13px; border-radius: 10px; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.av-btn--ghost:hover { background: #F8F6F2; }
.av-btn--danger { color: var(--wp--preset--color--fout, #B14A3E); border-color: #E5C3B4; }

/* Gate state */
.av-vp--gate { background: #F8F6F2; padding: 60px 0; }
.av-vp--gate .av-container { max-width: 480px; margin: 0 auto; padding: 0 20px; }
.av-vp__gate-card { background: #FFF; border: 1px solid var(--wp--preset--color--lijn); border-radius: 12px; padding: 40px; text-align: center; }
.av-vp__gate-cta { display: flex; gap: 12px; justify-content: center; margin-top: 16px; }

/* Portal-fullbleed: zero out inherited main/site-block gaps on pages hosting the vendor portal */
body:has(.av-vp) main.wp-block-group { padding: 0 !important; margin-block: 0 !important; }
body:has(.av-vp) main.wp-block-group > * + * { margin-block-start: 0 !important; }
body:has(.av-vp) .wp-site-blocks > * + * { margin-block-start: 0 !important; }
body:has(.av-vp) .wp-site-blocks { padding-block: 0 !important; }
body:has(.av-vp) .wp-block-post-content { padding: 0 !important; margin: 0 !important; }
.av-vp { margin-top: 0 !important; }

/* Kill underline on any av-vp anchor hover */
.av-vp a:hover, .av-vp__nav-item:hover, .av-vp__nav-item:focus, .av-vp__nav-item:active, .av-vp__shop-link:hover, .av-vp__tab:hover { text-decoration: none !important; }

/* =========================================================================
   Vendor portal — modern radio & checkbox styling (scoped to .av-vp)
   ========================================================================= */
.av-vp { accent-color: var(--wp--preset--color--terra-700, #6D3624); }

/* Chip-style select: only labels explicitly opted in (visible border in normal state) */
.av-vp .av-ap__radio,
.av-vp .av-ap__hero-list label,
.av-vp .av-ap__panel label:has(input[type="checkbox"][name="featured[]"]) {
	transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.av-vp .av-ap__radio:has(input:checked),
.av-vp .av-ap__hero-list label:has(input:checked),
.av-vp .av-ap__panel label:has(input[type="checkbox"][name="featured[]"]:checked) {
	border-color: var(--wp--preset--color--terra-700, #6D3624) !important;
	background: rgba(154,79,53,0.06);
	box-shadow: 0 0 0 1px var(--wp--preset--color--terra-700, #6D3624) inset;
}
.av-vp .av-ap__radio:hover,
.av-vp .av-ap__hero-list label:hover,
.av-vp .av-ap__panel label:has(input[type="checkbox"][name="featured[]"]):hover {
	border-color: var(--wp--preset--color--gedempt, #6B6560);
}

/* Inline toggle rows stay lightweight, no chip framing */
.av-vp .av-ap__toggle { padding: 8px 0; border: 0; background: transparent; box-shadow: none; }

/* Custom radio dot */
.av-vp input[type="radio"] {
	appearance: none; -webkit-appearance: none;
	width: 18px; height: 18px; margin: 0;
	border: 2px solid var(--wp--preset--color--lijn, #E7E2DA);
	border-radius: 50%;
	background: #fff;
	display: inline-grid; place-content: center;
	cursor: pointer;
	transition: border-color .15s ease;
}
.av-vp input[type="radio"]::before {
	content: ''; width: 10px; height: 10px; border-radius: 50%;
	background: var(--wp--preset--color--terra-700, #6D3624);
	transform: scale(0); transition: transform .15s ease;
}
.av-vp input[type="radio"]:checked { border-color: var(--wp--preset--color--terra-700, #6D3624); }
.av-vp input[type="radio"]:checked::before { transform: scale(1); }
.av-vp input[type="radio"]:focus-visible { outline: 2px solid var(--wp--preset--color--terra-700, #6D3624); outline-offset: 2px; }

/* Custom checkbox */
.av-vp input[type="checkbox"] {
	appearance: none; -webkit-appearance: none;
	width: 18px; height: 18px; margin: 0;
	border: 2px solid var(--wp--preset--color--lijn, #E7E2DA);
	border-radius: 4px;
	background: #fff;
	display: inline-grid; place-content: center;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}
.av-vp input[type="checkbox"]::before {
	content: ''; width: 10px; height: 10px;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
	background: #fff;
	transform: scale(0); transform-origin: center;
	transition: transform .15s ease;
}
.av-vp input[type="checkbox"]:checked {
	background: var(--wp--preset--color--terra-700, #6D3624);
	border-color: var(--wp--preset--color--terra-700, #6D3624);
}
.av-vp input[type="checkbox"]:checked::before { transform: scale(1); }
.av-vp input[type="checkbox"]:focus-visible { outline: 2px solid var(--wp--preset--color--terra-700, #6D3624); outline-offset: 2px; }

/* Text inputs / textareas / selects — consistent portal look */
.av-vp input[type="text"],
.av-vp input[type="email"],
.av-vp input[type="url"],
.av-vp input[type="tel"],
.av-vp input[type="number"],
.av-vp input[type="date"],
.av-vp textarea,
.av-vp select {
	background: #fff;
	border: 1px solid var(--wp--preset--color--lijn, #E7E2DA);
	border-radius: 8px;
	padding: 10px 12px;
	font: inherit; font-size: 14px;
	color: var(--wp--preset--color--inkt);
	transition: border-color .15s ease, box-shadow .15s ease;
	width: 100%;
}
.av-vp input:focus, .av-vp textarea:focus, .av-vp select:focus {
	outline: none;
	border-color: var(--wp--preset--color--terra-700, #6D3624);
	box-shadow: 0 0 0 3px rgba(154,79,53,0.15);
}
.av-vp input[readonly], .av-vp input:disabled, .av-vp textarea:disabled {
	background: var(--wp--preset--color--basis, #FAF8F5); color: var(--wp--preset--color--gedempt, #6B6560);
}

.av-btn--ghost.is-disabled { opacity: .5; cursor: not-allowed; pointer-events: auto; }

.av-vp__cta:disabled, .av-vp__cta[disabled] { opacity: .45; cursor: not-allowed; pointer-events: none; }

.av-vp__chat-pane { max-height: 78vh; }
.av-vp__chat-root { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.av-vp__chat-root .av-vp__chat-stream { flex: 1; min-height: 0; }

/* Messages: unread dot + snippet on generic inbox items (customer + vendor). */
.av-msg__item { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 2px 12px; padding: 12px 14px; border-bottom: 1px solid var(--wp--preset--color--lijn, #E7E2DA); text-decoration: none; color: inherit; }
.av-msg__item.is-active { background: var(--wp--preset--color--basis, #FAF8F5); }
.av-msg__item strong { grid-column: 1; font-weight: 500; }
.av-msg__item .av-msg__subj { grid-column: 1; font-size: 13px; color: var(--wp--preset--color--gedempt, #6B6560); }
.av-msg__item .av-msg__snip { grid-column: 1; font-size: 12px; color: var(--wp--preset--color--gedempt, #6B6560); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.av-msg__item small { grid-column: 2; grid-row: 1; font-size: 11px; color: var(--wp--preset--color--gedempt, #6B6560); }
.av-msg__dot { grid-column: 2; grid-row: 2; align-self: end; display: inline-block; width: 8px; height: 8px; background: var(--wp--preset--color--fout, #B14A3E); border-radius: 999px; }
.av-msg__dot[hidden] { display: none; }

/* Header user unread badge — floats over top-right of user avatar link. */
.av-header__user { position: relative; }
.av-header__badge { position: absolute; top: -6px; right: -8px; min-width: 18px; height: 18px; padding: 0 5px; box-sizing: border-box; background: var(--wp--preset--color--fout, #B14A3E); color: #fff; font-size: 11px; font-weight: 500; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; line-height: 1; }
.av-header__badge[hidden] { display: none; }


/* featured-products head — split heading + link */
.av-newin--featured .av-newin__head > div { display: flex; flex-direction: column; gap: 6px; }
.av-newin--featured .av-newin__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; flex-wrap: wrap; }


/* P3 header simplify */
@media (min-width: 1024px) {
	.av-header { border-bottom: 0 !important; padding-top: 22px !important; padding-bottom: 22px !important; }
}
/* Why Avilia (editorial-band) refinement */
.av-edband { padding: 120px 0; background: var(--wp--preset--color--basis); }
.av-edband__heading { font-family: var(--wp--preset--font-family--cormorant); font-size: clamp(30px, 3.6vw, 46px); font-weight: 500; line-height: 1.15; margin: 0 0 48px; text-align: center; }
.av-edband__item { padding: 0; border-left: 0; padding-left: 0; text-align: center; }
.av-edband__title { font-family: var(--wp--preset--font-family--cormorant); font-size: 20px; font-weight: 500; margin: 0 0 8px; }
.av-edband__body { max-width: 32ch; margin: 0 auto; }

/* Category archive hero (2026-09-12) — full-bleed banner w/ overlaid title */
.av-arch__hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;height:clamp(220px,32vw,420px);background-position:center center;background-size:cover;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:24px}
.av-arch__hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,25,23,.28) 0%,rgba(28,25,23,.42) 100%);z-index:1}
.av-arch__hero-title{position:relative;z-index:2;margin:0;color:#FFFFFF;font-family:Archivo,system-ui,sans-serif;font-weight:500;font-size:clamp(28px,4.4vw,52px);line-height:1.15;text-align:center;padding:0 24px;letter-spacing:.01em;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.av-arch--has-hero .av-container:first-of-type{padding-top:0}

/* --- Footer social icons (2026-09-12) --- */
.av-footer__socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px;align-items:center}
.av-footer__social{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;border:1px solid var(--wp--preset--color--lijn);color:var(--wp--preset--color--gedempt);background:var(--wp--preset--color--vlak);transition:color .15s ease,border-color .15s ease,background .15s ease,transform .15s ease;text-decoration:none}
.av-footer__social:hover{color:var(--wp--preset--color--basis);background:var(--wp--preset--color--terra-800);border-color:var(--wp--preset--color--terra-800);transform:translateY(-1px)}
.av-footer__social svg{display:block}

/* --- Consultations index: Ananda-style portrait grid (2026-09-13) --- */
.av-cidx__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px;padding:0;margin:0 0 32px;list-style:none}
.av-cidx__grid-empty{grid-column:1/-1;padding:32px;background:var(--wp--preset--color--vlak);border:1px dashed var(--wp--preset--color--lijn);border-radius:12px;text-align:center;color:var(--wp--preset--color--gedempt)}
.av-cidx__pcard{list-style:none;background:var(--wp--preset--color--vlak);border:1px solid var(--wp--preset--color--lijn);border-radius:14px;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}
.av-cidx__pcard:hover{box-shadow:0 8px 28px rgba(28,25,23,.09);transform:translateY(-2px)}
.av-cidx__pcard-link{display:block;color:inherit;text-decoration:none}
.av-cidx__pcard-link:hover{text-decoration:none;color:inherit}
.av-cidx__pcard-img{position:relative;aspect-ratio:3/4;background:var(--wp--preset--color--basis);overflow:hidden}
.av-cidx__pcard-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .32s ease}
.av-cidx__pcard:hover .av-cidx__pcard-img img{transform:scale(1.03)}
.av-cidx__pcard-initial{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Archivo,system-ui,sans-serif;font-size:64px;font-weight:500;color:var(--wp--preset--color--gedempt);background:color-mix(in srgb, var(--wp--preset--color--terra-800) 8%, var(--wp--preset--color--basis))}
.av-cidx__pcard-type{position:absolute;left:12px;bottom:12px;background:rgba(28,25,23,.72);color:#FFFFFF;padding:4px 10px;border-radius:999px;font-family:Archivo,system-ui,sans-serif;font-size:11px;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(4px)}
.av-cidx__pcard-flag{position:absolute;right:12px;top:12px;padding:4px 10px;border-radius:999px;font-family:Archivo,system-ui,sans-serif;font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}
.av-cidx__pcard-flag--hot{background:var(--wp--preset--color--terra-800);color:#FFFFFF}
.av-cidx__pcard-flag--new{background:var(--wp--preset--color--goud,#A98634);color:#FFFFFF}
.av-cidx__pcard-flag--booked{background:rgba(28,25,23,.72);color:#FFFFFF}
.av-cidx__pcard-body{padding:16px 18px 18px}
.av-cidx__pcard-name{margin:0 0 4px;font-family:Archivo,serif;font-weight:500;font-size:18px;line-height:1.25;color:var(--wp--preset--color--inkt)}
.av-cidx__pcard-vendor{margin:0 0 8px;font-size:13px;color:var(--wp--preset--color--gedempt)}
.av-cidx__pcard-meta{margin:0 0 12px;font-size:12px;color:var(--wp--preset--color--gedempt);display:flex;flex-wrap:wrap;gap:6px 12px}
.av-cidx__pcard-meta span{display:inline-flex;align-items:center}
.av-cidx__pcard-meta span + span::before{content:·;margin-right:12px;color:var(--wp--preset--color--lijn)}
.av-cidx__pcard-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--wp--preset--color--lijn)}
.av-cidx__pcard-price{font-family:Archivo,serif;font-size:17px;font-weight:500;color:var(--wp--preset--color--inkt)}
.av-cidx__pcard-slot{font-size:12px;padding:4px 10px;border-radius:999px;background:color-mix(in srgb, var(--wp--preset--color--terra-800) 10%, var(--wp--preset--color--vlak));color:var(--wp--preset--color--terra-800);border:1px solid color-mix(in srgb, var(--wp--preset--color--terra-800) 25%, var(--wp--preset--color--lijn))}
.av-cidx__pcard-rate{font-size:12px;color:var(--wp--preset--color--gedempt)}
@media (max-width:640px){.av-cidx__grid{grid-template-columns:repeat(2,1fr);gap:14px}.av-cidx__pcard-name{font-size:16px}.av-cidx__pcard-body{padding:12px 14px 14px}}



/* --- Filter dropdowns v4 (2026-09-13) — Ananda-style single card w/ rows --- */
/* Outer filter panel: cream page bg (transparent) so inner white card pops */
.av-arch__filters{background:transparent;border:0;padding:0;box-shadow:none}
.av-arch__filters-inner{display:block;gap:0}
/* "Filters" title + Clear row: outside white card */
.av-arch__filters-head{display:flex;justify-content:space-between;align-items:center;padding:0 4px 14px;border-bottom:0;margin-bottom:12px}
.av-arch__filters-head h2{margin:0;font-family:Archivo,Georgia,serif;font-size:26px;font-weight:500;letter-spacing:.01em;color:var(--wp--preset--color--terra-800)}
.av-arch__filters-clear{font-size:13px;color:var(--wp--preset--color--terra-800);text-decoration:underline;text-underline-offset:3px}
.av-arch__filters-clear:hover{color:var(--wp--preset--color--inkt)}
/* Single white rounded card containing all filter rows */
.av-arch__filters-inner > .av-arch__group,
.av-arch__filters-inner > .av-arch__chips{background:var(--wp--preset--color--vlak);border-left:1px solid var(--wp--preset--color--lijn);border-right:1px solid var(--wp--preset--color--lijn);padding:0;margin:0;border-radius:0}
.av-arch__filters-inner > .av-arch__group:first-of-type{border-top:1px solid var(--wp--preset--color--lijn);border-top-left-radius:12px;border-top-right-radius:12px}
.av-arch__filters-inner > .av-arch__group:last-of-type{border-bottom:1px solid var(--wp--preset--color--lijn);border-bottom-left-radius:12px;border-bottom-right-radius:12px}
.av-arch__filters-inner > .av-arch__group + .av-arch__group{border-top:1px solid var(--wp--preset--color--lijn)}
/* Row header (legend) */
.av-arch__filters .av-arch__group > legend{float:none;width:100%;box-sizing:border-box;display:flex;align-items:center;gap:10px;padding:18px 22px;margin:0;background:transparent;border:0;font-family:Archivo,Georgia,serif;font-size:18px;font-weight:500;color:var(--wp--preset--color--terra-800);cursor:pointer;user-select:none;letter-spacing:.01em}
.av-arch__filters .av-arch__group > legend:hover{background:color-mix(in srgb, var(--wp--preset--color--terra-800) 3%, transparent)}
.av-arch__filters .av-arch__group > legend > .av-arch__tag{font-family:Archivo,system-ui,sans-serif;font-size:11px;font-weight:400;color:var(--wp--preset--color--gedempt);letter-spacing:0;margin-left:8px;margin-right:auto;text-transform:none}
.av-arch__filters .av-arch__group > legend::after{content:"";flex-shrink:0;width:10px;height:10px;border-right:2px solid var(--wp--preset--color--terra-800);border-bottom:2px solid var(--wp--preset--color--terra-800);transform:rotate(45deg) translate(-2px,-2px);transition:transform .22s ease;margin-left:auto}
.av-arch__filters .av-arch__group:not(.is-collapsed) > legend::after{transform:rotate(-135deg) translate(-2px,-2px)}
/* Row body — visible when open, sits inside the card w/ hairline above */
.av-arch__filters .av-arch__group > ul,
.av-arch__filters .av-arch__group > .av-arch__price,
.av-arch__filters .av-arch__group > .av-arch__when{margin:0;padding:0 22px 20px;list-style:none;display:flex;flex-direction:column;gap:10px;max-height:800px;opacity:1;overflow:hidden;transition:max-height .3s ease,padding .24s ease,opacity .2s ease}
.av-arch__filters .av-arch__group > .av-arch__price{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.av-arch__filters .av-arch__group > .av-arch__when{flex-direction:row;flex-wrap:wrap;gap:6px}
.av-arch__filters .av-arch__group.is-collapsed > ul,
.av-arch__filters .av-arch__group.is-collapsed > .av-arch__price,
.av-arch__filters .av-arch__group.is-collapsed > .av-arch__when{max-height:0;padding-top:0;padding-bottom:0;opacity:0}
/* Hairline between legend & body when expanded */
.av-arch__filters .av-arch__group:not(.is-collapsed) > legend{padding-bottom:14px;position:relative}
.av-arch__filters .av-arch__group:not(.is-collapsed) > legend::before{content:"";position:absolute;left:22px;right:22px;bottom:0;height:1px;background:var(--wp--preset--color--lijn)}
.av-arch__filters .av-arch__group:not(.is-collapsed) > ul,
.av-arch__filters .av-arch__group:not(.is-collapsed) > .av-arch__price,
.av-arch__filters .av-arch__group:not(.is-collapsed) > .av-arch__when{padding-top:16px}
/* Row content: existing label grid */
.av-arch__filters .av-arch__group label{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;padding:2px 0;font-size:14px;cursor:pointer;color:var(--wp--preset--color--inkt)}
.av-arch__filters .av-arch__group input[type=checkbox]{accent-color:var(--wp--preset--color--terra-800)}

/* v4 tweaks (2026-09-13) — hide category-attribute tag, tidy 'more' link */
.av-arch__filters .av-arch__group > legend > .av-arch__tag{display:none}
.av-arch__filters .av-arch__group .av-arch__more{margin:6px 22px 20px;padding:0;background:transparent;border:0;font:inherit;font-size:13px;color:var(--wp--preset--color--terra-800);text-decoration:underline;cursor:pointer;text-align:left}
.av-arch__filters .av-arch__group.is-collapsed .av-arch__more{display:none}

/* v4 alignment fix (2026-09-13) — force joined card, kill inherited gap */
.av-arch .av-arch__filters .av-arch__filters-inner{display:block !important;gap:0 !important}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group{border-radius:0;margin-top:0;border-top:1px solid var(--wp--preset--color--lijn)}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group:first-of-type{border-top:1px solid var(--wp--preset--color--lijn);border-top-left-radius:12px;border-top-right-radius:12px}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group:last-of-type{border-bottom:1px solid var(--wp--preset--color--lijn);border-bottom-left-radius:12px;border-bottom-right-radius:12px}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group + .av-arch__group{margin-top:0}

/* v5 join fix (2026-09-13) — kill native fieldset spacing + force merged card */
.av-arch .av-arch__filters .av-arch__filters-inner{display:block !important;gap:0 !important;padding:0}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group{margin:0 !important;padding:0 !important;background:var(--wp--preset--color--vlak) !important;border:1px solid var(--wp--preset--color--lijn) !important;border-radius:0 !important;box-shadow:none !important;min-inline-size:0}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group + .av-arch__group{border-top:0 !important}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group:first-of-type{border-top-left-radius:12px !important;border-top-right-radius:12px !important}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group:last-of-type{border-bottom-left-radius:12px !important;border-bottom-right-radius:12px !important}

/* v6 nuke native fieldset (2026-09-13) — logical props + explicit block */
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group{display:block !important;padding-block:0 !important;padding-inline:0 !important;padding-block-start:0 !important;padding-block-end:0 !important;margin-block:0 !important;margin-inline:0 !important;min-inline-size:0 !important;inline-size:auto !important;contain:layout style}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group > legend{margin-block:0 !important;margin-inline:0 !important;padding-inline:22px !important;padding-block:18px !important;background:transparent !important;border:0 !important;inline-size:100% !important}

/* v7 div-based rows (2026-09-13) — replaces fieldset/legend semantics */
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group{display:block !important;padding:0 !important;margin:0 !important;background:var(--wp--preset--color--vlak) !important;border:1px solid var(--wp--preset--color--lijn) !important;border-radius:0 !important;box-shadow:none !important;min-width:0 !important}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group + .av-arch__group{border-top:0 !important}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group:first-of-type{border-top-left-radius:12px !important;border-top-right-radius:12px !important}
.av-arch .av-arch__filters .av-arch__filters-inner > .av-arch__group:last-of-type{border-bottom-left-radius:12px !important;border-bottom-right-radius:12px !important}
.av-arch__group > .av-arch__group-legend{display:flex;align-items:center;gap:10px;padding:18px 22px;margin:0;background:transparent;border:0;font-family:Archivo,Georgia,serif;font-size:18px;font-weight:500;color:var(--wp--preset--color--terra-800);cursor:pointer;user-select:none;letter-spacing:.01em}
.av-arch__group > .av-arch__group-legend:hover{background:color-mix(in srgb, var(--wp--preset--color--terra-800) 3%, transparent)}
.av-arch__group > .av-arch__group-legend::after{content:"";flex-shrink:0;width:10px;height:10px;border-right:2px solid var(--wp--preset--color--terra-800);border-bottom:2px solid var(--wp--preset--color--terra-800);transform:rotate(45deg) translate(-2px,-2px);transition:transform .22s ease;margin-left:auto}
.av-arch__group:not(.is-collapsed) > .av-arch__group-legend::after{transform:rotate(-135deg) translate(-2px,-2px)}
.av-arch__group:not(.is-collapsed) > .av-arch__group-legend{position:relative;padding-bottom:14px}
.av-arch__group:not(.is-collapsed) > .av-arch__group-legend::before{content:"";position:absolute;left:22px;right:22px;bottom:0;height:1px;background:var(--wp--preset--color--lijn)}
.av-arch__group > .av-arch__group-legend > .av-arch__tag{display:none}

/* v7 flags + note polish (2026-09-13) */
.av-arch__group--flags label{grid-template-columns:20px 1fr !important}
.av-arch__group--flags ul{padding:16px 22px 20px}
/* Trailing note — sit outside the card, muted small */
.av-arch__filters .av-arch__note{margin:16px 4px 0 !important;padding:0 !important;background:transparent !important;border:0 !important;font-size:12px !important;color:var(--wp--preset--color--gedempt) !important;line-height:1.55}
.av-arch__filters .av-arch__apply{margin:16px 0 0}

/* === 2026-09-15 mobile tap-target fixes (Foundations 44px min) === */
@media (max-width: 767px) {
	.av-footer a,
	.av-footer__col a,
	.av-footer__legal a { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 0; }
	.av-footer__social a { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; }
	.av-topstrip__sell,
	.av-header__login { min-height: 44px; display: inline-flex; align-items: center; padding: 4px 8px; }
	.av-newin__tab { min-height: 44px !important; padding: 10px 12px !important; }
	.av-shops__all,
	.av-newin__all,
	.av-consults__all,
	.av-catgrid__all,
	.av-shops__all,
	a.av-arch__all,
	.av-cidx__pcard-body a { min-height: 44px; display: inline-flex; align-items: center; padding: 6px 8px; }
}

/* === 2026-09-15 pt2: Fix social + wish + filter tap targets (mobile) === */
@media (max-width: 767px) {
	/* Social icons — the anchor itself IS .av-footer__social */
	.av-footer__social { width: 44px !important; height: 44px !important; }
	/* Product-card heart favourite */
	.av-newin__wish { min-width: 44px; min-height: 44px; padding: 10px; }
	/* Filter checkboxes/radios — enlarge native input + ensure label has padding */
	.av-arch__filter-item input[type="checkbox"],
	.av-arch__filter-item input[type="radio"],
	.av-arch__filters input[type="checkbox"],
	.av-arch__filters input[type="radio"],
	.av-cidx__filter input[type="checkbox"],
	.av-cidx__filter input[type="radio"] { width: 22px; height: 22px; margin-right: 10px; }
	.av-arch__filter-item label,
	.av-arch__filter-item,
	.av-cidx__filter label { min-height: 44px; display: inline-flex; align-items: center; padding: 4px 0; }
	/* Pagination + view toggle + filter clear */
	.av-arch__pager-btn,
	.av-arch__more,
	.av-arch__view-btn,
	.av-arch__filters-clear,
	.av-arch__drawer-close,
	.av-arch__side-toggle { min-width: 44px; min-height: 44px; padding: 10px 14px !important; }
	/* Footer nav links — legal + wp-block-nav variants */
	.av-footer .wp-block-navigation-item,
	.av-footer .wp-block-navigation-link a,
	.av-footer .wp-block-navigation-item__content,
	.av-footer li a,
	.av-footer p a { min-height: 44px; display: inline-flex; align-items: center; padding: 4px 0; }
}

/* Mobile header tweaks 2026-09-15 */
.av-header__cart-count.is-empty { display: none !important; }
.av-header__cart:has(.av-header__cart-count.is-empty) { display: none !important; }
@media (max-width: 1023px) {
	.av-catnav { display: none !important; }
	.av-header__row { justify-content: space-between !important; }
	.av-header__logo { margin-right: auto !important; }
	.av-header__logo img,
	.av-header .wp-block-site-logo img,
	.custom-logo { max-height: 56px !important; }
}

/* Vendor/admin portal mobile nav toggle 2026-09-15 */
.av-vp__mobile-toggle { display: none; }
@media (max-width: 900px) {
	.av-vp__mobile-toggle {
		display: flex; align-items: center; gap: 12px;
		width: 100%; padding: 12px 20px;
		background: #F8F6F2;
		border: 0; border-radius: 0;
		font-size: 15px; font-weight: 600;
		color: var(--wp--preset--color--inkt);
		cursor: pointer; margin: 0;
	}
	.av-vp__mobile-toggle-icon { display: inline-flex; flex-direction: column; justify-content: center; gap: 4px; width: 22px; height: 18px; }
	.av-vp__mobile-toggle-icon span { display: block; height: 2px; background: currentColor; border-radius: 2px; transition: transform 180ms ease, opacity 180ms ease; }
	.av-vp__mobile-toggle[aria-expanded="true"] .av-vp__mobile-toggle-icon span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
	.av-vp__mobile-toggle[aria-expanded="true"] .av-vp__mobile-toggle-icon span:nth-child(2) { opacity: 0; }
	.av-vp__mobile-toggle[aria-expanded="true"] .av-vp__mobile-toggle-icon span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
	.av-vp__mobile-toggle-lbl { flex: 1 1 auto; text-align: left; }

	.av-vp__side {
		position: fixed; top: 0; left: 0; bottom: 0;
		width: 82%; max-width: 320px;
		z-index: 1000;
		transform: translateX(-100%);
		transition: transform 220ms ease;
		box-shadow: 2px 0 12px rgba(0,0,0,0.15);
		overflow-y: auto;
	}
	.av-vp__shell.is-nav-open .av-vp__side { transform: translateX(0); }
	.av-vp__shell.is-nav-open::before {
		content: ""; position: fixed; inset: 0;
		background: rgba(0,0,0,0.4); z-index: 999;
	}
	body.av-vp-nav-open { overflow: hidden; }
}

/* Mobile section padding tighten 2026-09-15 */
@media (max-width: 767px) {
	.av-catgrid,
	.av-shops,
	.av-newin,
	.av-consults,
	.av-edband { padding: 40px 0 !important; }
	.av-signupwrap { padding: 24px 0 40px !important; }
	.av-trust { padding: 8px 0 32px !important; }
	.av-trust__list { padding: 20px 20px 8px !important; gap: 14px !important; }
	.av-container { padding: 0 20px !important; }
}

/* Missing product thumb: soft placeholder */
.av-newin__thumb:empty,
.av-newin__thumb:not(:has(img)) {
	background: linear-gradient(135deg, var(--wp--preset--color--basis), var(--wp--preset--color--vlak));
}

/* Checkout header 2026-09-15 */
.av-ck-header__row { align-items: center; gap: 16px; }
.av-ck-header__logo { flex: 0 0 auto; }
.av-ck-header__logo img,
.av-ck-header .wp-block-site-logo img { max-height: 44px !important; width: auto !important; }
.av-ck-header__secure { margin: 0; color: var(--wp--preset--color--gedempt); display: inline-flex; align-items: center; gap: 6px; }
.av-ck-header__lock { font-size: 14px; }
@media (max-width: 767px) {
	.av-ck-header__secure { font-size: 12px; }
	.av-ck-header__logo img,
	.av-ck-header .wp-block-site-logo img { max-height: 36px !important; }
	.wp-block-woocommerce-checkout { padding-top: 8px !important; }
	.wc-block-components-sidebar-layout { padding: 0 12px !important; }
	.wc-block-checkout__sidebar { margin-top: 8px !important; }
}

/* === 2026-09-15 pt3: Header lang single-line + login button (mobile) === */
.av-lang { flex-wrap: nowrap !important; white-space: nowrap; }
.av-lang__item, .av-lang__item a { white-space: nowrap; }

/* Login link → proper pill button, works desktop + mobile */
.av-header__login {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 8px 16px; border: 1px solid var(--wp--preset--color--inkt);
	border-radius: 999px; background: var(--wp--preset--color--inkt);
	color: var(--wp--preset--color--basis) !important;
	font-weight: 500; font-size: 14px; line-height: 1;
	min-height: 40px; text-decoration: none;
	transition: background .15s ease, color .15s ease;
}
.av-header__login:hover {
	background: var(--wp--preset--color--terra-800, #6D3624);
	border-color: var(--wp--preset--color--terra-800, #6D3624);
	color: var(--wp--preset--color--basis) !important;
	text-decoration: none;
}

@media (max-width: 767px) {
	/* Keep topstrip lang pills on one line even when everything else wraps */
	.av-topstrip__right { flex-wrap: nowrap; }
	.av-lang { gap: 2px; }
	.av-lang__item a { padding: 2px 6px; font-size: 11px; }
	/* Login pill sizing on mobile — larger tap target */
	.av-header__login { min-height: 44px; padding: 8px 14px; font-size: 14px; }
}

/* === 2026-09-15 pt5: Kill cream gap between header + hero on mobile === */
@media (max-width: 1023px) {
	/* Header bottom padding produces cream strip since catnav hidden */
	.wp-block-template-part[data-type="wp_template_part"] > .av-catnav { display: none !important; }
	.wp-site-blocks > header + main,
	.wp-site-blocks > * + * { margin-block-start: 0 !important; }
	header.wp-block-template-part { padding-bottom: 0 !important; }
	.av-header__row { padding-bottom: 8px !important; }
}

/* === 2026-09-15 pt6: Move topstrip taglines + Verkopen link to mobile footer === */
.av-mobstrip { display: none; }
@media (max-width: 767px) {
	/* Hide left tagline + verified span + Verkopen link in header on mobile.
	   Keep NL/EN language switcher visible. */
	.av-topstrip__left { display: none !important; }
	.av-topstrip__right p.has-small-font-size { display: none !important; }
	.av-topstrip__row { justify-content: flex-end !important; padding: 6px 0; }

	/* Mobile-only footer strip with the moved content */
	.av-mobstrip {
		display: flex; flex-direction: column; gap: 8px;
		background: var(--wp--preset--color--inkt);
		color: var(--wp--preset--color--basis);
		padding: 20px 20px 24px; text-align: center;
		font-size: 13px; line-height: 1.5;
	}
	.av-mobstrip__tag { margin: 0; opacity: 0.85; }
	.av-mobstrip__verified { opacity: 0.7; font-size: 12px; }
	.av-mobstrip__sell {
		display: inline-flex; align-self: center;
		margin-top: 6px; padding: 10px 20px;
		background: var(--wp--preset--color--goud);
		color: var(--wp--preset--color--inkt) !important;
		text-decoration: none; border-radius: 999px;
		font-weight: 500; min-height: 44px; align-items: center;
	}
	.av-mobstrip__sell:hover { background: var(--wp--preset--color--basis); }
}

/* === 2026-09-15 pt7: Search/archive card responsive + empty thumb polish === */
/* Force archive list = grid regardless of av-newin__list carousel class collision */
.av-arch__list.av-newin__list {
	display: grid !important;
	overflow: visible !important;
	scroll-snap-type: none !important;
	margin: 0 !important; padding: 0 !important;
}
.av-arch__list.av-newin__list > .av-newin__item {
	flex: initial !important;
	width: auto !important;
	min-width: 0;
}

/* Empty thumb: show subtle icon so card does not look broken */
.av-newin__thumb:not(:has(img))::before {
	content: "";
	position: absolute; inset: 0;
	background: linear-gradient(135deg, var(--wp--preset--color--basis) 0%, var(--wp--preset--color--vlak) 100%);
	z-index: 0;
}
.av-newin__thumb:not(:has(img))::after {
	content: "";
	position: absolute; inset: 0;
	background: no-repeat center/40px 40px url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%236B6560\" stroke-width=\"1.2\" opacity=\"0.5\"><rect x=\"3\" y=\"5\" width=\"18\" height=\"14\" rx=\"1.5\"/><circle cx=\"9\" cy=\"11\" r=\"1.5\"/><path d=\"M4 18l4-5 3 3 4-5 5 7\"/></svg>");
	z-index: 0;
}
.av-newin__thumb .av-newin__badge,
.av-newin__thumb .av-newin__wish { z-index: 1; }

/* Archive card: tighter mobile */
@media (max-width: 767px) {
	.av-arch__list { gap: 12px !important; }
	.av-newin__body { padding: 10px 10px 12px !important; gap: 4px !important; }
	.av-newin__name { font-size: 13px !important; line-height: 1.3 !important; }
	.av-newin__shop { font-size: 9px !important; letter-spacing: 0.12em !important; }
	.av-newin__price { font-size: 12px !important; }
	.av-newin__stock { font-size: 10px !important; }
	.av-newin__badge { top: 8px; left: 8px; font-size: 10px; padding: 2px 6px; }
	.av-newin__wish { top: 6px !important; right: 6px !important; width: 28px !important; height: 28px !important; min-width: 28px !important; min-height: 28px !important; padding: 4px !important; }
	/* List view card: 100px thumb, tighter body */
	.av-arch__list--lijst .av-newin__card { grid-template-columns: 100px 1fr !important; }
	.av-arch__list--lijst .av-newin__body { padding: 10px 12px !important; }
}

/* === 2026-09-15 pt8: Fix Filters button placement on mobile archive === */
@media (max-width: 899px) {
	.av-arch__grid { grid-template-areas: "side" "main" !important; }
	.av-arch__side { grid-area: side !important; }
	.av-arch__main { grid-area: main !important; }
	/* Filters toolbar row: put toggle + sort + view on one flow */
	.av-arch__side-toggle {
		margin-bottom: 8px !important;
		width: 100%; justify-content: center;
	}
	.av-arch__head { flex-direction: column !important; align-items: stretch !important; gap: 10px !important; }
	.av-arch__head-side { justify-content: space-between; }
	.av-arch__crumbs { margin-bottom: 12px !important; font-size: 12px !important; }
	.av-arch__title { font-size: clamp(24px, 6vw, 32px) !important; margin: 6px 0 4px !important; }
	.av-arch__sub { font-size: 13px !important; margin: 0 0 12px !important; }
	.av-arch__bar { margin: 8px 0 !important; }
	.av-arch__view-btn { padding: 8px 14px !important; }
}

/* === 2026-09-15 pt9: Shops archive (/winkels/) === */
.av-varch { padding: 32px 0 64px; background: var(--wp--preset--color--basis); }
.av-varch__head { margin: 0 0 24px; }
.av-varch__heading { font-family: var(--wp--preset--font-family--cormorant, Cormorant, Georgia, serif); font-weight: 500; font-size: clamp(30px, 5vw, 54px); line-height: 1.1; margin: 0 0 8px; color: var(--wp--preset--color--inkt); }
.av-varch__sub { color: var(--wp--preset--color--gedempt); font-size: 15px; margin: 0 0 6px; max-width: 62ch; }
.av-varch__count { color: var(--wp--preset--color--gedempt); font-size: 13px; margin: 0; }

.av-varch__toolbar {
	display: grid; grid-template-columns: minmax(0,2fr) minmax(0,1fr) auto auto;
	gap: 10px; align-items: end; margin: 16px 0 28px;
	background: var(--wp--preset--color--vlak); border: 1px solid var(--wp--preset--color--lijn);
	border-radius: 12px; padding: 14px;
}
.av-varch__field { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.av-varch__label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--wp--preset--color--gedempt); font-weight: 500; }
.av-varch__field input, .av-varch__field select {
	width: 100%; padding: 10px 12px; border: 1px solid var(--wp--preset--color--lijn);
	border-radius: 8px; background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt); font-size: 14px;
}
.av-varch__submit {
	padding: 10px 20px; background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis);
	border: 1px solid var(--wp--preset--color--inkt); border-radius: 8px; font-weight: 500; cursor: pointer;
	min-height: 42px; font-size: 14px;
}
.av-varch__submit:hover { background: var(--wp--preset--color--terra-800, #6D3624); border-color: var(--wp--preset--color--terra-800, #6D3624); }
.av-varch__clear { align-self: center; color: var(--wp--preset--color--gedempt); text-decoration: underline; font-size: 13px; }

.av-varch__list {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 24px;
}
.av-varch__item { list-style: none; margin: 0; }
.av-varch__card {
	display: flex; flex-direction: column;
	background: var(--wp--preset--color--vlak);
	border: 1px solid var(--wp--preset--color--lijn);
	border-radius: 14px; overflow: hidden;
	text-decoration: none; color: var(--wp--preset--color--inkt);
	transition: box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}
.av-varch__card:hover {
	text-decoration: none; color: var(--wp--preset--color--inkt);
	box-shadow: 0 8px 24px rgba(28,25,23,0.08);
	border-color: var(--wp--preset--color--gedempt);
	transform: translateY(-2px);
}
.av-varch__thumb {
	position: relative; display: block; aspect-ratio: 4 / 3;
	background: linear-gradient(135deg, var(--wp--preset--color--terra-050, #F7EDE7), var(--wp--preset--color--vlak));
	overflow: hidden;
}
.av-varch__thumb img { width: 100%; height: 100%; object-fit: cover; }
.av-varch__thumb-fallback {
	position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
	font-family: var(--wp--preset--font-family--cormorant, Cormorant, Georgia, serif);
	font-size: 64px; font-weight: 500; color: var(--wp--preset--color--terra-600, #9A4F35);
	opacity: 0.7;
}
.av-varch__badge {
	position: absolute; top: 10px; left: 10px;
	display: inline-flex; align-items: center; gap: 4px;
	background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis);
	padding: 4px 8px; border-radius: 999px; font-size: 11px; font-weight: 500;
}
.av-varch__badge svg { color: var(--wp--preset--color--goud, #A98634); }

.av-varch__body { display: flex; flex-direction: column; gap: 6px; padding: 16px 18px 18px; flex: 1; }
.av-varch__name {
	font-family: var(--wp--preset--font-family--cormorant, Cormorant, Georgia, serif);
	font-weight: 500; font-size: 22px; line-height: 1.2; color: var(--wp--preset--color--inkt);
}
.av-varch__meta { font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--gedempt); }
.av-varch__pitch { font-size: 13px; line-height: 1.5; color: var(--wp--preset--color--inkt); opacity: 0.78; margin-top: 4px; }
.av-varch__foot {
	display: flex; justify-content: space-between; align-items: center;
	margin-top: auto; padding-top: 12px; border-top: 1px solid var(--wp--preset--color--lijn);
	font-size: 12px;
}
.av-varch__pcount { color: var(--wp--preset--color--gedempt); }
.av-varch__view { color: var(--wp--preset--color--terra-600, #9A4F35); font-weight: 500; }

.av-varch__empty { text-align: center; padding: 60px 20px; background: var(--wp--preset--color--vlak); border-radius: 14px; }
.av-varch__empty p { margin: 0 0 16px; color: var(--wp--preset--color--gedempt); }
.av-varch__empty-cta {
	display: inline-flex; padding: 10px 20px; background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis);
	border-radius: 999px; text-decoration: none; font-weight: 500;
}

.av-varch__pager { display: flex; justify-content: center; gap: 6px; margin-top: 32px; flex-wrap: wrap; }
.av-varch__pager-btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 40px; min-height: 40px; padding: 0 12px;
	background: var(--wp--preset--color--basis); color: var(--wp--preset--color--inkt);
	border: 1px solid var(--wp--preset--color--lijn); border-radius: 8px;
	font-size: 13px; font-weight: 500; text-decoration: none;
}
.av-varch__pager-btn.is-active { background: var(--wp--preset--color--inkt); color: var(--wp--preset--color--basis); border-color: var(--wp--preset--color--inkt); }
.av-varch__pager-btn:hover { border-color: var(--wp--preset--color--gedempt); text-decoration: none; }

/* Mobile */
@media (max-width: 767px) {
	.av-varch { padding: 20px 0 48px; }
	.av-varch__toolbar { grid-template-columns: 1fr; padding: 12px; gap: 10px; }
	.av-varch__submit { width: 100%; }
	.av-varch__clear { align-self: flex-start; }
	.av-varch__list { grid-template-columns: 1fr; gap: 16px; }
	.av-varch__thumb { aspect-ratio: 16 / 9; }
	.av-varch__body { padding: 14px 16px 16px; }
	.av-varch__name { font-size: 20px; }
	.av-varch__thumb-fallback { font-size: 48px; }
	.av-varch__heading { margin-bottom: 6px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.av-varch__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* === 2026-09-15 pt10: Login/register mobile compact === */
@media (max-width: 767px) {
	.av-auth { padding: 12px 0 32px !important; }
	.av-auth .av-container { padding: 0 12px !important; }
	.av-auth__wrap { gap: 12px !important; }
	.av-auth__hero { min-height: 140px !important; border-radius: 12px !important; }
	.av-auth__hero-brand { left: 14px !important; right: 14px !important; bottom: 14px !important; gap: 6px 10px !important; }
	.av-auth__hero-logo { width: 34px !important; height: 34px !important; }
	.av-auth__hero-name { font-size: 17px !important; }
	.av-auth__hero-pitch { font-size: 12px !important; }
	.av-auth__card { padding: 16px 14px !important; border-radius: 12px !important; }
	.av-auth__tabs { margin-bottom: 14px !important; padding: 3px !important; }
	.av-auth__tab { padding: 10px 8px !important; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
	.av-auth__h { font-size: 20px !important; margin: 0 0 6px !important; }
	.av-auth__sub { font-size: 13px !important; margin: 0 0 14px !important; }
	.av-auth__form { gap: 10px !important; }
	.av-auth__form label { font-size: 12px !important; gap: 4px !important; }
	.av-auth__form input, .av-auth__form select, .av-auth__form textarea {
		padding: 12px !important; font-size: 15px !important; /* 15px+ prevents iOS auto-zoom */
		border-radius: 8px !important;
	}
	.av-auth__btn { min-height: 46px !important; font-size: 15px !important; padding: 12px 16px !important; }
	.av-auth__pw-row { flex-wrap: wrap; gap: 8px !important; }
	.av-auth__forgot { font-size: 12px !important; }
	.av-auth__or { margin: 12px 0 !important; font-size: 12px !important; }
	.av-auth__sso { gap: 8px !important; }
	.av-auth__sso a, .av-auth__sso button { padding: 10px 12px !important; font-size: 13px !important; min-height: 44px; }
}
