/* ==========================================================================
   Boerengids – stijl gelijk aan boerengids.nl (MyListing/Elementor-ontwerp),
   opnieuw opgebouwd zonder MyListing. Kleuren, maten en opbouw volgen de live site.
   ========================================================================== */

@font-face { font-family: Outfit; font-style: normal; font-weight: 300; font-display: swap; src: url(../fonts/outfit-latin-300-normal.woff2) format("woff2"); }
@font-face { font-family: Outfit; font-style: normal; font-weight: 400; font-display: swap; src: url(../fonts/outfit-latin-400-normal.woff2) format("woff2"); }
@font-face { font-family: Outfit; font-style: normal; font-weight: 500; font-display: swap; src: url(../fonts/outfit-latin-500-normal.woff2) format("woff2"); }
@font-face { font-family: Outfit; font-style: normal; font-weight: 600; font-display: swap; src: url(../fonts/outfit-latin-600-normal.woff2) format("woff2"); }
@font-face { font-family: Outfit; font-style: normal; font-weight: 700; font-display: swap; src: url(../fonts/outfit-latin-700-normal.woff2) format("woff2"); }

:root {
	--bg-green: #60b347;
	--bg-green-dark: #4f9a39;
	--bg-green-deep: #2b7a0b;
	--bg-green-light: #e9f5e4;
	--bg-link: #41b81c;
	--bg-orange: #ffb347;
	--bg-text: #000;
	--bg-text-2: #444;
	--bg-muted: #777;
	--bg-line: #e3e3e3;
	--bg-header: #212226;
	--bg-dark: #3b3b3d;
	--bg-red: #d9534f;
	--bg-radius: 6px;
	--bg-radius-card: 8px;
	--bg-shadow: 0 2px 15px rgb(0 0 0 / 6%);
	--bg-container: 1280px;
	--bg-gutter: clamp(20px, 4vw, 40px);
	--bg-header-h: 88px;
	--bg-font: Outfit, system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* ---------- Basis ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; font: 400 16px/1.6 var(--bg-font); color: var(--bg-text); background: #fff; -webkit-font-smoothing: antialiased; }
img, svg, video { max-width: 100%; height: auto; display: block; }
a { color: var(--bg-green); text-decoration: none; }
a:hover { color: var(--bg-green-dark); }
h1, h2, h3, h4 { margin: 0 0 .6em; line-height: 1.2; font-weight: 700; color: var(--bg-text); }
h1 { font-size: 40px; }
h2 { font-size: 30px; }
h3 { font-size: 20px; }
p { margin: 0 0 1em; }
:focus-visible { outline: 2px solid var(--bg-green); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link:focus { clip: auto; width: auto; height: auto; margin: 0; z-index: 1400; top: 8px; left: 8px; padding: 10px 16px; background: #fff; color: #000; }
.bg-icon { width: 1.1em; height: 1.1em; flex: none; }
.bg-icon.is-left { transform: rotate(180deg); }
.bg-container { width: 100%; max-width: calc(var(--bg-container) + 2 * var(--bg-gutter)); margin-inline: auto; padding-inline: var(--bg-gutter); }
.bg-container--narrow { max-width: calc(900px + 2 * var(--bg-gutter)); }
[hidden] { display: none !important; }
.bg-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.bg-muted { color: var(--bg-muted); }
@media (max-width: 767px) { h1 { font-size: 30px; } h2 { font-size: 25px; } }

/* ---------- Knoppen (5px radius, groen) ---------- */
.bg-btn, .wp-block-button__link, .wp-element-button {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 10px 20px; border: 1px solid var(--bg-green); border-radius: 5px;
	font: 500 16px/1.2 var(--bg-font); text-decoration: none; cursor: pointer; white-space: nowrap;
	transition: background-color .2s, color .2s, border-color .2s;
}
.bg-btn--primary, .wp-block-button__link, .wp-element-button { background: var(--bg-green); color: #fff; }
.bg-btn--primary:hover, .wp-block-button__link:hover { background: #fff; color: var(--bg-green); }
.bg-btn--primary.is-active { background: #fff; color: var(--bg-green); }
.bg-btn--light { background: #fff; color: var(--bg-text); border-color: var(--bg-line); }
.bg-btn--light:hover { border-color: var(--bg-green); color: var(--bg-green); }
.bg-btn--grey { background: #f2f2f2; color: var(--bg-text); border-color: #f2f2f2; }
.bg-btn--grey:hover { background: #e6e6e6; color: var(--bg-text); }
.bg-btn--ghost { background: transparent; color: var(--bg-green); }
.bg-btn--ghost:hover { background: var(--bg-green); color: #fff; }
.bg-btn--outline-light { background: transparent; color: #fff; border-color: rgb(255 255 255 / 85%); font-weight: 400; }
.bg-btn--outline-light:hover { background: #fff; color: var(--bg-green); }
.bg-btn--sm { min-height: 38px; padding: 7px 16px; font-size: 15px; }
.bg-btn--block { width: 100%; }
.bg-btn .bg-icon { width: 16px; height: 16px; }

/* ---------- Header ---------- */
/* Gewone pagina's: header blijft bovenaan staan (sticky, volle breedte, geen verspringing). */
.bg-header { position: sticky; top: 0; left: 0; right: 0; width: 100%; z-index: 1100; background: var(--bg-header); color: #fff; }
.bg-header.is-scrolled { box-shadow: 0 2px 10px rgb(0 0 0 / 20%); }
/* Pagina's met grote foto: transparant over de foto, bij scrollen vast en donker (zoals live). */
.has-hero .bg-header { position: absolute; top: 0; background: transparent; transition: background-color .2s; }
.has-hero .bg-header.is-scrolled { position: fixed; top: 0; background: var(--bg-header); }
.admin-bar .bg-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .bg-header { top: 46px; } .admin-bar .bg-header.is-scrolled { top: 0; } }
.bg-header__inner { display: flex; align-items: center; gap: 20px; height: var(--bg-header-h); padding: 0 15px 0 18px; }
.bg-logo, .custom-logo-link { flex: none; display: block; }
.bg-logo img, .custom-logo { height: 32px; width: auto; }
.bg-nav { flex: 1; display: flex; justify-content: center; }
.bg-nav__list { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 2px; }
.bg-nav__item { position: relative; }
.bg-nav__toggle, .bg-nav__list > li > a {
	display: inline-flex; align-items: center; gap: 6px; height: var(--bg-header-h); padding: 0 10px;
	border: 0; background: none; color: #fff; font: 500 18px var(--bg-font); cursor: pointer; text-decoration: none;
}
.bg-nav__toggle:hover, .bg-nav__list > li > a:hover, .bg-nav__item.is-open > .bg-nav__toggle { color: #fff; opacity: .85; }
.bg-nav__caret { width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 5px solid currentColor; }
.bg-nav__panel {
	position: absolute; top: calc(var(--bg-header-h) - 14px); left: 0; z-index: 60; min-width: 250px; max-height: 75vh; overflow: auto;
	padding: 10px 0; background: #fff; border-radius: 5px; box-shadow: 0 5px 25px rgb(0 0 0 / 15%);
	opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .15s, transform .15s, visibility .15s;
}
.bg-nav__item.is-open .bg-nav__panel { opacity: 1; visibility: visible; transform: none; }
.bg-nav__sub, .bg-nav__sub ul { list-style: none; margin: 0; padding: 0; }
.bg-nav__sub a { display: block; padding: 7px 22px; color: #222; font-size: 15px; text-decoration: none; }
.bg-nav__sub a:hover { color: var(--bg-green); background: #f7f7f7; }
.bg-nav__sub ul a { padding-left: 38px; font-size: 14px; color: #555; }
.bg-nav__all { display: none; }
.bg-nav__mobile-actions { display: none; }
.bg-header__actions { display: flex; align-items: center; gap: 18px; margin-left: auto; }
.bg-header__login { display: inline-flex; align-items: center; gap: 8px; color: #b9b9bb; font-size: 15px; white-space: nowrap; }
.bg-header__login a, a.bg-header__login { color: #b9b9bb; }
.bg-header__login a:hover, a.bg-header__login:hover { color: #fff; }
.bg-header__login .bg-icon { color: #fff; width: 18px; height: 18px; }
.bg-header__search { display: grid; place-items: center; width: 28px; height: 28px; padding: 0; border: 0; border-radius: 4px; background: var(--bg-green); color: #fff; cursor: pointer; }
.bg-header__search .bg-icon { width: 15px; height: 15px; stroke-width: 2.6; }
.bg-header__add { display: inline-flex; align-items: center; height: 46px; padding: 0 20px; border-radius: 4px; background: var(--bg-green); color: #fff; font-size: 16px; font-weight: 500; }
.bg-header__add:hover { background: var(--bg-green-dark); color: #fff; }
.bg-header__burger { display: none; width: 40px; height: 40px; border: 0; background: none; color: #fff; cursor: pointer; }
.bg-burger, .bg-burger::before, .bg-burger::after { display: block; width: 24px; height: 2px; background: currentColor; position: relative; transition: transform .2s, opacity .2s; }
.bg-burger { margin: auto; }
.bg-burger::before, .bg-burger::after { content: ""; position: absolute; left: 0; }
.bg-burger::before { top: -7px; }
.bg-burger::after { top: 7px; }
.bg-burger span { display: none; }
[aria-expanded="true"] .bg-burger { background: transparent; }
[aria-expanded="true"] .bg-burger::before { transform: translateY(7px) rotate(45deg); }
[aria-expanded="true"] .bg-burger::after { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 1419px) {
	.bg-nav__toggle, .bg-nav__list > li > a { font-size: 16px; padding: 0 7px; }
	.bg-header__login span { display: none; }
}
@media (max-width: 1199px) {
	:root { --bg-header-h: 70px; }
	.bg-header__burger { display: grid; place-items: center; }
	.bg-header__login { display: none; }
	.bg-nav { position: fixed; inset: var(--bg-header-h) 0 0 0; z-index: 49; display: block; background: #fff; overflow-y: auto; padding: 10px 20px 60px; transform: translateX(100%); transition: transform .25s; visibility: hidden; }
	.bg-nav.is-open { transform: none; visibility: visible; }
	.bg-nav__list { flex-direction: column; align-items: stretch; }
	.bg-nav__toggle, .bg-nav__list > li > a { width: 100%; height: 52px; justify-content: space-between; color: #000; border-bottom: 1px solid #eee; font-size: 17px; }
	.bg-nav__panel { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border-radius: 0; padding: 0 0 10px; display: none; max-height: none; }
	.bg-nav__item.is-open .bg-nav__panel { display: block; }
	.bg-nav__all { display: block; }
	.bg-nav__mobile-actions { display: block; padding: 20px 10px; }
	body.bg-nav-open { overflow: hidden; }
}
@media (max-width: 480px) { .bg-header__add { height: 40px; padding: 0 14px; font-size: 15px; } .bg-header__actions { gap: 10px; } .bg-logo img { height: 26px; } }

/* Zoekvenster (vergrootglas in de header) */
.bg-search-overlay { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: start center; padding: 120px 20px 20px; background: rgb(0 0 0 / 60%); }
.bg-search-overlay[hidden] { display: none; }
.bg-search-overlay__box { position: relative; width: min(1100px, 100%); }
.bg-search-overlay__close { position: absolute; top: -48px; right: 0; width: 40px; height: 40px; border: 0; background: none; color: #fff; cursor: pointer; }
.bg-search-overlay__close .bg-icon { width: 28px; height: 28px; }

/* ---------- Pagina-opbouw ---------- */
.bg-main { min-height: 50vh; }
.bg-page--home { padding: 0; }
.bg-pagehead { padding: 70px var(--bg-gutter) 65px; text-align: center; }
.bg-pagehead__title { margin: 0 0 10px; color: var(--bg-green); font-size: 40px; }
.bg-pagehead__crumbs ol { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; margin: 0; padding: 0; font-size: 16px; }
.bg-pagehead__crumbs li + li::before { content: "/"; margin: 0 5px; }
.bg-pagehead__crumbs a { color: var(--bg-green); }
.bg-prose > :first-child, .bg-prose > .bg-band:first-child > :first-child { margin-top: 0; }
.bg-prose h2, .bg-prose h3 { margin-top: 1.4em; }
.bg-prose h2 { color: var(--bg-green); }
.bg-prose ul, .bg-prose ol { padding-left: 1.3em; }
.bg-prose img { border-radius: var(--bg-radius); }
.bg-page:not(.bg-page--wide) { padding-bottom: 60px; }

/* Blokinhoud op volle-breedte-pagina's: contentkolom van 1280px */
.bg-blocks { display: grid; grid-template-columns: [full-start] minmax(var(--bg-gutter), 1fr) [content-start] minmax(0, var(--bg-container)) [content-end] minmax(var(--bg-gutter), 1fr) [full-end]; }
.bg-blocks > * { grid-column: content; min-width: 0; }
.bg-blocks > .alignfull { grid-column: full; }
.bg-blocks > h2, .bg-blocks > .bg-band > h2 { color: var(--bg-green); margin-top: 40px; margin-bottom: 10px; }
.bg-blocks > h3, .bg-blocks > .bg-band > h3 { margin-top: 30px; }
.bg-blocks p a:not(.bg-btn) { color: var(--bg-green); }
.bg-page--wide .bg-blocks { padding-bottom: 80px; }
.bg-page--home .bg-blocks { padding-bottom: 20px; }

/* Sectietitels (groen, gecentreerd) */
.bg-section { padding: 50px 0 20px; }
.bg-section > h2, .bg-title { text-align: center; color: var(--bg-green); font-size: 40px; margin: 0 0 30px; }
@media (max-width: 767px) { .bg-section > h2, .bg-title { font-size: 28px; } }
.bg-section .wp-block-buttons { justify-content: flex-end; margin-top: 20px; }

/* ---------- Homepage-hero (diashow + zoekbalk) ---------- */
.bg-hero { position: relative; isolation: isolate; display: flex; align-items: center; min-height: 750px; padding: calc(var(--bg-header-h) + 40px) var(--bg-gutter) 80px; color: #fff; text-align: center; overflow: hidden; background: #3b4a2f; }
.bg-hero--medium { min-height: 520px; }
.bg-hero__slides { position: absolute; inset: 0; z-index: -2; }
.bg-hero__slide { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0; animation: bg-slide calc(var(--bg-slides) * 6s) infinite; animation-delay: calc(var(--i) * 6s); }
.bg-hero__slide:first-child { opacity: 1; }
.bg-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: rgb(0 0 0 / 30%); }
@keyframes bg-slide { 0% { opacity: 0; } 4% { opacity: 1; } 20% { opacity: 1; } 25% { opacity: 0; } 100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .bg-hero__slide { animation: none; } }
.bg-hero__content { width: 100%; max-width: 1280px; margin: 0 auto; }
.bg-hero__title { margin: 0 0 6px; color: #fff; font-size: 48px; font-weight: 700; }
.bg-hero__lead { margin: 0 0 30px; font-size: 17px; }
@media (max-width: 767px) { .bg-hero { min-height: 560px; padding-top: calc(var(--bg-header-h) + 30px); } .bg-hero__title { font-size: 30px; } }

/* Zoekbalk (wit vak met onderstreepte velden) */
.bg-searchform__form { display: grid; grid-template-columns: 1fr; gap: 14px; align-items: end; padding: 20px; background: #fff; border-radius: 6px; text-align: left; box-shadow: 0 2px 20px rgb(0 0 0 / 10%); }
@media (min-width: 900px) { .bg-searchform__form { grid-template-columns: repeat(3, 1fr) minmax(200px, 1fr); gap: 15px; padding: 25px 20px; } }
.bg-searchform__submit { height: 46px; }
.bg-uline { position: relative; display: flex; flex-direction: column; min-width: 0; border-bottom: 1px solid #d8d8d8; }
.bg-uline label { font-size: 15px; color: #222; margin-bottom: 2px; }
.bg-uline input, .bg-uline select { width: 100%; height: 34px; padding: 0 28px 0 0; border: 0; background: transparent; font: 400 14px var(--bg-font); color: #000; appearance: none; }
.bg-uline select { background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%23333'/%3E%3C/svg%3E") no-repeat right 4px center; }
.bg-uline--select select { font-weight: 600; }
.bg-uline input::placeholder { color: #222; opacity: 1; }
.bg-uline input:focus, .bg-uline select:focus { outline: none; }
.bg-uline:focus-within { border-bottom-color: var(--bg-green); }
.bg-searchform .bg-uline:not(.bg-uline--select) { padding-top: 22px; }
.bg-field__action { position: absolute; right: 0; bottom: 4px; width: 26px; height: 26px; display: grid; place-items: center; border: 0; padding: 0; background: none; color: var(--bg-green); cursor: pointer; }
.bg-field__action .bg-icon { width: 17px; height: 17px; }
.bg-suggest { position: absolute; top: 100%; left: 0; right: 0; z-index: 30; list-style: none; margin: 4px 0 0; padding: 5px; background: #fff; border: 1px solid var(--bg-line); border-radius: 5px; box-shadow: 0 6px 20px rgb(0 0 0 / 12%); }
.bg-suggest li { padding: 8px 10px; border-radius: 4px; cursor: pointer; font-size: 14px; color: #000; }
.bg-suggest li[aria-selected="true"], .bg-suggest li:hover { background: var(--bg-green-light); }

/* ---------- Kaarten (vermeldingen) ---------- */
.bg-grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 22px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); }
.bg-grid > li { display: flex; min-width: 0; }
.bg-card { position: relative; display: flex; flex-direction: column; width: 100%; background: #fff; border: 1px solid #d9d9d9; border-radius: var(--bg-radius-card); overflow: hidden; transition: box-shadow .2s; }
.bg-card:hover { box-shadow: 0 4px 18px rgb(0 0 0 / 10%); }
.bg-card__media { position: relative; display: block; height: 172px; background: #b5b5b5; overflow: hidden; }
.bg-card__media img { width: 100%; height: 100%; object-fit: cover; }
.bg-card__media::after { content: ""; position: absolute; inset: 0; background: rgb(36 36 41 / 15%); }
.bg-card__labels { position: absolute; top: 20px; left: 20px; z-index: 1; display: flex; gap: 6px; }
.bg-card__label { padding: 3px 7px; border: 1px solid rgb(255 255 255 / 55%); border-radius: 4px; background: rgb(0 0 0 / 15%); color: #fff; font-size: 13px; font-weight: 600; line-height: 1.4; }
.bg-card__body { flex: 1; padding: 16px 15px 18px; text-align: center; }
.bg-card__title { margin: 0 0 4px; font-size: 16px; font-weight: 700; line-height: 1.35; }
.bg-card__title a { color: #000; }
.bg-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.bg-card__title .bg-verified { display: inline-block; width: 18px; height: 18px; margin-left: 4px; vertical-align: -3px; }
.bg-card__sub { margin: 0; font-size: 14px; color: #222; }
.bg-section .bg-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr)); gap: 20px; }

/* Donker blok met golfranden */
.bg-darkwave { position: relative; margin: 60px 0 40px; padding: 110px var(--bg-gutter) 110px; background: var(--bg-dark); color: #fff; }
.bg-darkwave::before, .bg-darkwave::after { content: ""; position: absolute; left: 0; right: 0; height: 60px; background-repeat: no-repeat; background-size: 100% 100%; }
.bg-darkwave::before { top: -1px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 0h1440v26c-120-14-300-20-480-6-200 16-360 30-560 20C250 32 110 18 0 12z' fill='%23fff'/%3E%3C/svg%3E"); }
.bg-darkwave::after { bottom: -1px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0 60h1440V30c-150 0-330 0-470 6-190 8-300 22-520 14C280 44 120 26 0 32z' fill='%23fff'/%3E%3C/svg%3E"); }
.bg-darkwave .wp-block-columns { max-width: var(--bg-container); margin: 0 auto; gap: 60px; align-items: center; }
.bg-darkwave h2 { color: var(--bg-green); font-size: 40px; line-height: 1.1; max-width: 460px; }
.bg-darkwave p { font-size: 16px; line-height: 1.5; }
.bg-darkwave a { color: var(--bg-link) !important; }
.bg-darkwave img { border-radius: 8px; }

/* Provincietegels */
.bg-terms { list-style: none; margin: 0; padding: 0; }
.bg-terms--photo { display: grid; gap: 22px; grid-template-columns: repeat(4, 1fr); }
@media (max-width: 900px) { .bg-terms--photo { grid-template-columns: repeat(2, 1fr); gap: 12px; } }
.bg-ptile { position: relative; display: flex; align-items: flex-end; justify-content: center; height: 230px; padding: 20px; border-radius: 6px; background: #8a9a7a center / cover no-repeat; overflow: hidden; }
.bg-ptile::before { content: ""; position: absolute; inset: 0; background: rgb(0 0 0 / 5%); transition: background .2s; }
.bg-ptile:hover::before { background: rgb(0 0 0 / 20%); }
.bg-ptile__btn { position: relative; padding: 6px 14px; border-radius: 4px; background: var(--bg-green); color: #fff; font-size: 15px; }
@media (max-width: 600px) { .bg-ptile { height: 150px; } }
.bg-terms--tiles, .bg-terms--groups { display: grid; gap: 15px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); }
.bg-terms__item { display: flex; align-items: center; gap: 12px; padding: 18px; background: #fff; border: 1px solid #d9d9d9; border-radius: 8px; color: #000; font-weight: 600; }
.bg-terms__item:hover { border-color: var(--bg-green); color: var(--bg-green); }
.bg-terms__icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--bg-green-light); color: var(--bg-green); flex: none; }
.bg-terms__count { margin-left: auto; font-weight: 400; color: var(--bg-muted); font-size: 14px; }
.bg-terms--groups .bg-terms__item { flex-direction: column; align-items: flex-start; }
.bg-terms__desc { font-weight: 400; font-size: 14px; color: var(--bg-muted); }
.bg-terms--chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bg-terms--chips .bg-terms__item { padding: 6px 14px; border-radius: 4px; font-weight: 400; }
.bg-terms--chips .bg-terms__item.is-active { background: var(--bg-green); border-color: var(--bg-green); color: #fff; }

/* Nieuws */
.bg-news__grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 22px; grid-template-columns: repeat(4, 1fr); }
@media (max-width: 1000px) { .bg-news__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .bg-news__grid { grid-template-columns: 1fr; } }
.bg-news__card { position: relative; height: 100%; background: #fff; border: 1px solid #d9d9d9; border-radius: 8px; overflow: hidden; }
.bg-news__media { position: relative; display: block; height: 175px; background: #ddd; }
.bg-news__media img { width: 100%; height: 100%; object-fit: cover; }
.bg-news__cat { position: absolute; top: 15px; right: 15px; padding: 3px 8px; border-radius: 4px; background: var(--bg-green); color: #fff; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .3px; }
.bg-news__title { margin: 0; padding: 18px 20px 22px; font-size: 17px; line-height: 1.3; }
.bg-news__title a { color: #000; }
.bg-news__title a::after { content: ""; position: absolute; inset: 0; }
.bg-news__more { display: flex; justify-content: flex-end; margin: 20px 0 0; }

/* Partners */
.bg-partners { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 30px 50px; }
.bg-partners figure { margin: 0; }
.bg-partners img { max-height: 90px; width: auto; object-fit: contain; }

/* ---------- Zoek-/landingspagina's ---------- */
.bg-tabs { border-top: 1px solid #f0f0f0; box-shadow: 0 2px 4px rgb(0 0 0 / 4%); background: #fff; }
.bg-tabs ul { list-style: none; display: flex; justify-content: center; margin: 0; padding: 0; }
.bg-tabs a { display: block; min-width: 146px; padding: 20px 20px 18px; border-bottom: 2px solid transparent; color: #222; text-align: center; font-size: 14px; font-weight: 600; }
.bg-tabs a[aria-current="page"] { border-bottom-color: var(--bg-green); }
.bg-tabs a:hover { color: var(--bg-green); }
@media (max-width: 560px) { .bg-tabs a { min-width: 0; padding: 16px 14px; } }
.bg-blocks > .bg-explore { grid-column: full; }
.bg-explore__layout { display: grid; gap: 22px; max-width: 1180px; margin: 40px auto 0; padding: 0 15px; }
@media (min-width: 1200px) { .bg-explore__layout { grid-template-columns: 303px minmax(0, 1fr); align-items: start; } .bg-explore__layout.is-full { grid-template-columns: 1fr; } }
.bg-explore__sidebar { background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-filters-toggle > summary { list-style: none; display: none; }
.bg-filters-toggle > summary::-webkit-details-marker { display: none; }
@media (max-width: 1199px) { .bg-filters-toggle > summary { display: flex; } .bg-explore__sidebar { box-shadow: none; } .bg-filters-toggle[open] .bg-filters { box-shadow: var(--bg-shadow); border-radius: 6px; margin-top: 10px; } }
.bg-filters { display: grid; gap: 20px; padding: 28px 30px 30px; }
.bg-filters__label { margin: 0 0 6px; font-size: 15px; color: #222; }
.bg-filters__label--strong, legend.bg-filters__label--strong { font-weight: 600; font-size: 16px; color: #000; }
.bg-filters__group { margin: 0; padding: 0; border: 0; min-width: 0; }
.bg-filters__group legend { padding: 0; margin-bottom: 8px; }
.bg-filters__reset { display: inline-flex; align-items: center; justify-content: center; gap: 6px; margin-top: -10px; font-size: 14px; color: #666; }
.bg-filters__reset .bg-icon { width: 14px; height: 14px; }
.bg-checklist { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.bg-check { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; cursor: pointer; line-height: 1.35; color: #000; }
.bg-check input { width: 18px; height: 18px; margin: 0; flex: none; accent-color: var(--bg-green); }
.bg-more-opts > summary { list-style: none; margin-top: 8px; color: #222; font-size: 15px; cursor: pointer; }
.bg-more-opts > summary::-webkit-details-marker { display: none; }
.bg-more-opts[open] > summary { display: none; }
.bg-more-opts .bg-checklist { margin-top: 6px; }
.bg-segmented { display: grid; grid-template-columns: repeat(auto-fit, minmax(60px, 1fr)); border: 1px solid #ddd; border-radius: 4px; overflow: hidden; }
.bg-segmented label { position: relative; cursor: pointer; }
.bg-segmented input { position: absolute; opacity: 0; }
.bg-segmented span { display: block; padding: 7px 6px; text-align: center; font-size: 14px; color: #555; }
.bg-segmented input:checked + span { background: var(--bg-green); color: #fff; font-weight: 600; }
.bg-segmented input:focus-visible + span { outline: 2px solid var(--bg-green); outline-offset: -2px; }
.bg-uline--compact label { font-size: 13px; color: #666; }

.bg-results__head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 2px 0 18px; }
.bg-results__count { margin: 0; text-align: center; font-size: 14px; color: #000; }
.bg-results__count strong { font-weight: 600; }
.bg-results__where { display: block; font-size: 13px; color: var(--bg-muted); }
.bg-results__arrow { display: grid; place-items: center; width: 30px; height: 30px; color: #000; }
.bg-results__arrow.is-disabled { color: #bbb; }
.bg-explore .bg-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
@media (max-width: 1100px) { .bg-explore .bg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 991px) { .bg-explore .bg-grid { grid-template-columns: 1fr; } }
.bg-explore.is-loading .bg-explore__results { opacity: .5; transition: opacity .15s; }
.bg-empty { padding: 50px 20px; text-align: center; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-explore__map { margin-bottom: 22px; }
.bg-map { position: relative; height: 480px; border-radius: 6px; overflow: hidden; background: #e8efe4; }
.bg-map__activate { position: absolute; inset: 0; margin: auto; width: max-content; height: 44px; z-index: 1; }

/* Paginering (ronde nummers) */
.bg-pagination ul, .nav-links { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; margin: 30px 0 10px; padding: 0; }
.bg-pagination a, .bg-pagination span, .nav-links .page-numbers { display: grid; place-items: center; min-width: 32px; height: 32px; padding: 0 4px; border-radius: 50%; color: #333; font-size: 13px; }
.bg-pagination a:hover, .nav-links a:hover { color: var(--bg-green); }
.bg-pagination .is-current, .nav-links .current { background: var(--bg-green); color: #fff; }
.bg-pagination__gap { min-width: 16px !important; }

/* ---------- Detailpagina ---------- */
.bg-cover { position: relative; height: 490px; background: #555; overflow: hidden; }
.bg-cover__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.bg-cover::after { content: ""; position: absolute; inset: 0; background: rgb(36 36 41 / 35%); }
.bg-cover__bar { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 0 20px 20px; }
.bg-cover__name { display: flex; align-items: center; gap: 8px; margin: 0; color: #fff; font-size: 20px; font-weight: 700; }
.bg-cover__name .bg-verified { width: 20px; height: 20px; }
.bg-cover__actions { display: flex; gap: 10px; }
@media (max-width: 767px) { .bg-cover { height: 330px; } }

.bg-single__cols { display: grid; gap: 20px; max-width: 1150px; margin: 40px auto 0; padding: 0 15px; }
@media (min-width: 900px) { .bg-single__cols { grid-template-columns: 1fr 1fr; align-items: start; } }
.bg-single__col { display: grid; gap: 20px; min-width: 0; }
.bg-box { padding: 20px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-box__label { margin: 0 0 14px; font-size: 15px; font-weight: 600; }
.bg-box__name { margin: 0; font-size: 22px; font-weight: 600; }
.bg-box__crumbs { margin: 2px 0 10px; font-size: 12px; color: #888; }
.bg-box__crumbs a { color: #222; text-decoration: underline; }
.bg-box__details { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 6px; }
.bg-box__details li { display: flex; align-items: center; gap: 14px; font-size: 15px; }
.bg-box__details .bg-icon { color: var(--bg-green); width: 18px; margin-left: 14px; }
.bg-box__details a { color: #000; }
.bg-box__text { font-size: 15px; }
.bg-box__text h2, .bg-box__text h3 { font-size: 24px; color: #000; margin: 10px 0 12px; }
.bg-box__small { font-size: 14px; color: #222; }
.bg-box__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 14px; font-size: 13px; }
.bg-rows { margin: 0 0 12px; }
.bg-rows > div { display: flex; justify-content: space-between; gap: 20px; padding: 10px 0; border-bottom: 1px solid #eee; font-size: 14px; }
.bg-rows > div:last-child { border-bottom: 0; }
.bg-rows dt { color: #222; }
.bg-rows dd { margin: 0; text-align: right; }
.bg-rows dd a { color: #000; }
.bg-rows dd a:hover { color: var(--bg-green); }
.bg-minimap { position: relative; height: 230px; border-radius: 4px; overflow: hidden; background: #e8efe4; }
.bg-minimap__btn { position: absolute; inset: 0; margin: auto; width: max-content; height: 38px; padding: 0 16px; border: 1px solid #ddd; border-radius: 5px; background: #fff; font: 500 14px var(--bg-font); cursor: pointer; }

.bg-slider { position: relative; }
.bg-slider__track { list-style: none; display: flex; margin: 0; padding: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; border-radius: 6px; }
.bg-slider__track::-webkit-scrollbar { display: none; }
.bg-slider__slide { flex: 0 0 100%; scroll-snap-align: start; }
.bg-slider__slide img { width: 100%; height: 330px; object-fit: cover; }
.bg-slider__nav { display: flex; justify-content: center; gap: 10px; margin-top: -18px; position: relative; }
.bg-slider__nav button { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid #ddd; border-radius: 50%; background: #fff; cursor: pointer; box-shadow: 0 1px 4px rgb(0 0 0 / 10%); }
.bg-slider__nav .bg-icon { width: 15px; height: 15px; }

.bg-box--hours { padding: 0; }
.bg-hours > summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 22px 20px; list-style: none; cursor: pointer; }
.bg-hours > summary::-webkit-details-marker { display: none; }
.bg-hours__state { font-weight: 600; font-size: 15px; }
.bg-hours__state.is-open, .bg-hours__state.is-closing { color: var(--bg-green); }
.bg-hours__state.is-closed { color: var(--bg-red); }
.bg-hours__state.is-appointment { color: #c78a00; }
.bg-hours__today { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; }
.bg-hours__chev { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #f0f0f0; }
.bg-hours__chev .bg-icon { width: 12px; height: 12px; transform: rotate(90deg); transition: transform .2s; }
.bg-hours[open] .bg-hours__chev .bg-icon { transform: rotate(-90deg); }
.bg-hours__table { width: calc(100% - 40px); margin: 0 20px 18px; border-collapse: collapse; font-size: 14px; }
.bg-hours__table th, .bg-hours__table td { padding: 8px 0; border-top: 1px solid #eee; font-weight: 400; text-align: left; }
.bg-hours__table td { text-align: right; }
.bg-hours__table .is-today th, .bg-hours__table .is-today td { font-weight: 600; }
.bg-hours .bg-box__small { padding: 0 20px 16px; margin: 0; }

.bg-iconlist { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bg-iconlist a { display: flex; align-items: center; gap: 10px; color: #000; font-size: 14px; }
.bg-iconlist a:hover { color: var(--bg-green); }
.bg-iconlist__icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--bg-green); flex: none; overflow: hidden; }
.bg-iconlist__icon img { width: 22px; height: 22px; object-fit: contain; }
.bg-iconlist--social .bg-iconlist__icon { color: #fff; }
.bg-iconlist__icon.is-facebook { background: #3b5998; }
.bg-iconlist__icon.is-instagram { background: #c13584; }
.bg-iconlist__icon .bg-icon { width: 18px; height: 18px; }
@media (max-width: 480px) { .bg-iconlist { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.bg-related { max-width: 1150px; margin: 60px auto 80px; padding: 0 15px; }
.bg-related__title { text-align: center; font-size: 26px; font-weight: 600; margin-bottom: 30px; }
.bg-related .bg-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 800px) { .bg-related .bg-grid { grid-template-columns: 1fr; } }

/* Lightbox */
.bg-lightbox { position: fixed; inset: 0; z-index: 1300; display: grid; place-items: center; background: rgb(0 0 0 / 90%); padding: 20px; }
.bg-lightbox img { max-height: 88vh; width: auto; }
.bg-lightbox button { position: absolute; width: 46px; height: 46px; border: 0; border-radius: 50%; background: rgb(255 255 255 / 15%); color: #fff; font-size: 26px; cursor: pointer; }
.bg-lightbox__close { top: 16px; right: 16px; }
.bg-lightbox__prev { left: 16px; top: 50%; }
.bg-lightbox__next { right: 16px; top: 50%; }

/* ---------- Formulieren ---------- */
.bg-form { display: grid; gap: 16px; }
.bg-form--compact { gap: 12px; }
.bg-form-grid { display: grid; gap: 12px; }
@media (min-width: 600px) { .bg-form-grid { grid-template-columns: 1fr 1fr; } }
.bg-form-row { display: grid; gap: 5px; }
.bg-form-row--inline { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; }
.bg-label { font-size: 15px; font-weight: 500; }
.bg-required { color: var(--bg-red); }
.bg-form input[type=text], .bg-form input[type=email], .bg-form input[type=password], .bg-form input[type=url], .bg-form input[type=tel], .bg-form input[type=number], .bg-form input[type=date], .bg-form input[type=datetime-local], .bg-form input[type=time], .bg-form input[type=search], .bg-form select, .bg-form textarea {
	width: 100%; min-height: 44px; padding: 9px 12px; border: 1px solid #ddd; border-radius: 5px; background: #fff; font: 400 15px var(--bg-font); color: #000;
}
.bg-form textarea { min-height: 110px; resize: vertical; }
.bg-form input:focus, .bg-form select:focus, .bg-form textarea:focus { outline: none; border-color: var(--bg-green); }
.bg-form-row.has-error input, .bg-form-row.has-error textarea, .bg-form-row.has-error select { border-color: var(--bg-red); }
.bg-help { margin: 0; font-size: 13px; color: var(--bg-muted); }
.bg-error { margin: 0; font-size: 13px; color: var(--bg-red); }
.bg-notice { padding: 12px 16px; margin-bottom: 16px; border-radius: 5px; border: 1px solid; font-size: 15px; }
.bg-notice ul { margin: 6px 0 0; padding-left: 18px; }
.bg-notice--success { background: #eef8ea; border-color: #cfe9c4; color: #2b7a0b; }
.bg-notice--error { background: #fdf1f0; border-color: #f2c9c6; color: #b8322d; }
.bg-notice--warning { background: #fff7e6; border-color: #ffe0a6; color: #8a5a00; }
.bg-formblock--compact .bg-form { gap: 8px; }
.bg-formblock--compact .bg-form input { min-height: 40px; border: 0; border-radius: 3px; }

.bg-submit { max-width: 900px; margin: 0 auto; }
.bg-submit__head h2 { margin-bottom: 4px; }
.bg-eyebrow { margin: 0; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: .5px; color: var(--bg-green); }
.bg-formsection { display: grid; gap: 16px; padding: 25px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-formsection > h2 { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 20px; }
.bg-step { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--bg-green); color: #fff; font-size: 14px; }
.bg-formgrid { display: grid; gap: 16px; }
@media (min-width: 680px) { .bg-formgrid--2 { grid-template-columns: 1fr 1fr; } .bg-formgrid--3 { grid-template-columns: 2fr 1fr 1.4fr; } }
.bg-form-actions { position: sticky; bottom: 0; z-index: 5; display: flex; justify-content: flex-end; gap: 10px; padding: 12px 0; background: linear-gradient(transparent, #fff 35%); }
.bg-termpicker { display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.bg-termpicker fieldset { margin: 0; padding: 12px 16px; border: 1px solid #e5e5e5; border-radius: 5px; }
.bg-termpicker legend { padding: 0 4px; font-weight: 600; }
.bg-checklist--nested { padding-left: 0; margin-top: 6px; }
.bg-radio-card { display: flex; gap: 10px; align-items: flex-start; padding: 12px 16px; border: 1px solid #ddd; border-radius: 5px; cursor: pointer; }
.bg-radio-card:has(input:checked) { border-color: var(--bg-green); background: #f4faf1; }
.bg-radio-card input { margin-top: 4px; accent-color: var(--bg-green); }
.bg-radio-card span { display: grid; gap: 2px; }
.bg-radio-card small { color: var(--bg-muted); font-size: 14px; }
.bg-role-choice, .bg-plan-choice { display: grid; gap: 8px; margin: 0; padding: 0; border: 0; }
@media (min-width: 600px) { .bg-plan-choice { grid-template-columns: 1fr 1fr; } }
.bg-hours-editor { margin: 0; padding: 0; border: 0; }
.bg-hours-editor__table { width: 100%; border-collapse: collapse; }
.bg-hours-editor__table th { width: 110px; padding: 6px 10px 6px 0; text-align: left; font-weight: 400; }
.bg-hours-editor__table td { padding: 6px 8px 6px 0; }
.bg-hours-editor__table select { min-height: 38px !important; }
.bg-hours-editor__slots { display: flex; flex-wrap: wrap; gap: 8px; }
.bg-hours-editor__slot { display: inline-flex; align-items: center; gap: 4px; }
.bg-hours-editor__slot input { width: 110px !important; min-height: 38px !important; }
.bg-hours-editor__presets { margin-bottom: 8px; }
[data-mode]:not([data-mode="hours"]) .bg-hours-editor__slots > * { display: none; }
@media (max-width: 600px) { .bg-hours-editor__table tr { display: grid; grid-template-columns: 100px 1fr; padding: 4px 0; border-bottom: 1px solid #eee; } .bg-hours-editor__table td.bg-hours-editor__slots { grid-column: 1 / -1; } }
.bg-media__list { list-style: none; margin: 0 0 8px; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.bg-media__list li { position: relative; }
.bg-media__list img { width: 90px; height: 90px; object-fit: cover; border-radius: 5px; }
.bg-media__remove { position: absolute; top: -6px; right: -6px; width: 24px; height: 24px; border: 0; border-radius: 50%; background: var(--bg-red); color: #fff; cursor: pointer; }
.bg-upload { display: flex; flex-direction: column; gap: 4px; padding: 14px; border: 1px dashed #c8c8c8; border-radius: 5px; background: #fafafa; font-size: 14px; cursor: pointer; }
.bg-upload__previews { display: flex; flex-wrap: wrap; gap: 6px; }
.bg-upload__previews img { width: 70px; height: 70px; object-fit: cover; border-radius: 4px; }

/* Inloggen / registreren */
.bg-auth { max-width: 520px; margin: 0 auto; padding: 30px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-auth__tabs { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 24px; border-bottom: 1px solid #eee; }
.bg-auth__tabs button { padding: 12px; border: 0; border-bottom: 2px solid transparent; background: none; font: 600 15px var(--bg-font); cursor: pointer; }
.bg-auth__tabs button[aria-selected="true"] { border-bottom-color: var(--bg-green); color: var(--bg-green); }
.bg-types { display: grid; gap: 20px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.bg-type-card { display: grid; gap: 8px; padding: 25px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); color: #000; text-align: center; justify-items: center; border: 1px solid transparent; }
.bg-type-card:hover { border-color: var(--bg-green); color: #000; }
.bg-type-card .bg-icon { width: 34px; height: 34px; color: var(--bg-green); }
.bg-type-card strong { font-size: 18px; }
.bg-type-card span { color: var(--bg-muted); font-size: 14px; }
.bg-list-check { list-style: none; padding: 0; display: grid; gap: 4px; }
.bg-list-check li { display: flex; gap: 8px; align-items: center; }
.bg-list-check .bg-icon { color: var(--bg-green); }
.bg-panel { padding: 25px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }

/* Dashboard */
.bg-dash { display: grid; gap: 20px; }
@media (min-width: 900px) { .bg-dash { grid-template-columns: 240px minmax(0, 1fr); align-items: start; } }
.bg-dash__nav { padding: 8px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-dash__nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.bg-dash__nav a { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 5px; color: #000; }
.bg-dash__nav a:hover { background: #f5f5f5; }
.bg-dash__nav a[aria-current="page"] { background: #eef8ea; color: var(--bg-green-deep); }
.bg-dash__nav .bg-icon { color: var(--bg-green); }
@media (max-width: 899px) { .bg-dash__nav ul { display: flex; overflow-x: auto; } .bg-dash__nav a { white-space: nowrap; } }
.bg-dash__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 16px; }
.bg-dash__head h2 { margin: 0; font-size: 24px; }
.bg-kpis { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); margin-bottom: 16px; }
.bg-kpi { padding: 16px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-kpi strong { display: block; font-size: 28px; line-height: 1.1; }
.bg-kpi span { color: var(--bg-muted); font-size: 14px; }
.bg-mylist { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.bg-mylist__item { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 14px; align-items: center; padding: 12px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
@media (min-width: 700px) { .bg-mylist__item { grid-template-columns: 70px minmax(0, 1fr) auto; } }
.bg-mylist__thumb { width: 70px; height: 70px; object-fit: cover; border-radius: 5px; background: #eee; display: grid; place-items: center; color: #999; }
.bg-mylist__title { margin: 0; font-weight: 600; }
.bg-mylist__title a { color: #000; }
.bg-mylist__meta { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; font-size: 13px; color: var(--bg-muted); }
.bg-mylist__actions { display: flex; flex-wrap: wrap; gap: 6px; grid-column: 1 / -1; }
@media (min-width: 700px) { .bg-mylist__actions { grid-column: auto; } }
.bg-pill { display: inline-block; padding: 1px 8px; border-radius: 4px; font-size: 12px; font-weight: 600; background: #eee; color: #555; }
.bg-pill--publish { background: #eef8ea; color: var(--bg-green-deep); }
.bg-pill--pending { background: #fff4dc; color: #8a5a00; }
.bg-pill--expired { background: #fdf1f0; color: #b8322d; }
.bg-chart { display: flex; align-items: flex-end; gap: 3px; height: 140px; padding: 12px; background: #fff; border-radius: 6px; box-shadow: var(--bg-shadow); }
.bg-chart span { flex: 1; min-height: 2px; background: var(--bg-green); border-radius: 2px 2px 0 0; }
.bg-inline-form { display: inline; }

/* Kennisbank / overzicht */
.bg-kb-tools { display: grid; gap: 16px; margin-bottom: 30px; }
.bg-kb-search { display: flex; gap: 10px; max-width: 640px; }
.bg-kb-search .bg-field { flex: 1; position: relative; display: flex; align-items: center; }
.bg-kb-search .bg-field input { width: 100%; height: 44px; padding: 0 12px 0 38px; border: 1px solid #ddd; border-radius: 5px; font: 400 15px var(--bg-font); }
.bg-kb-search .bg-field > .bg-icon { position: absolute; left: 12px; color: #888; }
.bg-card--post .bg-card__body { text-align: left; }
.bg-card__eyebrow { font-size: 12px; font-weight: 600; text-transform: uppercase; color: var(--bg-green); }
.bg-card__tagline { margin: 4px 0 0; font-size: 14px; color: var(--bg-text-2); }
.bg-card__placeholder { display: grid; place-items: center; height: 100%; color: #fff; }
.bg-article__image img { width: 100%; border-radius: 6px; margin-bottom: 24px; }
.bg-breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 10px; padding: 0; font-size: 14px; }
.bg-breadcrumbs li + li::before { content: "/"; margin-right: 4px; }

/* ---------- Footer (gras + groen) ---------- */
.bg-footer { position: relative; margin-top: 80px; background: var(--bg-green); color: #fff; }
.bg-footer__grass { position: absolute; left: 0; right: 0; top: -38px; height: 40px; background: url(../img/live/gras.png) repeat-x left bottom / auto 40px; }
.bg-footer__inner { display: grid; gap: 40px 60px; max-width: calc(var(--bg-container) + 2 * var(--bg-gutter)); margin: 0 auto; padding: 80px var(--bg-gutter); }
@media (min-width: 900px) { .bg-footer__inner { grid-template-columns: repeat(4, 1fr); } }
.bg-footer__title { margin: 0 0 8px; color: #fff; font-size: 20px; font-weight: 700; }
.bg-footer p { margin: 0; max-width: 220px; font-size: 16px; line-height: 1.45; }
.bg-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.bg-footer a { color: #fff; font-size: 16px; }
.bg-footer a:hover { color: #fff; text-decoration: underline; }
.bg-footer__social { display: flex !important; gap: 20px !important; margin-top: 30px !important; padding-left: 12px !important; }
.bg-footer__social .bg-icon { width: 24px; height: 24px; stroke-width: 2.2; }
.bg-footer .bg-notice { background: #fff; }

/* Leaflet */
.bg-marker { width: 26px !important; height: 26px !important; margin: -26px 0 0 -13px !important; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); background: var(--bg-green); border: 2px solid #fff; box-shadow: 0 2px 6px rgb(0 0 0 / 30%); }
.bg-marker.is-featured { background: var(--bg-orange); }
.bg-cluster { display: grid; place-items: center; border-radius: 50%; background: rgb(96 179 71 / 90%); color: #fff; font-weight: 700; border: 3px solid rgb(255 255 255 / 80%); }
.bg-popup { display: grid; gap: 4px; min-width: 200px; font-family: var(--bg-font); text-align: center; }
.bg-popup img { width: 100%; height: 110px; object-fit: cover; border-radius: 5px; }
.bg-popup a { font-weight: 700; color: #000; font-size: 15px; }
.bg-popup small { color: #444; }
.leaflet-container { font-family: var(--bg-font) !important; }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: .01ms !important; scroll-behavior: auto !important; } }
.bg-field__hint { margin: 4px 0 0; font-size: 12px; line-height: 1.3; color: #8a5a00; }

/* Leaflet gebruikt intern z-index 400–1000: kaarten in een eigen stapelcontext opsluiten,
   zodat ze nooit over de (vaste) header of het menu heen schuiven. */
.bg-minimap, .bg-map, .leaflet-container { position: relative; z-index: 0; isolation: isolate; }

/* Voeg toe – introductie en typekeuze (zoals live /voeg-toe/). */
.bg-page--add .bg-prose { max-width: none; }
.bg-addintro h2 { margin: 30px 0 12px; color: var(--bg-green); font-size: 30px; line-height: 1.2; }
.bg-addintro > h2:first-child { margin-top: 0; }
.bg-addintro p { margin: 0 0 14px; }
.bg-addtypes { display: grid; gap: 30px 44px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); margin: 30px 0 10px; }
.bg-addtype h3 { margin: 0 0 12px; color: var(--bg-green); font-size: 22px; }
.bg-addtype p { margin-bottom: 20px; }
.bg-addtype .bg-btn { padding: 11px 25px; font-weight: 400; }

/* Pakketkeuze (zoals live: twee kaarten Basis / Premium). */
.bg-packages { padding: 10px 0 40px; }
.bg-packages__title { margin: 0 0 50px; text-align: center; color: #222; font-size: 26px; }
.bg-packages__grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 370px)); justify-content: center; align-items: start; }
.bg-package { position: relative; overflow: hidden; display: flex; flex-direction: column; padding: 25px 20px 25px 25px; background: #fff; border-radius: 3px; box-shadow: 0 2px 12px rgb(0 0 0 / 8%); }
.bg-package__name { margin: 8px 5px 30px; font-size: 25px; letter-spacing: 2px; text-transform: uppercase; color: #222; }
.bg-package--premium .bg-package__name { color: var(--bg-green); }
.bg-package__ribbon { position: absolute; top: 0; left: 0; width: 40px; height: 40px; background: linear-gradient(135deg, var(--bg-green) 50%, transparent 50%); color: #fff; }
.bg-package__ribbon .bg-icon { position: absolute; top: 5px; left: 5px; width: 13px; height: 13px; fill: currentColor; }
.bg-package__price { display: flex; align-items: flex-start; gap: 6px; margin: 0; color: var(--bg-green); line-height: 1; }
.bg-package__price del { align-self: center; margin-right: 12px; color: #444; font-size: 24px; }
.bg-package__price sup { top: 0; font-size: 24px; line-height: 1; }
.bg-package__price strong { font-size: 46px; font-weight: 400; }
.bg-package__sub { margin: 12px 0 18px; font-weight: 600; }
.bg-package__features { list-style: none; margin: 0 0 25px; padding: 0; color: #555; font-size: 14px; line-height: 1.45; }
.bg-package__features li { margin-bottom: 13px; }
.bg-package__features strong { color: #222; font-weight: 600; }
.bg-package__buy { display: flex; align-items: center; gap: 10px; justify-content: flex-start; width: 100%; margin-top: auto; padding: 14px 40px; font-size: 13px; font-weight: 600; }
.bg-package__buy .bg-icon { width: 16px; height: 16px; }
.bg-plan-summary { margin: 0 0 20px; padding: 14px 18px; background: var(--bg-green-light); border-radius: 5px; }
.bg-plan-summary a { margin-left: 6px; text-decoration: underline; }
.bg-prose .bg-packages__title { color: #222; margin-top: 0; }
.bg-prose .bg-package__features { padding-left: 0; }
.bg-prose .bg-package__name { margin: 15px 5px 28px; }
.bg-package { padding-top: 15px; }
.bg-addintro p { line-height: 1.45; }
.bg-addtype p { line-height: 1.45; }
.bg-packages { padding-top: 60px; }
.bg-table-wrap { overflow-x: auto; }
.bg-table { width: 100%; border-collapse: collapse; font-size: 15px; }
.bg-table th, .bg-table td { padding: 10px 12px; border-bottom: 1px solid var(--bg-line); text-align: left; vertical-align: middle; }
.bg-table th { font-weight: 600; color: var(--bg-text-2); }
/* Header: menu-items en knoppen nooit over twee regels (ook ingelogd met "Mijn account"). */
.bg-nav__toggle, .bg-nav__list > li > a, .bg-header__actions .bg-btn { white-space: nowrap; }
/* WooCommerce afrekenen in Boerengids-stijl. */
.woocommerce #place_order, .woocommerce button.button.alt, .woocommerce a.button.alt { background: var(--bg-green); color: #fff; border-radius: 5px; font-weight: 600; }
.woocommerce #place_order:hover, .woocommerce button.button.alt:hover { background: var(--bg-green-dark); color: #fff; }
.woocommerce-checkout #payment, .woocommerce #payment { background: #f7f7f7; }
.woocommerce #payment div.payment_box { background: #ececec; }
.woocommerce #payment div.payment_box::before { border-bottom-color: #ececec; }

/* Zoekfilters: zoekknop + reset als sticky balk onderaan (zoals live). */
.bg-filters__actions { position: sticky; bottom: 0; z-index: 5; margin: 10px -30px -30px; padding: 15px 30px 12px; background: #fff; box-shadow: 0 -8px 12px -8px rgb(0 0 0 / 10%); }
.bg-filters__actions .bg-filters__reset { margin-top: 6px; }
.bg-filters__heading { margin-top: 10px; }
.bg-filters__actions { display: grid; }

/* Inloggen/registreren zoals live: smal blok, titel-tabs, onderlijnvelden. */
.bg-page--auth { display: flex; align-items: center; min-height: calc(100vh - var(--bg-header-h)); padding: 60px 0 120px; }
.bg-page--auth > .bg-container { width: 100%; }
.bg-auth { max-width: 350px; padding: 0; background: none; box-shadow: none; border-radius: 0; }
.bg-auth__tabs { display: flex; gap: 12px; margin-bottom: 14px; border: 0; }
.bg-auth__tabs button { padding: 0; border: 0; color: #c8c8c8; font: 700 30px/1.2 var(--bg-font); }
.bg-auth__tabs button[aria-selected="true"] { color: #222; border: 0; }
.bg-auth .bg-form { gap: 18px; }
.bg-auth .bg-label { margin-bottom: 0; font-size: 14px; font-weight: 400; color: #222; }
.bg-auth input[type="text"], .bg-auth input[type="email"], .bg-auth input[type="password"] { height: 44px; padding: 0; border: 0; border-bottom: 1px solid #ccc; border-radius: 0; background: transparent; box-shadow: none; }
.bg-auth input[type="text"]:focus, .bg-auth input[type="email"]:focus, .bg-auth input[type="password"]:focus { border-bottom-color: var(--bg-green); outline: none; }
.bg-auth .bg-btn--block { height: 48px; gap: 8px; font-weight: 400; }
.bg-auth .bg-btn--block .bg-icon { width: 15px; height: 15px; }
.bg-auth__forgot { display: inline-flex; align-items: center; gap: 14px; margin-top: 30px; color: #222; font-size: 16px; }
.bg-auth__forgot .bg-icon { width: 18px; height: 18px; color: #bbb; }

/* Header mobiel/tablet zoals live (< 1200px): hamburger links, logo, rechts account + zoeken (wit, zonder vlak). */
.bg-header__account { display: none; color: #fff; }
@media (max-width: 1199px) {
	:root { --bg-header-h: 80px; }
	.bg-header__inner { gap: 14px; padding: 0 20px; }
	.bg-header__burger { width: 32px; height: 40px; margin-left: -4px; }
	.bg-header__add { display: none; }
	.bg-header__account { display: grid; place-items: center; width: 32px; height: 40px; }
	.bg-header__account .bg-icon { width: 24px; height: 24px; fill: currentColor; stroke: none; }
	.bg-header__search { width: 32px; height: 40px; background: none; }
	.bg-header__search .bg-icon { width: 24px; height: 24px; stroke-width: 2.6; }
	.bg-header__actions { gap: 12px; }
	.bg-logo img, .custom-logo { height: 38px; }
	.bg-hero { min-height: 715px; }
	.bg-hero__title { font-size: 36px; }
	.bg-hero__lead { font-size: 15px; }
}
@media (max-width: 767px) {
	:root { --bg-header-h: 60px; }
	.bg-header__inner { padding: 0 16px; }
	.bg-logo img, .custom-logo { height: 30px; }
	.bg-hero { min-height: 85svh; }
	.bg-hero__title { font-size: 25px; line-height: 1.25; }
	.bg-hero__lead { font-size: 14px; }
	.bg-section > h2, .bg-title, .bg-page--home .bg-blocks > h2, .bg-page--home .bg-blocks > .bg-band > h2 { text-align: left; }
}
.bg-nav__mobile-actions { display: none; } @media (max-width: 1199px) { .bg-nav__mobile-actions { display: grid; gap: 14px; } }
@media (max-width: 1199px) { .bg-pagehead__title { font-size: 35px; } } @media (max-width: 767px) { .bg-pagehead__title { font-size: 30px; } .bg-pagehead { padding: 45px var(--bg-gutter) 40px; } }

/* Zoekpagina mobiel/tablet zoals live: witte balk "Zoek op adres … Filters". */
.bg-filters-toggle__bar { align-items: center; justify-content: space-between; gap: 12px; margin: 0 calc(-1 * var(--bg-gutter)); padding: 18px calc(var(--bg-gutter) + 10px); background: #fff; border-bottom: 1px solid #eee; cursor: pointer; }
.bg-filters-toggle__addr { flex: 1; min-width: 0; overflow: hidden; color: #222; font-size: 16px; text-overflow: ellipsis; white-space: nowrap; }
.bg-filters-toggle__label { display: inline-flex; align-items: center; gap: 8px; color: #222; font-size: 15px; font-weight: 600; }
.bg-filters-toggle__label .bg-icon { width: 22px; height: 22px; color: var(--bg-green); }
@media (max-width: 1199px) { .bg-explore__layout { margin-top: 0; gap: 10px; } .bg-filters-toggle__bar { margin: 0 -15px; padding: 18px 25px; } }

/* Header-menu en dropdown exact zoals live (gemeten 21-10-2026 op boerengids.nl). */
.bg-logo img, .custom-logo { height: 37px; }
.bg-nav__toggle, .bg-nav__list > li > a { font-weight: 300; }
@media (min-width: 1200px) {
	.bg-nav__panel {
		top: calc(var(--bg-header-h) - 19px); min-width: 215px; width: 215px; max-height: none; overflow: visible;
		padding: 0 20px; border-top: 3px solid var(--bg-green); border-radius: 3px; box-shadow: 0 1px 4px rgb(0 0 0 / 26%);
	}
	.bg-nav__sub li { position: relative; }
	.bg-nav__sub > li + li, .bg-nav__sub ul > li + li { border-top: 1px solid #eee; }
	.bg-nav__sub a, .bg-nav__sub ul a { padding: 13px 0; color: #242429; font-size: 14px; font-weight: 300; line-height: 20px; text-transform: capitalize; }
	.bg-nav__sub a:hover { color: var(--bg-green); background: none; }
	/* Submenu klapt naar rechts uit (zoals live). */
	.bg-nav__sub ul { position: absolute; top: -3px; left: calc(100% + 20px); z-index: 2; width: 215px; padding: 0 20px; background: #fff; border-top: 3px solid var(--bg-green); border-radius: 3px; box-shadow: 0 1px 4px rgb(0 0 0 / 26%); opacity: 0; visibility: hidden; transition: opacity .15s, visibility .15s; }
	.bg-nav__sub li:hover > ul, .bg-nav__sub li:focus-within > ul { opacity: 1; visibility: visible; }
}
@media (min-width: 1420px) { .bg-nav { justify-content: flex-start; margin-left: 45px; } .bg-nav__list { gap: 1px; } }
.bg-header__add { white-space: nowrap; }

/* Pagina-inhoud zoals de Elementor-pagina's op live: 1280 px, koppen 30 px groen, compacte regels. */
.bg-page .bg-prose h2 { margin: 1.1em 0 .35em; font-size: 30px; line-height: 1.2; }
.bg-page .bg-prose h3 { margin: 1em 0 .35em; font-size: 22px; color: var(--bg-green); }
.bg-page .bg-prose p, .bg-page .bg-prose li { line-height: 1.45; }
.bg-page .bg-prose p { margin: 0 0 14px; }
.bg-page .bg-prose .wp-block-columns { gap: 60px; margin: 0 0 30px; align-items: flex-start; }
.bg-page .bg-prose .wp-block-image img { border-radius: 10px; width: 100%; height: auto; }
.bg-page .bg-prose .wp-block-buttons { gap: 18px; margin: 20px 0; }
.bg-page .bg-prose .wp-block-button__link { padding: 11px 25px; border: 1px solid var(--bg-green); border-radius: 3px; font-size: 14px; }
.bg-page .bg-prose .is-style-outline .wp-block-button__link { background: #fff; color: var(--bg-green); }
@media (max-width: 767px) { .bg-page .bg-prose h2 { font-size: 24px; } .bg-page .bg-prose .wp-block-columns { gap: 20px; } }
.bg-header__login { font-weight: 300; } .bg-header__add { font-size: 15px; font-weight: 300; }
.bg-page .bg-prose .wp-block-column > :first-child { margin-top: 0; }
/* Kruimelpad in de inhoud + eigen paginatitel (zoals live op o.a. Contact en Boerencamping). */
.bg-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 6px; padding: 0; font-size: 15px; }
.bg-crumbs li + li::before { content: "/"; margin-right: 6px; color: #222; }
.bg-crumbs a { color: var(--bg-green); }
.bg-page .bg-prose h1.wp-block-heading { margin: 0 0 10px; color: #222; font-size: 50px; line-height: 1.1; }
@media (max-width: 767px) { .bg-page .bg-prose h1.wp-block-heading { font-size: 32px; } }
.bg-page:has(.bg-prose > h1:first-child, .bg-prose > .wp-block-columns:first-child h1, .bg-prose > .bg-band:first-child > h1:first-child, .bg-prose > .bg-band:first-child > .wp-block-columns:first-child h1) { padding-top: 50px; }
/* Gecentreerde intro onder de paginakop (zoals live op o.a. Boerencamping). */
.bg-intro { max-width: 1280px; margin: -35px auto 40px; padding: 0 var(--bg-gutter); text-align: center; }
.bg-intro p { margin: 0 0 10px; line-height: 1.45; }

/* Formulieren zoals de Elementor-formulieren op live: geen kaart, placeholders, E-mail + Telefoon naast elkaar. */
.bg-formblock--live .bg-form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.bg-formblock--live .bg-form > *:not(.bg-form-row--half) { grid-column: 1 / -1; }
.bg-formblock--live .bg-form-row { margin: 0; }
.bg-formblock--live input:not([type=checkbox]):not([type=radio]), .bg-formblock--live textarea { width: 100%; min-height: 40px; padding: 8px 12px; border: 1px solid #69727d; border-radius: 3px; font: 300 15px var(--bg-font); }
.bg-formblock--live textarea { min-height: 96px; }
.bg-formblock--live .bg-label { margin-bottom: 4px; font-weight: 400; }
.bg-formblock--live .bg-btn--block { height: 40px; border-radius: 3px; font-weight: 400; }
@media (max-width: 600px) { .bg-formblock--live .bg-form { grid-template-columns: 1fr; } }
/* SEO-teksten onder de zoekresultaten: zelfde ritme als live. */
.bg-page--wide .bg-blocks > h2, .bg-page--wide .bg-blocks > .bg-band > h2 { margin: 22px 0 6px; font-size: 30px; line-height: 1.2; }
.bg-page--wide .bg-blocks > p, .bg-page--wide .bg-blocks > .bg-band > p { margin-bottom: 12px; line-height: 1.45; }

/* Zoekpagina's: breedte groeit mee zoals live (MyListing explore-type-4: 1170 → 1400 vanaf 1450px → 1600 vanaf 1651px).
   Gemeten op live: filterkolom 303 / 360 / 417 px, 25 px tussen filters en kaarten. */
@media (min-width: 1200px) { .bg-explore__layout { gap: 25px; } }
@media (min-width: 1450px) { .bg-explore__layout { max-width: 1380px; grid-template-columns: 360px minmax(0, 1fr); } }
@media (min-width: 1651px) { .bg-explore__layout { max-width: 1580px; grid-template-columns: 417px minmax(0, 1fr); } }
.bg-explore .bg-grid { gap: 20px; }
/* Boerderijpagina: container zoals live (Bootstrap 1170 → 1300 vanaf 1450px; kolommen 2× 565 px op 1440). */
.bg-single__cols, .bg-related { max-width: 1180px; }
@media (min-width: 1450px) { .bg-single__cols, .bg-related { max-width: 1310px; } }
/* Ronde foto zoals live (Elementor border-radius 50 %, 500×500, object-fit cover). */
.bg-page .bg-prose .wp-block-image.is-style-rounded { text-align: center; }
.bg-page .bg-prose .wp-block-image.is-style-rounded img { width: 100%; max-width: 500px; aspect-ratio: 1; object-fit: cover; object-position: top center; border-radius: 50%; }
.bg-page .bg-prose .wp-block-columns { gap: 49px; align-items: center; }

/* Kennisbank-artikel zoals live: hoofdkolom ±780 px + zijbalk ±340 px (1190 px totaal op 1440). */
.bg-article { display: grid; gap: 40px; max-width: calc(1190px + 2 * var(--bg-gutter)); margin: 0 auto; padding: 40px var(--bg-gutter) 60px; }
@media (min-width: 992px) { .bg-article { grid-template-columns: minmax(0, 1fr) 340px; gap: 70px; } }
.bg-article__title { margin: 0 0 6px; color: var(--bg-green); font-size: 30px; line-height: 1.2; }
.bg-article__meta { display: flex; flex-wrap: wrap; gap: 14px; margin: 0 0 8px; font-size: 14px; color: #222; }
.bg-article__meta a, .bg-article__meta span { display: inline-flex; align-items: center; gap: 5px; color: #222; }
.bg-article__meta .bg-icon { width: 13px; height: 13px; }
.bg-article__head .bg-crumbs ol { font-size: 14px; margin-bottom: 14px; }
.bg-article .bg-prose h2 { margin: 1.1em 0 .35em; color: var(--bg-green); font-size: 24px; line-height: 1.25; }
.bg-article .bg-prose h3 { color: var(--bg-green); font-size: 20px; }
.bg-article .bg-prose p, .bg-article .bg-prose li { font-size: 15px; line-height: 1.5; }
.bg-article .bg-prose img { border-radius: 6px; }
.bg-article .bg-prose .wp-block-button__link { padding: 9px 20px; border-radius: 3px; font-size: 14px; background: var(--bg-green); color: #fff; }
.bg-article__side { display: grid; gap: 30px; align-content: start; }
.bg-article__news { padding: 22px; border-radius: 6px; background: var(--bg-green); color: #fff; }
.bg-article__news h2 { margin: 0 0 10px; color: #fff; font-size: 24px; line-height: 1.2; }
.bg-article__news p { margin: 0 0 14px; font-size: 14px; line-height: 1.45; }
.bg-article__more h2 { margin: 0 0 14px; color: var(--bg-green); font-size: 22px; }
.bg-postcard { display: block; margin-bottom: 18px; overflow: hidden; background: #fff; border-radius: 4px; box-shadow: 0 2px 10px rgb(0 0 0 / 10%); color: #000; }
.bg-postcard__img { position: relative; display: block; aspect-ratio: 16 / 10; background: #eee; }
.bg-postcard__img img { width: 100%; height: 100%; object-fit: cover; }
.bg-postcard__badge { position: absolute; top: 12px; right: 12px; padding: 2px 10px; border-radius: 99px; background: var(--bg-green); color: #fff; font-size: 11px; font-weight: 600; text-transform: uppercase; }
.bg-postcard__body { display: grid; gap: 14px; padding: 16px; }
.bg-postcard__body strong { font-size: 18px; line-height: 1.2; }
.bg-postcard__more { font-size: 12px; font-weight: 700; text-transform: uppercase; }
.bg-widget img { width: 100%; height: auto; border-radius: 4px; }

/* Kennisbank-overzicht zoals live: filters links (±260 px), liggende kaarten rechts. */
.bg-kb { display: grid; gap: 30px; max-width: calc(1240px + 2 * var(--bg-gutter)); margin: 0 auto; padding: 0 var(--bg-gutter) 60px; }
@media (min-width: 992px) { .bg-kb { grid-template-columns: 260px minmax(0, 1fr); } .bg-kb--plain { grid-template-columns: 1fr; } }
.bg-kb__filters form { display: grid; gap: 22px; position: sticky; top: calc(var(--bg-header-h) + 20px); }
.bg-kb__label { display: flex; justify-content: space-between; align-items: center; width: 100%; margin: 0 0 8px; font-size: 14px; font-weight: 600; }
.bg-kb__reset { color: var(--bg-green); font-size: 12px; font-weight: 400; }
.bg-kb__search { display: flex; border: 1px solid #ddd; border-radius: 4px; }
.bg-kb__search input { flex: 1; min-width: 0; height: 38px; padding: 0 10px; border: 0; font: 300 14px var(--bg-font); }
.bg-kb__search button { width: 38px; border: 0; background: none; color: #777; cursor: pointer; }
.bg-kb__group { margin: 0; padding: 0; border: 0; }
.bg-kb__opt { display: flex; align-items: center; gap: 8px; margin: 0 0 6px; font-size: 14px; cursor: pointer; }
.bg-kb__opt input { width: 16px; height: 16px; accent-color: var(--bg-green); }
.bg-kb__opt small { color: #999; }
.bg-kb__list { display: grid; gap: 20px; align-content: start; }
.bg-kbcard { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 20px; padding: 20px; background: #fff; border-radius: 6px; box-shadow: 0 2px 12px rgb(0 0 0 / 7%); }
.bg-kbcard__img { display: block; aspect-ratio: 1.18; overflow: hidden; border-radius: 4px; background: #eee; }
.bg-kbcard__img img { width: 100%; height: 100%; object-fit: cover; }
.bg-kbcard__body { position: relative; display: grid; gap: 8px; align-content: start; }
.bg-kbcard__tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
.bg-kbcard__tags span { padding: 2px 10px; border-radius: 99px; background: var(--bg-green-light); color: var(--bg-green-deep); font-size: 11px; }
.bg-kbcard__title { margin: 0; font-size: 20px; line-height: 1.25; }
.bg-kbcard__title a { color: #111; }
.bg-kbcard__text { margin: 0; color: #555; font-size: 14px; line-height: 1.45; }
.bg-kbcard__more { color: var(--bg-green); font-size: 14px; font-weight: 600; }
.bg-kbcard__arrow { position: absolute; right: 0; bottom: 0; color: var(--bg-green); }
@media (max-width: 600px) { .bg-kbcard { grid-template-columns: 1fr; } }
.bg-kb .nav-links { display: flex; gap: 8px; justify-content: center; margin-top: 20px; }
.bg-kb .nav-links .page-numbers { display: grid; place-items: center; min-width: 36px; height: 36px; padding: 0 8px; border-radius: 99px; color: #222; }
.bg-kb .nav-links .page-numbers.current { border: 1px solid var(--bg-green); color: var(--bg-green); }
.bg-kbcard__title { font-weight: 500; font-size: 19px; } .bg-kb__opt input { accent-color: var(--bg-green); }

/* Filters: aantallen, kindopties (bijv. BoerenBed/FarmCamps onder Boerencamping), lege opties, zoeken in lijst. */
.bg-check__count { color: #999; font-size: 12px; }
/* Subopties gewoon onder elkaar, niet ingesprongen (wens 24-10). */
.bg-checklist li.is-child, .bg-checklist li.is-depth-2 { padding-left: 0; }
.bg-check.is-empty { opacity: .45; cursor: default; }
.bg-checklist__find { width: 100%; height: 34px; margin: 0 0 8px; padding: 0 10px; border: 1px solid #ddd; border-radius: 4px; font: 300 14px var(--bg-font); }
/* Gekozen filters als labels boven de resultaten. */
.bg-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: -6px 0 16px; }
.bg-chip { display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px; border: 1px solid var(--bg-green); border-radius: 99px; background: var(--bg-green-light); color: #1d3b12; font-size: 14px; }
.bg-chip:hover { background: #fff; color: #1d3b12; }
.bg-chip__x { font-size: 16px; line-height: 1; color: var(--bg-green-deep); }
.bg-chips__clear { margin-left: 4px; color: #555; font-size: 14px; text-decoration: underline; }

/* Lokale landingspagina's: plaatsen in de buurt als compacte linklijst. */
.bg-placelinks { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 6px 24px; margin: 0 0 20px; padding: 0; list-style: none; }
.bg-placelinks small { color: #999; }
.bg-placemore { display: flex; flex-wrap: wrap; gap: 20px; margin: 10px 0 0; }
/* Groene vlakken uit Elementor (bijv. "Steun mij gratis"): primaire kleur, 8 px hoeken, 24 px binnenruimte. */
.bg-page .bg-prose .wp-block-column.bg-greenbox { padding: 24px; border-radius: 8px; background: var(--bg-green); color: #fff; }
.bg-page .bg-prose .bg-greenbox h2, .bg-page .bg-prose .bg-greenbox h3, .bg-page .bg-prose .bg-greenbox a { color: #fff; }
.bg-page .bg-prose .bg-greenbox ul { padding-left: 0; list-style: none; }
.bg-page .bg-prose .wp-block-columns:has(> .bg-greenbox) { gap: 16px; align-items: stretch; }
.bg-related__places { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 24px; margin: 24px 0 0; }
/* Donatieformulier (zoals live: kaart in het midden). */
.bg-donation { max-width: 460px; margin: 30px auto; padding: 24px; background: #fff; border-radius: 8px; box-shadow: 0 2px 15px rgb(0 0 0 / 8%); }
.bg-donation .bg-form { display: grid; gap: 14px; }
.bg-donation select, .bg-donation input[type="number"] { width: 100%; margin-top: 6px; }
.bg-auth__title { color: #222; font: 700 30px/1.2 var(--bg-font); }

/* ------------------------------------------------------------------ */
/* Banden (ACF-blokken): opmaak uit het tabblad Opmaak.                 */
/* Standaard voegen banden niets toe, zodat pagina's eruitzien als voorheen. */
/* ------------------------------------------------------------------ */
.bg-band--smal { max-width: 820px; margin-left: auto; margin-right: auto; }
.bg-band--bg-licht, .bg-band--bg-groen { padding: 40px var(--bg-gutter, 20px); border-radius: 8px; }
.bg-band--bg-licht { background: #f1f7ec; }
.bg-band--bg-groen { background: var(--bg-green); color: #fff; }
.bg-band--bg-groen h2, .bg-band--bg-groen h3, .bg-band--bg-groen a { color: #fff; }
.bg-band--pt-geen { padding-top: 0 !important; } .bg-band--pb-geen { padding-bottom: 0 !important; }
.bg-band--pt-s { padding-top: 16px; } .bg-band--pb-s { padding-bottom: 16px; }
.bg-band--pt-m { padding-top: 40px; } .bg-band--pb-m { padding-bottom: 40px; }
.bg-band--pt-l { padding-top: 70px; } .bg-band--pb-l { padding-bottom: 70px; }
.bg-band--pt-xl { padding-top: 110px; } .bg-band--pb-xl { padding-bottom: 110px; }
.bg-band .wp-block-image.is-style-rounded img { border-radius: 50%; aspect-ratio: 1; object-fit: cover; }
.bg-band .bg-faq details { border-bottom: 1px solid #e3e8df; padding: 12px 0; }
.bg-band .bg-faq summary { cursor: pointer; font-weight: 600; }
/* Inhoud van een band gedraagt zich als voorheen in de paginagrid (marges vallen niet samen). */
.bg-blocks > .bg-band--tekst:not(.bg-intro), .bg-blocks > .bg-band--faq, .bg-blocks > .bg-band--formulier { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; }
.bg-page .bg-blocks > .bg-band.bg-intro > :last-child { margin-bottom: 0; }
/* Seizoensrooster (openingstijden periode B). */
.bg-hours__season { margin: 12px 20px 4px; font-weight: 600; font-size: 14px; }
.bg-season { margin-top: 16px; padding: 12px 16px; border: 1px solid #e3e8df; border-radius: 6px; }
.bg-season > summary { cursor: pointer; font-weight: 600; }
.bg-formgrid--3 { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); margin: 12px 0; }
/* Beoordelingen */
.bg-stars { color: #f5a623; letter-spacing: 1px; white-space: nowrap; }
.bg-stars__off { color: #d9d9d9; }
.bg-card__rating { margin: 2px 0 0; font-size: 14px; }
.bg-card__rating span { color: #757d83; }
.bg-reviews__sum { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; font-size: 18px; }
.bg-reviews__sum span:last-child { color: #757d83; font-size: 14px; }
.bg-review { padding: 14px 0; border-top: 1px solid #eef0ec; }
.bg-review header { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.bg-review time { color: #757d83; font-size: 13px; }
.bg-review p { margin: 6px 0 0; }
.bg-review__photos { display: flex; gap: 8px; margin-top: 8px; }
.bg-review__photos img { width: 80px; height: 80px; object-fit: cover; border-radius: 6px; }
.bg-review__reply { margin: 10px 0 0 16px; padding: 10px 14px; background: #f1f7ec; border-radius: 6px; font-size: 15px; }
.bg-review__replyform, .bg-review__new { margin-top: 12px; }
.bg-review__replyform > summary, .bg-review__new > summary { cursor: pointer; list-style: none; display: inline-flex; }
.bg-review__replyform > summary::-webkit-details-marker, .bg-review__new > summary::-webkit-details-marker { display: none; }
.bg-review__replyform textarea, .bg-review__new textarea { width: 100%; }
.bg-rate { display: inline-flex; flex-direction: row-reverse; gap: 2px; border: 0; padding: 0; margin: 10px 0; }
.bg-rate legend { width: 100%; }
.bg-rate input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bg-rate label { font-size: 30px; line-height: 1; color: #d9d9d9; cursor: pointer; }
.bg-rate label:hover, .bg-rate label:hover ~ label, .bg-rate input:checked ~ label { color: #f5a623; }
.bg-rate input:focus-visible + label { outline: 2px solid var(--bg-green); }
.bg-linked { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; } .bg-linked small { color: #757d83; margin-left: 6px; }

/* Zoeken in de header: één veld met suggesties. */
.bg-noscroll { overflow: hidden; }
.bg-search-overlay { padding-top: 110px; background: rgb(20 26 18 / 72%); backdrop-filter: blur(3px); }
.bg-search-overlay__box { width: min(760px, 100%); }
.bg-gsearch { display: flex; align-items: center; gap: 10px; padding: 8px 8px 8px 18px; background: #fff; border-radius: 12px; box-shadow: 0 20px 50px rgb(0 0 0 / 25%); }
.bg-gsearch__icon .bg-icon { width: 22px; height: 22px; color: var(--bg-green); }
.bg-gsearch input { flex: 1; min-width: 0; height: 52px; border: 0; outline: 0; font: 400 19px var(--bg-font); color: #1f2420; background: transparent; }
.bg-gsearch .bg-btn { height: 48px; padding: 0 26px; border-radius: 8px; }
.bg-gsearch__panel { margin-top: 10px; max-height: calc(100vh - 250px); overflow-y: auto; padding: 14px; background: #fff; border-radius: 12px; box-shadow: 0 20px 50px rgb(0 0 0 / 20%); }
.bg-gsearch__label { margin: 10px 8px 6px; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #8a9184; }
.bg-gsearch__label:first-child { margin-top: 2px; }
.bg-gsearch__empty { margin: 4px 8px 8px; color: #555; }
.bg-gsearch__list a { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 10px 12px; border-radius: 8px; color: #1f2420; font-size: 16px; text-decoration: none; }
.bg-gsearch__list a small { color: #8a9184; font-size: 13px; white-space: nowrap; }
.bg-gsearch__list a:hover, .bg-gsearch__list a.is-active { background: #f1f7ec; }
.bg-gsearch__list .bg-gsearch__all { margin-top: 6px; border-top: 1px solid #eef0ec; color: var(--bg-green); }
.bg-gsearch__near { display: flex; align-items: center; gap: 10px; width: 100%; padding: 12px; border: 0; border-radius: 8px; background: #f1f7ec; color: #2b7a0b; font: 600 16px var(--bg-font); cursor: pointer; text-align: left; }
.bg-gsearch__near .bg-icon { width: 20px; height: 20px; }
.bg-gsearch__near.is-loading { opacity: .6; }
.bg-gsearch__chips { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 8px 4px; }
.bg-gsearch__chips a { padding: 7px 14px; border: 1px solid #dfe6da; border-radius: 999px; color: #1f2420; font-size: 14px; text-decoration: none; }
.bg-gsearch__chips a:hover { border-color: var(--bg-green); color: var(--bg-green); }
@media (max-width: 767px) { .bg-search-overlay { padding: 70px 12px 12px; } .bg-gsearch { padding-left: 12px; } .bg-gsearch input { font-size: 17px; height: 46px; } .bg-gsearch .bg-btn { padding: 0 14px; } }
/* Menu echt in het midden van de header (niet in de restruimte). */
@media (min-width: 1200px) {
	.bg-header__inner { display: grid; grid-template-columns: minmax(max-content, 1fr) auto minmax(max-content, 1fr); }
	.bg-header__inner > :last-child { justify-self: end; }
}

/* ================================================================== */
/* Boerderijpagina (nov 2026): mozaïek, titelblok, secties, zijkolom.  */
/* ================================================================== */
.bg-farm { background: #fff; padding-bottom: 20px; }
.bg-farm__wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
/* Mozaïek: 1 grote + 4 kleine foto's; elke foto netjes bijgesneden, ook bij verschillende formaten. */
.bg-mosaic { position: relative; display: grid; gap: 8px; margin-top: 20px; height: 440px; border-radius: 14px; overflow: hidden; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; }
.bg-mosaic__item { position: relative; display: block; overflow: hidden; background: #e9efe4; }
.bg-mosaic__item img, .bg-mosaic.is-empty img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.bg-mosaic__item:hover img { transform: scale(1.03); }
.bg-mosaic__item:first-child { grid-row: 1 / 3; }
.bg-mosaic--1 { grid-template-columns: 1fr; grid-template-rows: 1fr; }
.bg-mosaic--2 { grid-template-columns: 2fr 1fr; }
.bg-mosaic--2 .bg-mosaic__item:nth-child(2) { grid-row: 1 / 3; }
.bg-mosaic--3 { grid-template-columns: 2fr 1fr; }
.bg-mosaic--4 { grid-template-columns: 2fr 1fr 1fr; }
.bg-mosaic--4 .bg-mosaic__item:nth-child(4) { grid-column: 2 / 4; }
.bg-mosaic__all { position: absolute; right: 16px; bottom: 16px; display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 0; border-radius: 8px; background: #fff; color: #1f2420; font: 600 14px var(--bg-font); box-shadow: 0 4px 14px rgb(0 0 0 / 20%); cursor: pointer; }
.bg-mosaic__all .bg-icon { width: 18px; height: 18px; }
.bg-mosaic__item.is-extra { display: none; }
.bg-mosaic--2 { grid-template-columns: 1fr 1fr; }
.bg-mosaic--2 .bg-mosaic__item:nth-child(2) { grid-row: 1 / 3; }
/* Eén foto: in eigen verhouding, met een zachte vervaagde versie als achtergrond (staand of liggend maakt niet uit). */
.bg-mosaic--1 { height: 460px; }
.bg-mosaic--1 .bg-mosaic__item::before { content: ""; position: absolute; inset: -40px; background: var(--bg-blur) center / cover; filter: blur(30px) brightness(.85); }
.bg-mosaic--1 .bg-mosaic__item img { position: relative; object-fit: contain; }
.bg-mosaic--1 .bg-mosaic__item:hover img { transform: none; }
/* +N op de laatste tegel */
.bg-mosaic__more { position: absolute; inset: 0; display: grid; place-items: center; background: rgb(0 0 0 / 45%); color: #fff; font-size: 30px; font-weight: 700; pointer-events: none; }
.bg-mosaic__count { display: none; }
.bg-gallery { position: relative; }
@media (max-width: 767px) {
	.bg-farm__wrap { padding: 0 14px; }
	/* Mobiel: alle foto's in een veegslider, teller rechtsonder. */
	.bg-mosaic, .bg-mosaic--1 { display: flex; height: 300px; margin: 0 -14px; border-radius: 0; gap: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.bg-mosaic::-webkit-scrollbar { display: none; }
	.bg-mosaic__item, .bg-mosaic__item.is-extra { display: block; flex: 0 0 100%; height: 100%; scroll-snap-align: start; }
	.bg-mosaic__more { display: none; }
	.bg-mosaic--1 .bg-mosaic__item::before { display: none; }
	.bg-mosaic--1 .bg-mosaic__item img { object-fit: cover; }
	.bg-mosaic__all { display: none; }
	.bg-mosaic__count { position: absolute; right: 12px; bottom: 12px; display: block; padding: 4px 10px; border-radius: 999px; background: rgb(0 0 0 / 60%); color: #fff; font-size: 13px; font-weight: 600; z-index: 2; pointer-events: none; }
}
/* Geen foto's: rustige groene band achter het titelblok. */
.bg-farm--nophoto .bg-farm__top { background: linear-gradient(#f1f7ec, #fff); }
.bg-farm--nophoto .bg-farm__head { padding-top: 34px; }
/* Beschrijving: tussenkoppen en lijsten in lange teksten, lege staat. */
.bg-farm__text h2 { margin: 26px 0 10px; font-size: 21px; }
.bg-farm__text h3 { margin: 22px 0 8px; font-size: 18px; color: #1f2420; }
.bg-farm__text p { margin: 0 0 14px; }
.bg-farm__text ul, .bg-farm__text ol { margin: 0 0 14px; padding-left: 20px; }
.bg-farm__text img { max-width: 100%; height: auto; border-radius: 10px; }
.bg-farm__empty { margin: 0; padding: 16px 18px; border-radius: 10px; background: #f6f8f4; color: #555; }
.bg-farm__empty a { display: inline-block; margin-top: 6px; color: var(--bg-green); font-weight: 600; }
/* Mobiel: vaste actiebalk onderin. */
.bg-farm__mbar { display: none; }
@media (max-width: 767px) {
	.bg-farm { padding-bottom: 84px; }
	.bg-farm__mbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; display: flex; gap: 8px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -4px 18px rgb(0 0 0 / 12%); }
	.bg-farm__mbar .bg-btn { flex: 1; justify-content: center; height: 46px; border-radius: 10px; }
	.bg-farm__mbar .bg-icon { width: 18px; height: 18px; }
	.bg-farm .bg-farm__actions { flex-wrap: nowrap; overflow-x: auto; margin-right: -14px; padding-right: 14px; scrollbar-width: none; }
	.bg-farm .bg-farm__actions::-webkit-scrollbar { display: none; }
	.bg-farm .bg-farm__actions .bg-btn { flex: none; }
	/* Route, bellen en website staan dan al in de balk onderin. */
	.bg-farm .bg-farm__actions.has-mbar > a[data-bg-track] { display: none; }
	.bg-farm__mbar .bg-btn { padding: 0 10px; font-size: 15px; gap: 6px; }
	.bg-farm__text.is-clamped { max-height: 260px; }
}
/* Titelblok */
.bg-farm__head { padding: 22px 0 6px; }
.bg-farm__crumbs { display: flex; flex-wrap: wrap; gap: 6px; font-size: 14px; color: #757d83; }
.bg-farm__crumbs a { color: var(--bg-green); }
.bg-farm__title { display: flex; align-items: center; gap: 10px; margin: 8px 0 10px; font-size: clamp(28px, 4vw, 42px); line-height: 1.1; color: #1f2420; }
.bg-farm__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; font-size: 15px; color: #444; }
.bg-farm__meta a { color: inherit; text-decoration: none; }
.bg-farm__rating { display: inline-flex; align-items: center; gap: 6px; }
.bg-farm__place { display: inline-flex; align-items: center; gap: 6px; }
.bg-farm__place .bg-icon { width: 17px; height: 17px; color: var(--bg-green); }
.bg-farm__status { display: inline-flex; align-items: center; gap: 7px; font-weight: 600; }
.bg-farm__status.is-open, .bg-farm__status.is-closing { color: #2b7a0b; }
.bg-farm__status.is-closed { color: #b32d2e; }
.bg-farm__status.is-appointment { color: #a26a00; }
.bg-dot { width: 9px; height: 9px; border-radius: 50%; background: currentColor; }
.bg-farm__kinds { display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 0; padding: 0; list-style: none; }
.bg-farm__kinds a { display: inline-block; padding: 5px 12px; border-radius: 999px; background: #f1f7ec; color: #2b7a0b; font-size: 14px; text-decoration: none; }
.bg-farm__kinds a:hover { background: #e2f0d9; }
.bg-farm__actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; }
.bg-farm__actions .bg-btn { height: 44px; padding: 0 16px; border-radius: 8px; }
.bg-farm__actions .bg-icon { width: 18px; height: 18px; }
.bg-btn--light { background: #fff; color: #1f2420; border: 1px solid #dfe6da; }
.bg-btn--light:hover { border-color: var(--bg-green); color: var(--bg-green); }
.bg-visit.is-active { background: var(--bg-green); border-color: var(--bg-green); color: #fff; }
/* Sectienavigatie, blijft staan onder de header. */
.bg-farm__nav { position: sticky; top: var(--bg-header-h); z-index: 20; margin-top: 22px; background: #fff; border-bottom: 1px solid #e6ebe2; }
.admin-bar .bg-farm__nav { top: calc(var(--bg-header-h) + 32px); }
.bg-farm__nav ul { display: flex; gap: 6px; max-width: 1200px; margin: 0 auto; padding: 0 14px; list-style: none; overflow-x: auto; }
.bg-farm__nav a { display: block; padding: 14px 12px; color: #444; font-weight: 600; text-decoration: none; white-space: nowrap; border-bottom: 3px solid transparent; }
.bg-farm__nav a:hover, .bg-farm__nav a.is-active { color: var(--bg-green); border-bottom-color: var(--bg-green); }
/* Inhoud + zijkolom */
.bg-farm__body { display: grid; gap: 40px; margin-top: 30px; }
@media (min-width: 992px) { .bg-farm__body { grid-template-columns: minmax(0, 1fr) 360px; align-items: start; } .bg-farm__side { position: sticky; top: calc(var(--bg-header-h) + 70px); } }
.bg-farm__section { padding: 0 0 30px; margin-bottom: 30px; border-bottom: 1px solid #eef0ec; scroll-margin-top: calc(var(--bg-header-h) + 70px); }
.bg-farm__section h2, .bg-reviews > .bg-box__label { margin: 0 0 14px; font-size: 24px; color: #1f2420; }
.bg-farm__section h3 { margin: 18px 0 8px; font-size: 16px; color: #444; }
.bg-farm__lead { font-size: 18px; font-weight: 600; color: #2b7a0b; margin: 0 0 10px; }
.bg-farm__text { font-size: 16px; line-height: 1.65; }
.bg-farm__text.is-clamped { max-height: 360px; overflow: hidden; -webkit-mask-image: linear-gradient(#000 70%, transparent); mask-image: linear-gradient(#000 70%, transparent); }
.bg-readmore { margin-top: 8px; padding: 0; border: 0; background: none; color: var(--bg-green); font: 600 15px var(--bg-font); cursor: pointer; }
.bg-chiplist { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.bg-chiplist a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid #dfe6da; border-radius: 10px; color: #1f2420; font-size: 15px; text-decoration: none; }
.bg-chiplist a:hover { border-color: var(--bg-green); color: var(--bg-green); }
.bg-farm__products { columns: 2; margin: 10px 0 0; padding-left: 18px; }
.bg-farm__route { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 12px; }
.bg-farm__route > span:first-child { display: inline-flex; gap: 6px; align-items: center; }
.bg-farm__route .bg-icon { width: 17px; height: 17px; color: var(--bg-green); }
.bg-farm__routebtns { display: flex; gap: 8px; }
.bg-farm .bg-minimap { height: 300px; border-radius: 12px; overflow: hidden; }
.bg-farm .bg-reviews { padding: 0 0 30px; margin-bottom: 30px; background: none; box-shadow: none; border-bottom: 1px solid #eef0ec; scroll-margin-top: calc(var(--bg-header-h) + 70px); }
.bg-farm__updated { font-size: 13px; color: #757d83; line-height: 1.5; }
.bg-card-box { margin-bottom: 18px; padding: 22px; border: 1px solid #e6ebe2; border-radius: 14px; background: #fff; scroll-margin-top: calc(var(--bg-header-h) + 70px); }
.bg-card-box h2 { margin: 0 0 12px; font-size: 19px; color: #1f2420; }
.bg-card-box .bg-farm__status { margin: 0 0 10px; }
.bg-card-box .bg-hours__table { width: 100%; font-size: 15px; }
.bg-card-box .bg-hours__table th { text-align: left; font-weight: 400; padding: 4px 0; }
.bg-card-box .bg-hours__table td { text-align: right; }
.bg-card-box .bg-hours__table tr.is-today { font-weight: 700; }
.bg-card-box .bg-hours__season { margin: 0 0 6px; }
.bg-farm__other { margin-top: 10px; font-size: 14px; }
.bg-farm__other summary { cursor: pointer; color: var(--bg-green); }
.bg-contactlist { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; font-size: 15px; }
.bg-contactlist li { display: flex; gap: 10px; align-items: flex-start; word-break: break-word; }
.bg-contactlist .bg-icon { flex: none; width: 18px; height: 18px; margin-top: 2px; color: var(--bg-green); }
.bg-contactlist a { color: #1f2420; }
.bg-card-box--game { background: #f1f7ec; border-color: #dcebd2; }
.bg-card-box--game a, .bg-card-box--small a { color: var(--bg-green); font-weight: 600; }
.bg-card-box--premium { background: linear-gradient(135deg, #2b7a0b, #60b347); border: 0; color: #fff; }
.bg-card-box--premium h2 { color: #fff; }
.bg-card-box--premium .bg-btn { background: #fff; color: #2b7a0b; }
.bg-card-box--small { font-size: 14px; }
.bg-card-box--small p { margin: 0 0 8px; }
/* Lightbox-slider */
.bg-lightbox { display: flex; flex-direction: column; padding: 0; background: rgb(14 18 12 / 96%); }
.bg-lightbox button { position: static; }
.bg-lightbox__top { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; color: #fff; font-size: 15px; }
.bg-lightbox__stage { position: relative; flex: 1; display: grid; place-items: center; min-height: 0; padding: 0 70px; }
.bg-lightbox__stage img { max-width: 100%; max-height: calc(100vh - 170px); width: auto; height: auto; object-fit: contain; border-radius: 6px; opacity: 0; transition: opacity .2s; }
.bg-lightbox__stage img.is-ready { opacity: 1; }
.bg-lightbox__prev, .bg-lightbox__next { position: absolute !important; top: 50%; transform: translateY(-50%); width: 50px; height: 50px; }
.bg-lightbox__prev { left: 12px; }
.bg-lightbox__next { right: 12px; }
.bg-lightbox__thumbs { display: flex; gap: 8px; padding: 12px 18px 18px; overflow-x: auto; justify-content: safe center; }
.bg-lightbox__thumbs button { flex: none; width: 70px; height: 52px; padding: 0; border: 2px solid transparent; border-radius: 6px; overflow: hidden; background: none; opacity: .55; }
.bg-lightbox__thumbs button.is-active { border-color: #fff; opacity: 1; }
.bg-lightbox__thumbs img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 767px) { .bg-lightbox__stage { padding: 0 8px; } .bg-lightbox__prev, .bg-lightbox__next { display: none; } }
.bg-card-box .bg-hours__table { width: 100%; margin: 0; }
.bg-card-box .bg-hours__table th, .bg-card-box .bg-hours__table td { padding: 7px 0; }
.bg-lightbox { align-items: stretch; place-items: stretch; } .bg-lightbox__close { width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgb(255 255 255 / 15%); color: #fff; font-size: 26px; cursor: pointer; }
.bg-placemore { max-width: 1180px; margin: 18px auto 40px; color: #555; }
.bg-placemore a { color: var(--bg-green); }
/* De Boeren Kaart (volledig scherm met lijst). */
.bg-band--boerenkaart { margin: 0 !important; }
.bg-fmap { position: relative; display: grid; grid-template-columns: 380px 1fr; height: calc(100vh - var(--bg-header-h)); min-height: 520px; background: #f4f6f2; }
.admin-bar .bg-fmap { height: calc(100vh - var(--bg-header-h) - 32px); }
.bg-fmap__panel { display: flex; flex-direction: column; min-height: 0; background: #fff; border-right: 1px solid #e6ebe2; z-index: 2; }
.bg-fmap__top { padding: 18px 18px 10px; border-bottom: 1px solid #eef0ec; }
.bg-fmap__title { margin: 0 0 12px; font-size: 24px; color: #1f2420; }
.bg-fmap__search { display: flex; gap: 6px; }
.bg-fmap__search input { flex: 1; min-width: 0; height: 42px; padding: 0 12px; border: 1px solid #dfe6da; border-radius: 8px; font: 400 15px var(--bg-font); }
.bg-fmap__search .bg-btn { width: 42px; height: 42px; padding: 0; border-radius: 8px; }
.bg-fmap__search .bg-icon { width: 18px; height: 18px; }
.bg-fmap__chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 8px; }
.bg-fmap__chips button { padding: 6px 12px; border: 1px solid #dfe6da; border-radius: 999px; background: #fff; font: 400 13px var(--bg-font); cursor: pointer; }
.bg-fmap__chips button.is-active { background: var(--bg-green); border-color: var(--bg-green); color: #fff; }
.bg-fmap__open { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; }
.bg-fmap__count { margin: 8px 0 0; font-size: 13px; color: #757d83; }
.bg-fmap__list { flex: 1; margin: 0; padding: 8px; list-style: none; overflow-y: auto; }
.bg-fmap__list a { display: flex; gap: 12px; padding: 10px; border-radius: 10px; color: #1f2420; text-decoration: none; }
.bg-fmap__list a:hover { background: #f1f7ec; }
.bg-fmap__list img, .bg-fmap__noimg { flex: none; width: 72px; height: 72px; border-radius: 8px; object-fit: cover; background: #e9efe4; }
.bg-fmap__txt { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bg-fmap__txt strong { font-size: 15px; line-height: 1.25; }
.bg-fmap__txt small { color: #757d83; font-size: 13px; }
.bg-fmap__more { padding: 12px; color: #757d83; font-size: 13px; text-align: center; }
.bg-fstatus { font-size: 12px; font-weight: 600; }
.bg-fstatus.is-open { color: #2b7a0b; } .bg-fstatus.is-closed { color: #b32d2e; } .bg-fstatus.is-appointment { color: #a26a00; }
.bg-fmap__map { position: relative; z-index: 1; }
.bg-fcl { display: grid !important; place-items: center; border-radius: 50%; background: rgb(96 179 71 / 92%); box-shadow: 0 0 0 5px rgb(96 179 71 / 30%); color: #fff; font: 700 13px var(--bg-font); }
.bg-fpin { border-radius: 50%; background: var(--bg-green); border: 3px solid #fff; box-shadow: 0 2px 6px rgb(0 0 0 / 35%); transition: transform .15s; }
.bg-fpin.is-hot { transform: scale(1.5); background: #2b7a0b; }
.bg-fpop { display: flex; flex-direction: column; gap: 3px; color: #1f2420 !important; text-decoration: none; }
.bg-fpop img { width: 100%; height: 120px; object-fit: cover; border-radius: 6px; margin-bottom: 4px; }
.bg-fpop span { color: #757d83; font-size: 13px; }
.bg-fpop em { margin-top: 4px; color: var(--bg-green); font-style: normal; font-weight: 600; }
.bg-fmap__switch { display: none; }
@media (max-width: 899px) {
	.bg-fmap { grid-template-columns: 1fr; height: calc(100svh - var(--bg-header-h)); }
	.bg-fmap__panel { position: absolute; inset: 0; transform: translateX(-100%); transition: transform .25s; }
	.bg-fmap.show-list .bg-fmap__panel { transform: none; }
	.bg-fmap__top { padding-top: 14px; }
	.bg-fmap__switch { position: absolute; left: 50%; bottom: 20px; z-index: 5; display: flex; transform: translateX(-50%); padding: 4px; border-radius: 999px; background: #1f2420; box-shadow: 0 6px 20px rgb(0 0 0 / 30%); }
	.bg-fmap__switch button { display: inline-flex; align-items: center; gap: 6px; padding: 10px 16px; border: 0; border-radius: 999px; background: none; color: #fff; font: 600 14px var(--bg-font); }
	.bg-fmap__switch button.is-active { background: var(--bg-green); }
	.bg-fmap__switch .bg-icon { width: 16px; height: 16px; }
}
/* Kaartpin met icoon per soort (wit druppelvormig, groene rand). */
.bg-fpin { background: none; border: 0; box-shadow: none; }
.bg-fpin span { display: grid; place-items: center; width: 34px; height: 34px; border: 2px solid var(--bg-green); border-radius: 50% 50% 50% 0; background: #fff; transform: rotate(-45deg); box-shadow: 0 3px 8px rgb(0 0 0 / 30%); font-size: 17px; line-height: 1; }
.bg-fpin span i { display: block; font-style: normal; transform: rotate(45deg); }
.bg-fpin.is-hot span { background: #f1f7ec; border-color: #2b7a0b; transform: rotate(-45deg) scale(1.25); }
/* Emoji rechtop houden in de gedraaide druppel. */
.bg-fpin span { font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; }
@media (max-width: 899px) {
	/* Mobiel (zoals Farms Around): kaart op het hele scherm, zwevend zoekveld en filters, lijst als paneel van onderen. */
	.bg-fmap__panel { position: absolute; inset: 0; z-index: 3; transform: none; background: transparent; border: 0; pointer-events: none; }
	.bg-fmap__top { padding: 12px 12px 0; border: 0; pointer-events: auto; }
	.bg-fmap__title, .bg-fmap__count { display: none; }
	.bg-fmap__search { padding: 4px; border-radius: 999px; background: #fff; box-shadow: 0 4px 16px rgb(0 0 0 / 22%); }
	.bg-fmap__search input { height: 42px; border: 0; border-radius: 999px; padding-left: 16px; font-size: 16px; }
	.bg-fmap__search .bg-btn { width: 42px; height: 42px; border-radius: 50%; }
	.bg-fmap__search .bg-btn--light { border: 0; background: #f1f7ec; color: #2b7a0b; }
	.bg-fmap__chips { flex-wrap: nowrap; overflow-x: auto; margin: 10px -12px 0; padding: 0 12px 6px; scrollbar-width: none; }
	.bg-fmap__chips::-webkit-scrollbar { display: none; }
	.bg-fmap__chips button { flex: none; padding: 8px 14px; border: 0; box-shadow: 0 2px 8px rgb(0 0 0 / 18%); font-size: 14px; }
	.bg-fmap__open { margin-top: 4px; padding: 6px 12px; border-radius: 999px; background: #fff; box-shadow: 0 2px 8px rgb(0 0 0 / 18%); font-size: 13px; }
	.bg-fmap__list { position: absolute; left: 0; right: 0; bottom: 0; height: 58%; padding: 22px 10px 90px; background: #fff; border-radius: 18px 18px 0 0; box-shadow: 0 -6px 24px rgb(0 0 0 / 20%); transform: translateY(105%); transition: transform .28s; pointer-events: auto; }
	.bg-fmap__list::before { content: ""; position: absolute; top: 8px; left: 50%; width: 40px; height: 4px; margin-left: -20px; border-radius: 4px; background: #d8ddd4; }
	.bg-fmap.show-list .bg-fmap__list { transform: none; }
	.bg-fmap.show-list .bg-fmap__panel { transform: none; }
	.bg-fmap__switch { z-index: 6; bottom: 22px; }
	.bg-fmap .leaflet-bottom.leaflet-right { margin-bottom: 70px; }
}

/* Aanmeldformulier (nov 2026): ruimte onder de header, keuzeknoppen, foutmeldingen. */
.bg-page--add .bg-submit, .bg-page--add .bg-packages, .bg-page--add .bg-add-intro { margin-top: 40px; }
.bg-page--add > .bg-container { padding-top: 1px; }
.bg-submit { display: grid; gap: 22px; padding-bottom: 30px; }
.bg-submit__head h2 { font-size: clamp(26px, 3.4vw, 34px); }
.bg-formsection__intro { margin: -6px 0 0; color: #444; }
.bg-pickgroup { margin: 0; padding: 16px 18px 18px; border: 1px solid #e6ebe2; border-radius: 10px; min-width: 0; }
.bg-pickgroup legend { padding: 0 6px; font-weight: 700; font-size: 16px; color: #1f2420; }
.bg-pickgroup__n { margin-left: 6px; font-weight: 600; font-size: 13px; color: var(--bg-green); }
.bg-pickgroup .bg-help { margin: 0 0 10px; }
.bg-picks { display: flex; flex-wrap: wrap; gap: 8px; }
.bg-pick { position: relative; cursor: pointer; }
.bg-pick input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.bg-pick span { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 8px 14px; border: 1px solid #d7dfd2; border-radius: 999px; background: #fff; color: #1f2420; font-size: 15px; line-height: 1.2; transition: background .15s, border-color .15s; user-select: none; }
.bg-pick:hover span { border-color: var(--bg-green); }
.bg-pick input:checked + span { background: var(--bg-green); border-color: var(--bg-green); color: #fff; }
.bg-pick input:checked + span::before { content: "✓"; font-weight: 700; }
.bg-pick input:focus-visible + span { outline: 3px solid #b9dca9; outline-offset: 2px; }
.bg-formsection.has-error { box-shadow: 0 0 0 2px #e8a3a0, var(--bg-shadow); }
.bg-error { margin: 4px 0 0; color: #b8322d; font-size: 14px; font-weight: 600; }
.bg-form-row.has-error input, .bg-form-row.has-error textarea, .bg-form-row.has-error select, input[aria-invalid="true"], textarea[aria-invalid="true"] { border-color: #d0605b; background: #fffafa; }
.bg-notice--error ul { margin: 8px 0 0; padding-left: 18px; }
.bg-notice--error a { color: inherit; text-decoration: underline; }
.bg-counter { display: inline-block; margin-left: 4px; font-weight: 600; color: #8a5a00; }
.bg-counter.is-ok { color: #2b7a0b; }
.bg-help--premium { padding: 10px 14px; border-radius: 8px; background: #f6f8f4; }
.bg-form-row--textarea textarea, #bg-description { min-height: 150px; }
@media (max-width: 767px) {
	.bg-page--add .bg-submit, .bg-page--add .bg-packages { margin-top: 24px; }
	.bg-formsection { padding: 18px 14px; }
	.bg-pickgroup { padding: 12px 12px 14px; }
	.bg-pick span { font-size: 14px; padding: 7px 12px; min-height: 38px; }
	.bg-form-actions .bg-btn { flex: 1; justify-content: center; }
}

/* Boerderijpagina rustiger (8-11): minder pilletjes, verlopen en zwevende kaarten. */
.bg-mosaic { border-radius: 6px; }
.bg-mosaic__item:hover img { transform: none; }
.bg-mosaic__all { border-radius: 4px; box-shadow: 0 1px 4px rgb(0 0 0 / 25%); }
.bg-farm--nophoto .bg-farm__top { background: none; border-bottom: 1px solid #e6e8e3; }
.bg-farm__kinds { display: block; margin: 10px 0 0; font-size: 15px; color: #555; }
.bg-farm__kinds a { display: inline; padding: 0; border-radius: 0; background: none; color: #2b7a0b; font-size: 15px; text-decoration: underline; text-underline-offset: 2px; text-decoration-color: #b9d3ad; }
.bg-farm__kinds a:hover { background: none; text-decoration-color: currentColor; }
.bg-farm__actions .bg-btn { border-radius: 4px; }
.bg-visit.is-active span::after { content: " ✓"; }
.bg-farm__list { columns: 3 180px; column-gap: 24px; margin: 0; padding: 0; list-style: none; }
.bg-farm__list li { break-inside: avoid; padding: 3px 0; }
.bg-farm__list a { display: inline-flex; align-items: center; gap: 8px; color: #1f2420; text-decoration: none; }
.bg-farm__list a:hover { color: var(--bg-green); text-decoration: underline; }
.bg-farm__list img { width: 18px; height: 18px; }
.bg-farm__section h3 { margin: 18px 0 6px; font-size: 15px; text-transform: none; color: #6b7168; font-weight: 600; }
.bg-farm__section h3:first-of-type { margin-top: 0; }
.bg-card-box { border-radius: 6px; border-color: #e3e6e0; padding: 20px; }
.bg-card-box--game { background: #fff; border-color: #e3e6e0; }
.bg-card-box--premium { background: #2b7a0b; }
.bg-card-box--premium .bg-btn { border-radius: 4px; }
.bg-farm__empty { border-radius: 4px; }
.bg-farm__updated { padding-top: 4px; }
.bg-farm .bg-minimap { border-radius: 6px; }

/* Mobiel: volgorde zoals gevraagd. Contact, beschrijving, locatie, aanbod, openingstijden, beoordelingen, disclaimer. */
@media (max-width: 991px) {
	.bg-farm__body { display: flex; flex-direction: column; gap: 0; }
	.bg-farm__main, .bg-farm__side { display: contents; }
	.bg-farm__body > * , .bg-farm__main > *, .bg-farm__side > * { order: 50; }
	.bg-farm__side .bg-card-box--contact { order: 1; }
	.bg-farm__main #over { order: 2; }
	.bg-farm__main > .bg-farm__section:not([id]) { order: 3; }
	.bg-farm__main #locatie { order: 4; }
	.bg-farm__main #aanbod { order: 5; }
	.bg-farm__side #openingstijden { order: 6; }
	.bg-farm__main .bg-reviews, .bg-farm__main #beoordelingen { order: 7; }
	.bg-farm__side .bg-card-box--game, .bg-farm__side .bg-card-box--premium { order: 8; }
	.bg-farm__main .bg-farm__updated { order: 9; }
	.bg-farm__side .bg-card-box--small { order: 10; }
	.bg-farm__body .bg-card-box { margin: 0 0 24px; }
	.bg-farm__body .bg-farm__section, .bg-farm .bg-reviews { margin-bottom: 24px; padding-bottom: 24px; }
}

/* Kaart: soorten binnen de gekozen hoofdgroep. */
.bg-fmap__chips--sub { margin-top: 8px; padding-top: 8px; border-top: 1px dashed #dfe4db; }
.bg-fmap__chips--sub[hidden] { display: none; }
.bg-fmap__chips--sub button { font-size: 13px; }
@media (min-width: 900px) { .bg-fmap__chips--sub { max-height: 118px; overflow-y: auto; } }
.bg-fmap__chips button small { margin-left: 3px; color: #8a9184; font-size: 11px; }
.bg-fmap__chips button.is-active small { color: rgb(255 255 255 / 80%); }
@media (max-width: 899px) { .bg-fmap__chips--sub { margin-top: 2px; padding-top: 4px; border-top: 0; } }

/* Mijn account (nov 2026): verzameling voor bezoekers, overzicht voor boeren. */
.bg-dash__sub { margin: -6px 0 10px; color: #555; font-size: 15px; }
.bg-coll__score { display: grid; gap: 18px; align-items: center; padding: 22px; margin-bottom: 18px; background: #fff; border: 1px solid #e3e6e0; border-radius: 6px; }
@media (min-width: 700px) { .bg-coll__score { grid-template-columns: auto 1fr; gap: 32px; } }
.bg-coll__count { display: flex; align-items: baseline; gap: 10px; }
.bg-coll__count strong { font-size: 56px; line-height: 1; color: var(--bg-green); }
.bg-coll__count span { font-size: 17px; color: #333; }
.bg-coll__level p { margin: 0 0 8px; }
.bg-coll__bar { height: 10px; border-radius: 5px; background: #eef1eb; overflow: hidden; }
.bg-coll__bar span { display: block; height: 100%; background: var(--bg-green); }
.bg-coll__level .bg-help { margin: 8px 0 0; }
.bg-coll__how { margin-bottom: 18px; padding: 20px 22px; background: #fbfaf5; border: 1px solid #ece8d8; border-radius: 6px; }
.bg-coll__how h3 { margin: 0 0 6px; font-size: 18px; }
.bg-coll__how p { margin: 0 0 14px; }
.bg-coll__block { margin: 0 0 28px; }
.bg-coll__block h3 { margin: 0 0 12px; font-size: 19px; }
.bg-coll__block h3 small { margin-left: 6px; font-weight: 400; font-size: 14px; color: #777; }
.bg-stamps { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(112px, 1fr)); margin: 0; padding: 0; list-style: none; }
.bg-stamp { display: grid; place-items: center; align-content: center; aspect-ratio: 1; padding: 10px; border: 2px dashed #d3d8cf; border-radius: 50%; text-align: center; color: #9aa095; background: #fff; }
.bg-stamp > a { display: grid; place-items: center; gap: 2px; color: inherit; text-decoration: none; }
.bg-stamp__name { font-weight: 700; font-size: 14px; line-height: 1.15; }
.bg-stamp__n { font-size: 12px; }
.bg-stamp.is-on { border: 3px double #3d8b1f; color: #2b6e11; background: #f6faf2; transform: rotate(-6deg); }
.bg-stamp.is-on:nth-child(2n) { transform: rotate(4deg); }
.bg-stamp.is-on:nth-child(3n) { transform: rotate(-2deg); }
.bg-stamp.is-on .bg-stamp__name { text-transform: uppercase; letter-spacing: .3px; }
.bg-stamps--small { grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); }
.bg-stamps--small .bg-stamp__name { font-size: 12.5px; }
.bg-check-list { margin-top: 8px; font-size: 14px; }
.bg-check-list summary { cursor: pointer; color: #2b7a0b; font-weight: 600; }
.bg-check-list ul { margin: 8px 0; padding: 0; list-style: none; display: grid; gap: 4px; }
.bg-check-list li { padding-left: 22px; position: relative; color: #333; }
.bg-check-list li::before { content: ""; position: absolute; left: 2px; top: 5px; width: 10px; height: 10px; border: 2px solid #c9cfc4; border-radius: 2px; }
.bg-check-list li.is-done { color: #777; }
.bg-check-list li.is-done::before { border-color: var(--bg-green); background: var(--bg-green); }
.bg-check-list li span { color: #666; }
.bg-check-list a { color: var(--bg-green); font-weight: 600; }
.bg-upsell { margin-top: 26px; padding: 22px; background: #fff; border: 1px solid #e3e6e0; border-left: 4px solid var(--bg-green); border-radius: 6px; }
.bg-upsell h3 { margin: 0 0 6px; font-size: 20px; }
.bg-upsell__table { width: 100%; max-width: 620px; margin: 10px 0 16px; border-collapse: collapse; font-size: 15px; }
.bg-upsell__table th, .bg-upsell__table td { padding: 7px 8px; border-bottom: 1px solid #eef0ec; text-align: left; }
.bg-upsell__table th:not(:first-child), .bg-upsell__table td:not(:first-child) { text-align: center; width: 22%; }
.bg-upsell__table td:last-child { font-weight: 600; color: #2b7a0b; }
.bg-upsell__price td { font-weight: 600; border-bottom: 0; }
.bg-upsell form { display: inline-block; margin: 0 8px 8px 0; }
.bg-stamp__name { max-width: 100%; overflow-wrap: anywhere; hyphens: auto; }
.bg-stamps--small { grid-template-columns: repeat(auto-fill, minmax(106px, 1fr)); }
.bg-stamps--small .bg-stamp { padding: 8px; }
.bg-stamps--small .bg-stamp__name { font-size: 12px; }
.bg-stamps--small .bg-stamp.is-on .bg-stamp__name { text-transform: none; letter-spacing: 0; }

/* Aanmelden: snel beginnen, adreszoeker, uitlijning (9-11). */
.bg-formgrid > .bg-form-row { align-content: start; }
.bg-formgrid { align-items: start; }
.bg-form-row input:not([type=checkbox]):not([type=radio]):not([type=file]), .bg-form-row select { min-height: 46px; }
.bg-quickstart { padding: 22px 25px; background: #f6faf2; border: 1px solid #dcebd2; border-radius: 6px; }
.bg-quickstart h2 { margin: 0 0 14px; font-size: 20px; }
.bg-quickstart__grid { display: grid; gap: 22px; }
@media (min-width: 760px) { .bg-quickstart__grid { grid-template-columns: 1fr 1fr; } }
.bg-quickstart__item { position: relative; display: grid; gap: 6px; align-content: start; }
.bg-quickstart__item input, .bg-addrfind input { width: 100%; min-height: 46px; }
.bg-quickstart__row { display: flex; gap: 8px; }
.bg-quickstart__row input { flex: 1; min-width: 0; }
.bg-quickstart__item .bg-help { margin: 2px 0 0; }
.bg-quickstart__hits { position: absolute; z-index: 30; left: 0; right: 0; top: 100%; margin: 4px 0 0; padding: 4px; list-style: none; background: #fff; border: 1px solid #dfe4db; border-radius: 6px; box-shadow: 0 8px 22px rgb(0 0 0 / 12%); }
[data-bg-dupe] .bg-quickstart__hits { top: 76px; }
.bg-addrfind { position: relative; }
.bg-addrfind .bg-quickstart__hits { top: 76px; }
.bg-quickstart__hits li { padding: 9px 10px; border-radius: 4px; cursor: pointer; font-size: 15px; }
.bg-quickstart__hits li:hover, .bg-quickstart__hits li:focus { background: #f1f7ec; }
.bg-quickstart__hits li a { display: block; color: #1f2420; text-decoration: none; }
.bg-quickstart__hits li small { color: #777; }
.bg-quickstart__hits li.is-note { cursor: default; color: #666; font-size: 14px; background: none; }
input.is-autofilled, textarea.is-autofilled { border-color: #8cc56f !important; background: #f6fbf2 !important; }
.bg-check--single { padding: 10px 14px; border: 1px solid #e3e6e0; border-radius: 6px; font-size: 15px; width: fit-content; }
.bg-coll__levels { margin-top: 12px; font-size: 14px; }
.bg-coll__levels summary { cursor: pointer; color: #2b7a0b; font-weight: 600; }
.bg-coll__levels ol { margin: 8px 0; padding-left: 20px; columns: 2 200px; }
.bg-coll__levels li { padding: 2px 0; break-inside: avoid; }
.bg-coll__levels li span { color: #777; }
.bg-coll__levels li.is-current strong { color: #2b7a0b; text-decoration: underline; text-underline-offset: 3px; }
.bg-coll__levels p { margin: 6px 0; color: #444; }
/* Statistieken voor boeren (9-11). */
.bg-kpi em { display: block; margin-top: 6px; font-style: normal; font-size: 13px; font-weight: 600; }
.bg-kpi em.is-up { color: #2b7a0b; }
.bg-kpi em.is-down { color: #b8322d; }
.bg-stat__h { margin: 26px 0 10px; font-size: 18px; }
.bg-chart span.is-weekend { background: #2b7a0b; }
.bg-chart__axis { display: flex; justify-content: space-between; margin-top: 6px; font-size: 12.5px; color: #777; }
.bg-refbars { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; max-width: 720px; }
.bg-refbars li { display: grid; grid-template-columns: minmax(120px, 260px) 1fr auto; gap: 12px; align-items: center; font-size: 15px; }
.bg-refbars__bar { height: 10px; border-radius: 5px; background: #eef1eb; overflow: hidden; }
.bg-refbars__bar span { display: block; height: 100%; background: var(--bg-green); }
.bg-refbars__n { color: #555; font-size: 14px; white-space: nowrap; }
@media (max-width: 600px) { .bg-refbars li { grid-template-columns: 1fr auto; } .bg-refbars__bar { grid-column: 1 / -1; grid-row: 2; } }

/* Mijn account, ronde 2 (9-11): upsell bovenaan, statistieken, stempels als paspoortstempel. */
.bg-upsell { display: grid; gap: 18px; margin: 0 0 22px; padding: 22px 24px; background: #f6faf2; border: 1px solid #cfe5c2; border-left: 5px solid var(--bg-green); border-radius: 6px; }
@media (min-width: 900px) { .bg-upsell { grid-template-columns: 1fr auto; align-items: center; } }
.bg-upsell h3 { margin: 0 0 8px; font-size: 21px; }
.bg-upsell ul { margin: 0 0 10px; padding-left: 20px; }
.bg-upsell li { margin: 2px 0; }
.bg-upsell__price { margin: 0; }
.bg-upsell__price strong { color: #2b7a0b; font-size: 18px; margin-right: 6px; }
.bg-upsell__cta { display: grid; gap: 8px; justify-items: start; }
.bg-upsell__cta form { margin: 0; }
.bg-upsell__cta .bg-btn { min-height: 46px; padding: 0 22px; font-size: 16px; }
.bg-upsell__compare summary { cursor: pointer; color: #2b7a0b; font-weight: 600; font-size: 14px; }
.bg-upsell__compare .bg-upsell__table { min-width: 300px; margin: 8px 0 0; }
.bg-upsell__pricerow td { font-weight: 600; border-bottom: 0; }
.bg-upsell--compact { margin-top: 26px; }
.bg-mylist__item.is-basis { border-left: 3px solid #e3e6e0; }
.bg-pill--premium { background: #2b7a0b; color: #fff; }
.bg-empty .bg-icon { width: 40px; height: 40px; color: var(--bg-green); }
.bg-empty--small { padding: 30px 20px; }
.bg-empty .bg-btn { margin-top: 10px; }

.bg-statform { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: end; margin-bottom: 14px; }
.bg-statform .bg-form-row { margin: 0; min-width: 220px; }
.bg-statform__custom { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; }
.bg-statform__custom[hidden] { display: none; }
.bg-statform input[type=date] { min-height: 46px; }
.bg-statchart { position: relative; margin-top: 22px; padding: 16px 16px 6px; background: #fff; border: 1px solid #e3e6e0; border-radius: 6px; }
.bg-statchart__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 6px; }
.bg-statchart__head h3 { margin: 0; font-size: 18px; }
.bg-statchart__metrics { display: inline-flex; border: 1px solid #dfe4db; border-radius: 6px; overflow: hidden; }
.bg-statchart__metrics button { padding: 7px 14px; border: 0; background: #fff; font: 600 14px var(--bg-font); color: #444; cursor: pointer; }
.bg-statchart__metrics button + button { border-left: 1px solid #dfe4db; }
.bg-statchart__metrics button.is-active { background: var(--bg-green); color: #fff; }
.bg-statchart__plot { width: 100%; touch-action: pan-y; }
.bg-statchart__plot svg { display: block; }
.bg-statchart .grid { stroke: #eef0ec; }
.bg-statchart .ax { fill: #7a8075; font-size: 11.5px; font-family: var(--bg-font); }
.bg-statchart .bar { fill: #8cc56f; }
.bg-statchart .bar.we { fill: #5aa63a; }
.bg-statchart .bar.is-hot { fill: #2b7a0b; }
.bg-statchart .line { fill: none; stroke: #2b7a0b; stroke-width: 2; }
.bg-statchart .area { fill: rgb(97 179 71 / 18%); }
.bg-statchart .guide { stroke: #2b7a0b; stroke-dasharray: 3 3; }
.bg-statchart__tip { position: absolute; z-index: 3; display: grid; gap: 2px; min-width: 160px; padding: 9px 12px; background: #1f2420; color: #fff; border-radius: 6px; font-size: 13px; pointer-events: none; box-shadow: 0 6px 18px rgb(0 0 0 / 25%); }
.bg-statchart__tip[hidden] { display: none; }
.bg-statchart__tip strong { font-size: 13.5px; margin-bottom: 2px; }

.bg-coll__score { grid-template-columns: 1fr; }
@media (min-width: 900px) { .bg-coll__score { grid-template-columns: auto 1fr auto; } }
.bg-coll__facts { display: flex; gap: 18px; margin: 0; padding: 0; list-style: none; font-size: 14px; color: #555; }
@media (min-width: 900px) { .bg-coll__facts { flex-direction: column; gap: 6px; padding-left: 22px; border-left: 1px solid #eef0ec; } }
.bg-coll__facts strong { display: inline-block; min-width: 54px; font-size: 18px; color: #1f2420; }
.bg-coll__home { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 0 0 22px; padding: 12px 16px; background: #fbfaf5; border: 1px solid #ece8d8; border-radius: 6px; font-size: 15px; }
.bg-coll__home p { margin: 0; display: inline-flex; align-items: center; gap: 6px; }
.bg-coll__home .bg-icon { width: 18px; height: 18px; color: var(--bg-green); }
.bg-coll__homeform { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.bg-coll__homeform[hidden] { display: none; }
.bg-coll__homeform input { min-height: 40px; width: 220px; }
.bg-linkbtn { padding: 0; border: 0; background: none; color: var(--bg-green); font: 600 15px var(--bg-font); cursor: pointer; text-decoration: underline; }
.bg-coll__visit { display: grid; align-content: start; }
.bg-coll__date { margin: 6px 0 0; font-size: 13px; color: #6b7168; text-align: center; }

/* Paspoortstempels: inktkleur per niveau. */
.bg-stamps { grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 10px; }
.bg-stamps--small { grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); }
.bg-stamp2 { list-style: none; }
.bg-stamp2 a { display: block; color: #b9beb4; text-decoration: none; transition: transform .15s; }
.bg-stamp2 a:hover { transform: scale(1.05); }
.bg-stamp2.tier-1 a { color: #a0612c; }
.bg-stamp2.tier-2 a { color: #59707f; }
.bg-stamp2.tier-3 a { color: #b8890b; }
.bg-stamp2.tier-1 a, .bg-stamp2.tier-2 a, .bg-stamp2.tier-3 a { mix-blend-mode: multiply; }
.bg-stampsvg { display: block; width: 100%; height: auto; }
.bg-stamp2:not(.tier-0) .bg-stampsvg { opacity: .92; }
.bg-grid > li.bg-coll__visit { display: flex; flex-direction: column; }
.bg-coll__visit > .bg-card { flex: 1; }

/* Boerderijpagina: 0 of 1 foto = foto + kaartje van de omgeving (9-11). */
.bg-mosaic--solo { grid-template-columns: 1fr; grid-template-rows: 1fr; height: 440px; }
.bg-mosaic--solo.has-map { grid-template-columns: 2fr 1fr; }
.bg-mosaic--solo .bg-mosaic__item img { object-fit: cover; }
.bg-mosaic--solo .bg-mosaic__item.is-fallback img { object-position: center 30%; }
.bg-mosaic__map { position: relative; display: block; overflow: hidden; background: #e8eee4; color: #1f2420; text-decoration: none; }
.bg-mosaic__tiles { position: absolute; left: 50%; top: 50%; display: grid; grid-template-columns: repeat(3, 256px); width: 768px; }
.bg-mosaic__tiles img { width: 256px; height: 256px; max-width: none; }
.bg-mosaic__pin { position: absolute; left: 50%; top: 50%; width: 40px; height: 40px; margin: -38px 0 0 -20px; color: #2b7a0b; filter: drop-shadow(0 2px 3px rgb(0 0 0 / 35%)); }
.bg-mosaic__pin .bg-icon { width: 40px; height: 40px; fill: #fff; stroke-width: 2.2; }
.bg-mosaic__addr { position: absolute; left: 12px; right: 12px; bottom: 12px; display: grid; gap: 2px; padding: 10px 12px; background: rgb(255 255 255 / 94%); border-radius: 4px; font-size: 14px; box-shadow: 0 1px 4px rgb(0 0 0 / 15%); }
.bg-mosaic__addr strong { font-size: 15px; }
.bg-mosaic__credit { position: absolute; right: 4px; top: 2px; font-size: 10px; color: #555; background: rgb(255 255 255 / 70%); padding: 0 4px; }
.bg-mosaic__map:hover .bg-mosaic__addr { background: #fff; }
@media (max-width: 767px) {
	.bg-mosaic--solo, .bg-mosaic--solo.has-map { display: grid; grid-template-columns: 1fr; height: 260px; }
	.bg-mosaic--solo .bg-mosaic__map { display: none; }
}
.bg-mosaic--solo .bg-mosaic__item:first-child { grid-row: 1; }

/* Claimen (9-11): duidelijke balk op de boerderijpagina. */
.bg-claimbar { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 14px 0 0; font-size: 14.5px; color: #555; }
.bg-claimbar .bg-icon { width: 18px; height: 18px; color: #8a6d1a; }
.bg-claimbar a { color: #2b7a0b; font-weight: 600; }
.bg-quickstart__hits li.has-claim { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.bg-quickstart__hits li.has-claim > a:first-child { flex: 1; }
.bg-quickstart__hits li.has-claim .bg-btn { flex: none; color: #fff; }

/* Premium als smalle balk onder de cijfers (9-11). */
.bg-upsellbar { margin: 0 0 18px; background: #fff; border: 1px solid #e3e6e0; border-radius: 6px; }
.bg-upsellbar > summary { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; cursor: pointer; list-style: none; font-size: 15px; }
.bg-upsellbar > summary::-webkit-details-marker { display: none; }
.bg-upsellbar > summary > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.bg-upsellbar > summary .bg-icon { width: 18px; height: 18px; color: #c9a227; }
.bg-upsellbar[open] > summary .bg-btn { display: none; }
.bg-upsellbar__body { padding: 0 14px 14px; }
.bg-upsellbar__body .bg-upsell__table { max-width: 620px; margin: 4px 0 12px; }
.bg-upsellbar__cta { display: flex; flex-wrap: wrap; gap: 8px; }
.bg-upsellbar__cta form { margin: 0; }
.bg-statchart + .bg-stat__h + .bg-refbars ~ .bg-upsellbar, .bg-refbars + .bg-upsellbar { margin-top: 24px; }
.bg-mylist__group { list-style: none; margin: 14px 0 0; padding: 0 2px; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; color: #6b7168; }
.bg-mylist__group:first-child { margin-top: 0; }

.bg-pick.is-autofilled input:checked + span { background: #5aa63a; border-color: #5aa63a; box-shadow: 0 0 0 3px #d6ecc9; }
.bg-check.is-autofilled { background: #f6fbf2; border-color: #8cc56f; }

/* Niveaus: Erfbaas (geclaimd) en Gouden Klomp (Premium). */
.bg-tier { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px 3px 6px; border-radius: 999px; font-size: 13px; font-weight: 700; line-height: 1.3; white-space: nowrap; }
.bg-tier .bg-icon { width: 17px; height: 17px; }
.bg-tier small { display: none; }
.bg-tier.is-gold { background: #fff4cc; color: #8a6400; box-shadow: inset 0 0 0 1px #e8c95a; }
.bg-tier.is-gold .bg-icon { color: #c99700; fill: #f3cf4a; }
.bg-tier.is-baas { background: #eef7e8; color: #2b6e11; box-shadow: inset 0 0 0 1px #b9dca9; }
.bg-tier.is-baas .bg-icon { color: #3d8b1f; fill: #cfe9c0; }
.bg-card__labels .bg-tier { font-size: 12px; padding: 2px 8px 2px 5px; }
.bg-card__labels .bg-tier.is-baas { background: rgb(255 255 255 / 92%); }
.bg-card__labels .bg-tier.is-gold { background: #fff4cc; }
.bg-pill--baas { background: #eef7e8; color: #2b6e11; }
.bg-pill--premium { background: #fff4cc; color: #8a6400; }
/* Claimblok (9-11): opvallend, boven de openingstijden; op mobiel na de beschrijving. */
.bg-card-box--claim { background: #fffbea; border: 1px solid #ecd98a; border-top: 4px solid #c9a227; }
.bg-card-box--claim h2 { display: flex; align-items: center; gap: 8px; }
.bg-card-box--claim h2 .bg-icon { width: 24px; height: 24px; color: #8a6d1a; }
.bg-card-box--claim p { margin: 0 0 8px; }
.bg-card-box--claim ul { margin: 0 0 14px; padding-left: 20px; font-size: 15px; }
.bg-card-box--claim li { margin: 3px 0; }
.bg-card-box--claim .bg-btn { width: 100%; justify-content: center; }
@media (max-width: 991px) { .bg-farm__side .bg-card-box--claim { order: 3; } }
/* Boerderijpagina: uitlijning desktop en mobiel (9-11). */
.bg-farm__nav ul { max-width: 1200px; padding: 0 20px; gap: 22px; }
.bg-farm__nav li:first-child a { padding-left: 0; }
.bg-farm__nav a { padding-left: 0; padding-right: 0; }
.bg-farm .bg-related { max-width: 1200px; margin: 50px auto 70px; padding: 0 20px; }
.bg-farm .bg-related__title { text-align: left; font-size: 24px; margin-bottom: 18px; }
.bg-farm .bg-related .bg-grid { gap: 20px; }
.bg-farm__title .bg-verified { flex: none; }
@media (max-width: 767px) {
	.bg-farm__nav ul { padding: 0 14px; gap: 18px; scrollbar-width: none; }
	.bg-farm__nav ul::-webkit-scrollbar { display: none; }
	.bg-farm__nav a { padding: 12px 0; font-size: 15px; }
	.bg-farm__crumbs > :nth-last-child(-n+2) { display: none; }
	.bg-farm__title { display: block; font-size: 28px; }
	.bg-farm__title .bg-verified { display: inline-block; width: 20px; height: 20px; margin-left: 4px; vertical-align: -2px; }
	.bg-farm__head { padding-top: 16px; }
	.bg-farm__meta { gap: 6px 14px; }
	.bg-farm__section h2, .bg-farm .bg-reviews > .bg-box__label { font-size: 22px; }
	.bg-farm .bg-related { margin: 30px auto 40px; padding: 0 14px; }
	.bg-farm .bg-related .bg-grid { grid-template-columns: 1fr; }
	.bg-farm__body { margin-top: 18px; }
	.bg-card-box { padding: 18px; }
}

/* Claimblok in Boerengids-stijl (groene kop, gewone tekst, groene knop) en mobiel strak uitgelijnd (9-11). */
.bg-card-box--claim { background: #fff; border: 1px solid #e3e6e0; }
.bg-card-box--claim h2 { display: block; color: var(--bg-green); }
.bg-card-box--claim p { margin: 0 0 14px; font-size: 15px; line-height: 1.55; }
.bg-card-box--claim .bg-btn { width: auto; }
@media (max-width: 991px) {
	/* Alles op één lijn: geen kaders, alleen scheidingslijnen zoals de andere onderdelen. */
	.bg-farm__body .bg-card-box { margin: 0 0 24px; padding: 0 0 24px; border: 0; border-bottom: 1px solid #eef0ec; border-radius: 0; background: none; box-shadow: none; }
	.bg-farm__body .bg-card-box h2 { font-size: 22px; margin-bottom: 12px; }
	.bg-farm__body .bg-card-box--small { border-bottom: 0; }
	.bg-farm__body .bg-card-box .bg-hours__table th, .bg-farm__body .bg-card-box .bg-hours__table td { padding: 8px 0; }
	.bg-farm__section h3 { margin-top: 14px; }
}
/* Minder witruimte onderaan de boerderijpagina (9-11): ruimte voor de vaste knoppenbalk onder de footer, niet erboven. */
.bg-farm { padding-bottom: 0; }
.bg-farm .bg-related { margin-bottom: 40px; }
@media (max-width: 767px) {
	.bg-farm { padding-bottom: 0; }
	.bg-farm .bg-related { margin-bottom: 24px; }
	body:has(.bg-farm__mbar) { padding-bottom: calc(68px + env(safe-area-inset-bottom)); }
}

.bg-farm__list .bg-emo { display: inline-grid; place-items: center; width: 20px; height: 20px; font-size: 17px; line-height: 1; font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; }
/* Footer: minder ruimte erboven op de boerderijpagina. */
body:has(.bg-farm) .bg-footer { margin-top: 56px; }
@media (max-width: 767px) { body:has(.bg-farm) .bg-footer { margin-top: 48px; } }

/* Mobiel menu (9-11): open item zichtbaar (was wit op wit), header blijft bovenop. */
@media (max-width: 1199px) {
	.bg-nav .bg-nav__toggle:hover { color: #000; opacity: 1; }
	.bg-nav .bg-nav__item.is-open > .bg-nav__toggle { color: var(--bg-green); opacity: 1; }
	body.bg-nav-open .bg-header { z-index: 60; }
}

/* Zoeken op mobiel (9-11): volledig scherm, vaste balk bovenin, scrollende resultaten. */
@media (max-width: 767px) {
	.bg-search-overlay { padding: 0; background: #fff; place-items: stretch; }
	.bg-search-overlay__box { display: flex; flex-direction: column; width: 100%; height: 100vh; height: 100dvh; }
	.bg-search-overlay__close { position: absolute; top: 10px; right: 6px; z-index: 2; width: 44px; height: 44px; color: #1f2420; }
	.bg-search-overlay__close .bg-icon { width: 24px; height: 24px; }
	.bg-gsearch { flex: none; margin: 8px 52px 0 10px; padding: 4px 4px 4px 12px; border: 1px solid #cfd8c9; border-radius: 10px; box-shadow: none; }
	.bg-gsearch input { height: 44px; font-size: 17px; }
	.bg-gsearch .bg-btn { height: 40px; padding: 0 14px; font-size: 15px; }
	.bg-gsearch__panel { flex: 1; min-height: 0; max-height: none; margin: 8px 0 0; padding: 6px 12px 40px; border-radius: 0; box-shadow: none; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
	.bg-gsearch__list a { padding: 12px 8px; font-size: 16px; }
	body.bg-noscroll { overflow: hidden; }
}

/* Account in het mobiele menu. */
.bg-macc { margin: 0 0 16px; padding: 16px; background: #f6f8f4; border-radius: 10px; }
.bg-macc__who { display: flex; align-items: center; gap: 12px; margin: 0 0 12px; font-weight: 700; font-size: 17px; }
.bg-macc__who small { display: block; font-weight: 400; font-size: 13px; color: #6b7168; }
.bg-macc__avatar { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--bg-green); color: #fff; font-size: 18px; }
.bg-macc__links { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.bg-macc__links a { display: flex; align-items: center; gap: 12px; padding: 11px 6px; border-radius: 8px; color: #1f2420; font-size: 16px; text-decoration: none; }
.bg-macc__links a:active, .bg-macc__links a:hover { background: #e9f1e3; }
.bg-macc__links .bg-icon { width: 20px; height: 20px; color: var(--bg-green); }
.bg-macc__intro { margin: 0 0 12px; font-size: 15px; color: #444; }
.bg-macc__btns { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.bg-macc__btns .bg-btn { justify-content: center; }
.bg-nav__mobile-actions .bg-btn--block { display: flex; align-items: center; justify-content: center; gap: 8px; }
.bg-nav__mobile-actions .bg-btn--block .bg-icon { width: 18px; height: 18px; }
@media (max-width: 1199px) { .bg-nav__mobile-actions { padding: 20px 0; } }
.bg-macc__who, .bg-macc__who span { color: #1f2420; }
@media (max-width: 767px) {
	.bg-gsearch__list a { display: block; }
	.bg-gsearch__list a small { display: block; margin-top: 2px; white-space: normal; }
	.bg-gsearch__list .bg-gsearch__all strong { margin-left: 4px; }
}
.bg-macc__who .bg-macc__avatar { color: #fff; }
/* Zoekscherm boven de WordPress-adminbalk (ingelogd), anders valt het zoekveld erachter. */
.bg-search-overlay { z-index: 100000; }
@media (max-width: 767px) { .bg-search-overlay { grid-template-columns: minmax(0, 1fr); } .bg-search-overlay__box { max-width: 100%; min-width: 0; } }
@media (max-width: 480px) { .bg-gsearch .bg-btn { display: none; } .bg-gsearch { padding-right: 8px; } }

/* Mobiel zoeken (9-11): titelregel met kruisje, veld eronder; altijd onder statusbalk/notch (veilige zone). */
.bg-search-overlay__title { display: none; }
@media (max-width: 767px) {
	.bg-search-overlay__box { padding-top: env(safe-area-inset-top, 0px); }
	.bg-search-overlay__title { display: block; margin: 0; padding: 18px 16px 12px; font-size: 20px; font-weight: 700; color: #1f2420; }
	.bg-search-overlay__close { top: calc(env(safe-area-inset-top, 0px) + 10px); right: 8px; }
	.bg-gsearch { margin: 0 12px; }
	.bg-gsearch__panel { padding-top: 10px; }
}
a.bg-macc__who { margin: 0; text-decoration: none; }
a.bg-macc__who::after { content: "›"; margin-left: auto; font-size: 26px; font-weight: 400; color: var(--bg-green); line-height: 1; }

/* Mijn account op mobiel (9-11): kolom niet breder dan het scherm, compacte opmaak. */
.bg-dash > * { min-width: 0; }
@media (max-width: 899px) {
	.bg-dash { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.bg-dash__nav { padding: 6px; }
	.bg-dash__nav ul { gap: 4px; scrollbar-width: none; }
	.bg-dash__nav ul::-webkit-scrollbar { display: none; }
	.bg-dash__nav a { padding: 9px 12px; font-size: 15px; }
}
@media (max-width: 767px) {
	body:has(.bg-dash) .bg-pagehead { padding: 28px 16px 20px; }
	body:has(.bg-dash) .bg-pagehead__title { font-size: 30px; }
	.bg-dash__head { margin-bottom: 10px; }
	.bg-dash__head h2 { font-size: 22px; }
	.bg-dash__head .bg-btn { height: 40px; padding: 0 12px; font-size: 14px; }
	.bg-dash__sub { font-size: 14px; }
	.bg-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
	.bg-kpi { padding: 12px 10px; }
	.bg-kpi strong { font-size: 21px; }
	.bg-kpi span { font-size: 12px; line-height: 1.3; display: block; }
	.bg-kpi em { font-size: 11.5px; }
	.bg-upsellbar > summary { font-size: 14px; }
	.bg-upsellbar > summary > span:first-child { align-items: flex-start; }
	.bg-upsellbar__body .bg-upsell__table { font-size: 13px; }
	.bg-upsellbar__cta .bg-btn { width: 100%; justify-content: center; }
	.bg-mylist__item { grid-template-columns: 56px minmax(0, 1fr); gap: 12px; padding: 12px; }
	.bg-mylist__thumb { width: 56px; height: 56px; }
	.bg-mylist__title { font-size: 16px; line-height: 1.3; }
	.bg-mylist__meta { font-size: 12.5px; gap: 4px 10px; }
	.bg-mylist__actions { gap: 6px; }
	.bg-mylist__actions .bg-inline-form:first-child, .bg-mylist__actions .bg-inline-form:first-child .bg-btn { width: 100%; }
	.bg-mylist__actions .bg-btn { justify-content: center; }
	.bg-check-list { font-size: 13.5px; }
	.bg-statform .bg-form-row { min-width: 0; width: 100%; }
	.bg-statform .bg-select, .bg-statform input[type=date] { width: 100%; }
	.bg-statchart { padding: 12px 8px 4px; }
	.bg-statchart__metrics button { padding: 6px 10px; font-size: 13px; }
	.bg-refbars li { grid-template-columns: minmax(0, 1fr) auto; gap: 4px 10px; font-size: 14px; }
	.bg-coll__score { padding: 16px; gap: 12px; }
	.bg-coll__count strong { font-size: 44px; }
	.bg-coll__facts { flex-wrap: wrap; gap: 6px 16px; }
	.bg-coll__home { font-size: 14px; }
	.bg-coll__homeform input { width: 100%; }
	.bg-stamps, .bg-stamps--small { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
	.bg-coll__block h3 { font-size: 18px; }
	.bg-table-wrap { overflow-x: auto; }
	.bg-dash .bg-panel { padding: 16px; }
}
.bg-dash ul.bg-mylist, .bg-dash ul.bg-grid, .bg-dash ul.bg-stamps, .bg-dash ul.bg-refbars { padding-left: 0; margin-left: 0; }
@media (max-width: 767px) {
	.bg-mylist__actions { display: grid; grid-template-columns: 1fr 1fr 44px; }
	.bg-mylist__actions > .bg-inline-form:first-child:not([data-bg-confirm]) { grid-column: 1 / -1; }
	.bg-mylist__actions .bg-inline-form, .bg-mylist__actions .bg-inline-form .bg-btn, .bg-mylist__actions > a { width: 100%; }
	.bg-mylist__actions .bg-btn { padding: 0 8px; }
}

/* Mijn boerderij: paginering. */
.bg-mylist__pages { margin-top: 18px; }
.bg-mylist__count { margin: 6px 0 0; text-align: center; font-size: 13px; color: #6b7168; }

/* Mijn account op mobiel: tegels (gekozen ontwerp, 9-11). */
@media (max-width: 767px) {
	.bg-dash .bg-kpis { grid-template-columns: 1fr 1fr; gap: 10px; }
	.bg-dash .bg-kpi:first-child { grid-column: 1 / -1; background: var(--bg-green); color: #fff; }
	.bg-dash .bg-kpi:first-child span { color: rgb(255 255 255 / 85%); }
	.bg-dash .bg-kpi strong { font-size: 26px; }
	.bg-dash .bg-kpi { padding: 16px 14px; border-radius: 12px; }
	.bg-dash .bg-mylist { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
	.bg-dash .bg-mylist__group, .bg-dash .bg-mylist__item:has(.bg-mylist__actions .bg-btn--primary) { grid-column: 1 / -1; }
	.bg-dash .bg-mylist__item { display: block; padding: 0; overflow: hidden; border-radius: 12px; }
	.bg-dash .bg-mylist__thumb { display: block; width: 100%; height: 96px; border-radius: 0; }
	.bg-dash .bg-mylist__item > div { padding: 10px 12px 0; }
	.bg-dash .bg-check-list { display: none; }
	.bg-dash .bg-mylist__meta > span:nth-child(3) { display: none; }
	.bg-dash .bg-mylist__actions { padding: 10px 12px 12px; grid-template-columns: 1fr 1fr 40px; }
	.bg-dash .bg-mylist__actions .bg-btn { font-size: 0; gap: 0; }
	.bg-dash .bg-mylist__actions .bg-btn .bg-icon { width: 18px; height: 18px; }
	.bg-dash .bg-mylist__actions .bg-btn--primary { font-size: 14px; }
}
@media (max-width: 767px) { .bg-dash span.bg-mylist__thumb { display: none; } }
/* Eén vaste ruimte boven de footer op de hele site (9-11): desktop iets meer, mobiel compact. */
.bg-footer, body:has(.bg-farm) .bg-footer { margin-top: 110px; }
.bg-farm .bg-related { margin-bottom: 0; }
@media (max-width: 767px) { .bg-footer, body:has(.bg-farm) .bg-footer { margin-top: 72px; } .bg-farm .bg-related { margin-bottom: 0; } }
/* Boerderijpagina desktop: tabbalk (Over, Aanbod...) scrolt gewoon mee weg. */
@media (min-width: 992px) { .bg-farm__nav { position: static; } }
/* Ruimte rond foto's en knoppen in artikelen en pagina's (9-11). */
.bg-prose .wp-block-buttons, .bg-band .wp-block-buttons { margin-top: 1em; margin-bottom: 1.6em; }
.bg-prose figure, .bg-prose .wp-block-image { margin-top: 1.6em; margin-bottom: 1.6em; }
.bg-prose > figure:first-child, .bg-prose > .wp-block-image:first-child { margin-top: 0; }
/* Premium-balk: kruisje om weer dicht te klappen. */
.bg-upsellbar[open] > summary::after { content: "×"; display: grid; place-items: center; width: 34px; height: 34px; margin-left: auto; border: 1px solid #dfe4db; border-radius: 6px; font-size: 22px; line-height: 1; color: #555; }

/* Contactpagina (9-11). */
.bg-ct { max-width: 1200px; margin: 0 auto; padding: 36px 20px 0; }
.bg-ct h1 { margin: 6px 0 10px; font-size: clamp(32px, 4vw, 46px); line-height: 1.1; color: #1f2420; }
.bg-ct__crumbs { font-size: 14px; color: #757d83; }
.bg-ct__crumbs a { color: var(--bg-green); }
.bg-ct__lead { margin: 0 0 24px; font-size: 18px; color: #444; }
.bg-ct__grid { display: grid; gap: 32px; }
@media (min-width: 992px) { .bg-ct__grid { grid-template-columns: minmax(0, 1fr) 380px; align-items: start; } }
.bg-ct__form { padding: 26px; background: #fff; border: 1px solid #e3e6e0; border-radius: 10px; }
.bg-ct__form h2, .bg-ct__box h2 { margin: 0 0 16px; font-size: 21px; color: #1f2420; }
.bg-ct__form .bg-panel, .bg-ct__form .bg-formblock { padding: 0; box-shadow: none; background: none; }
.bg-ct__side { display: grid; gap: 18px; }
.bg-ct__photo { width: 100%; height: 230px; object-fit: cover; border-radius: 10px; }
.bg-ct__box { padding: 22px; background: #f6f8f4; border-radius: 10px; }
.bg-ct__details { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.bg-ct__details li { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; }
.bg-ct__details .bg-icon { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--bg-green); }
.bg-ct__details small { display: block; font-size: 12.5px; color: #6b7168; }
.bg-ct__details a { color: #1f2420; font-weight: 600; }
.bg-ct__topics { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.bg-ct__topics a { display: flex; gap: 12px; align-items: center; padding: 10px 8px; border-radius: 8px; color: #1f2420; text-decoration: none; }
.bg-ct__topics a:hover { background: #e9f1e3; }
.bg-ct__topics .bg-icon { flex: none; width: 22px; height: 22px; color: var(--bg-green); }
.bg-ct__topics strong { display: block; font-size: 15px; }
.bg-ct__topics small { display: block; font-size: 13px; color: #6b7168; }
.bg-ct__topics.is-tiles { grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; margin-bottom: 36px; }
.bg-ct__topics.is-tiles a { flex-direction: column; align-items: flex-start; gap: 10px; height: 100%; padding: 22px; background: #fff; border: 1px solid #e3e6e0; border-radius: 10px; }
.bg-ct__topics.is-tiles a:hover { border-color: var(--bg-green); background: #f6faf2; }
.bg-ct__topics.is-tiles .bg-icon { width: 30px; height: 30px; }
.bg-ct__topics.is-tiles strong { font-size: 17px; }
.bg-ct--v2 .bg-ct__intro { margin-bottom: 24px; }
.bg-ct__hero { position: relative; height: 380px; margin-bottom: 26px; border-radius: 12px; overflow: hidden; background: #2b3a24; }
.bg-ct__heroimg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 30%; }
.bg-ct__hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(0 0 0 / 65%), rgb(0 0 0 / 5%) 70%); }
.bg-ct__herotext { position: absolute; z-index: 1; left: 36px; bottom: 34px; max-width: 520px; color: #fff; }
.bg-ct__herotext h1, .bg-ct__herotext .bg-ct__crumbs, .bg-ct__herotext .bg-ct__crumbs a { color: #fff; }
.bg-ct__herotext p { margin: 0; font-size: 19px; }
.bg-ct__ways { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; margin: 0 0 32px; padding: 0; list-style: none; }
.bg-ct__ways a { display: grid; gap: 4px; justify-items: start; padding: 20px; background: #fff; border: 1px solid #e3e6e0; border-radius: 10px; color: #1f2420; text-decoration: none; }
.bg-ct__ways a:hover { border-color: var(--bg-green); }
.bg-ct__ways .bg-icon { width: 26px; height: 26px; margin-bottom: 4px; color: var(--bg-green); }
.bg-ct__ways strong { font-size: 18px; }
.bg-ct__ways span { color: #555; font-size: 15px; }
.bg-ct__kvk { margin: 0; font-size: 13px; color: #6b7168; }
@media (max-width: 767px) {
	.bg-ct { padding: 20px 14px 0; }
	.bg-ct__lead { font-size: 16px; }
	.bg-ct__form { padding: 18px; }
	.bg-ct__photo { height: 180px; }
	.bg-ct__hero { height: 300px; margin: 0 -14px 20px; border-radius: 0; }
	.bg-ct__herotext { left: 16px; right: 16px; bottom: 20px; }
	.bg-ct__herotext p { font-size: 16px; }
	.bg-ct__ways { grid-template-columns: 1fr; gap: 8px; }
	.bg-ct__ways a { grid-template-columns: auto 1fr; align-items: center; column-gap: 12px; padding: 14px 16px; }
	.bg-ct__ways .bg-icon { grid-row: span 2; margin: 0; }
	.bg-ct__topics.is-tiles { grid-template-columns: 1fr 1fr; gap: 8px; }
	.bg-ct__topics.is-tiles a { padding: 14px; }
	.bg-ct__topics.is-tiles strong { font-size: 15px; }
}
.bg-ct ul { padding-left: 0; margin-left: 0; } .bg-ct h2 { margin-top: 0 !important; } .bg-ct li { margin: 0; }

/* Niveau van de bezoeker in de header (9-11). */
.bg-header__level { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 4px 0 12px; border-radius: 999px; background: rgb(255 255 255 / 10%); color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.bg-header__level:hover { background: rgb(255 255 255 / 18%); }
.bg-header__lvlnum { display: grid; place-items: center; min-width: 26px; height: 26px; padding: 0 6px; border-radius: 999px; background: var(--bg-green); font-size: 13px; }
@media (max-width: 1199px) { .bg-header__level { display: inline-flex !important; height: 30px; padding-left: 10px; font-size: 13px; } .bg-header__lvlnum { min-width: 22px; height: 22px; } }
@media (max-width: 480px) { .bg-header__lvlname { display: none; } .bg-header__level { padding: 0 4px; background: none; } }
.bg-header__lvlemo { font-size: 16px; line-height: 1; font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; }
.bg-header__level + .bg-header__login span { display: none; }
@media (max-width: 480px) { .bg-header__level { gap: 3px; } }
@media (max-width: 1419px) { .bg-header__lvlname { display: none; } .bg-header__level { padding-left: 8px; gap: 4px; } }

/* ───── Homepage-ontwerpen ter keuze (9-11) ───── */
.hv { padding-bottom: 10px; }
.hv-wrap { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

.hv h1 { margin: 0 0 14px; line-height: 1.08; color: #1f2420; }



.hv-kicker { margin: 0 0 10px; color: var(--bg-green); font-weight: 700; font-size: 15px; }
.hv-lead { margin: 0 0 22px; font-size: 18px; color: #444; line-height: 1.55; }
.hv-emo { font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; line-height: 1; }
.hv ul { margin: 0; padding: 0; list-style: none; }



.hv-quick { margin: 14px 0 0; font-size: 14px; color: #6b7168; }
.hv-quick a { margin-left: 10px; color: #1f2420; font-weight: 600; }
.hv-cats a { color: #1f2420; text-decoration: none; }
.hv-cats small { color: #6b7168; font-size: 13px; }




.hv-cats.is-tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.hv-cats.is-tiles a { display: grid; gap: 6px; padding: 22px; background: #fff; border-radius: 12px; box-shadow: 0 6px 20px rgb(0 0 0 / 8%); }
.hv-cats.is-tiles a:hover { box-shadow: 0 0 0 2px var(--bg-green), 0 6px 20px rgb(0 0 0 / 8%); }
.hv-cats.is-tiles .hv-emo { font-size: 34px; }
.hv-cats.is-tiles strong { font-size: 18px; }
.hv-cats.is-list a { display: flex; align-items: center; gap: 12px; padding: 11px 6px; border-bottom: 1px solid #eef0ec; }
.hv-cats.is-list strong { flex: 1; font-weight: 600; }
.hv-cats.is-list .hv-emo { font-size: 20px; }
.hv-cats.is-round { display: grid; grid-template-columns: repeat(8, 1fr); gap: 10px; text-align: center; }
.hv-cats.is-round a { display: grid; justify-items: center; gap: 8px; }
.hv-cats.is-round .hv-emo { display: grid; place-items: center; width: 84px; height: 84px; border-radius: 50%; background: #fff6d9; font-size: 38px; transition: transform .15s; }
.hv-cats.is-round li:nth-child(even) .hv-emo { background: #e7f3df; }
.hv-cats.is-round a:hover .hv-emo { transform: translateY(-3px) rotate(-4deg); }
.hv-cats.is-round strong { font-size: 14px; line-height: 1.2; }
.hv-cats.is-round small { display: none; }




.hv-news { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.hv-news a { display: grid; gap: 10px; color: #1f2420; text-decoration: none; }
.hv-news img { width: 100%; aspect-ratio: 3 / 2; height: auto; object-fit: cover; border-radius: 10px; }
.hv-news small { display: block; margin-bottom: 4px; color: var(--bg-green); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .4px; }
.hv-news strong { font-size: 16px; line-height: 1.35; }
.hv-news a:hover strong { color: var(--bg-green); }


.hv-hero1__photos { position: relative; height: 460px; }
.hv-hero1__photos img { position: absolute; object-fit: cover; border-radius: 14px; box-shadow: 0 12px 30px rgb(0 0 0 / 15%); }
.hv-ph0 { left: 0; top: 0; width: 82%; height: 78%; }
.hv-ph1 { right: 0; bottom: 0; width: 46%; height: 50%; border: 6px solid #fff; }
.hv-ph2 { left: 6%; bottom: 0; width: 34%; height: 30%; border: 6px solid #fff; }




.hv-mapband { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 30px 34px 44px; border-radius: 14px; background: #2b3a24 url(../img/live/gras.png) repeat-x left bottom / auto 30px; color: #fff; text-decoration: none; }
.hv-mapband strong { display: block; font-size: 26px; margin-bottom: 6px; }
.hv-mapband span { max-width: 640px; font-size: 16px; }
.hv-mapband .bg-btn { flex: none; }



.hv-hero3__in { position: absolute; z-index: 1; left: 0; right: 0; bottom: 50px; }



















.hv-grid2.bg-grid { grid-template-columns: 1fr 1fr; }

.hv-hero5__in { display: grid; grid-template-columns: 1.1fr 1fr; gap: 50px; align-items: center; }

.hv-hero5__img { width: 100%; height: 420px; object-fit: cover; border-radius: 48% 52% 44% 56% / 55% 45% 55% 45%; box-shadow: 0 16px 40px rgb(43 122 11 / 20%); }







@media (max-width: 991px) {
	.hv-hero5__in { grid-template-columns: 1fr; gap: 28px; }
	.hv-hero1__photos { height: 300px; }
	.hv-news { grid-template-columns: 1fr 1fr; }
	
	
	
	
	.hv-cats.is-tiles { grid-template-columns: 1fr 1fr; }
	.hv-cats.is-round { grid-template-columns: repeat(4, 1fr); row-gap: 18px; }
}
@media (max-width: 767px) {
	.hv-wrap { padding: 0 14px; }
	
	
	.hv-lead { font-size: 16px; }
	
	.hv-hero1__photos { display: none; }
	
	.hv-cats.is-tiles a { padding: 16px; }
	.hv-cats.is-tiles .hv-emo { font-size: 28px; }
	.hv-cats.is-tiles strong { font-size: 15px; }
	.hv-mapband { flex-direction: column; align-items: flex-start; padding: 24px 20px 44px; }
	
	.hv-hero3__in { bottom: 24px; }
	
	
	.hv-news { gap: 14px; }
	.hv-news strong { font-size: 14.5px; }
	
	.hv-grid2.bg-grid { grid-template-columns: 1fr; }
	
	.hv-hero5__img { height: 220px; }
	.hv-cats.is-round .hv-emo { width: 66px; height: 66px; font-size: 30px; }
	.hv-cats.is-round strong { font-size: 12.5px; }
	
	
}
.hv { overflow-x: clip; }




/* Contactpagina recht uitgelijnd (9-11): tegels en formulier/zijkolom op hetzelfde 4-koloms raster. */
.bg-ct__topics.is-tiles { gap: 20px; margin-bottom: 20px; }
@media (min-width: 992px) {
	.bg-ct--v2 .bg-ct__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
	.bg-ct--v2 .bg-ct__grid > .bg-ct__form { grid-column: 1 / 4; }
	.bg-ct--v2 .bg-ct__grid > .bg-ct__side { grid-column: 4 / 5; }
}
.bg-ct__topics.is-tiles a, .bg-ct__form, .bg-ct__box { padding: 24px; }
.bg-ct .bg-ct__form h2, .bg-ct .bg-ct__box h2 { font-size: 22px; line-height: 1.25; margin: 0 0 16px; }
.bg-ct__side { gap: 20px; }
.bg-ct__photo { height: 200px; }
@media (max-width: 767px) { .bg-ct__topics.is-tiles { gap: 10px; } .bg-ct__topics.is-tiles a, .bg-ct__form, .bg-ct__box { padding: 16px; } }

/* Homepage ontwerp 6: combinatie met meer kleur. */
.hv6-hero { padding: 50px 0 40px; background: #eef6e8; }
.hv6-hero__in { display: grid; grid-template-columns: 1.05fr 1fr; gap: 50px; align-items: center; }
.hv6-hero h1 { font-size: clamp(36px, 4.4vw, 58px); }
.hv6-hero .bg-searchform__form { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; align-items: end; }
.hv6-hero .bg-searchform__form > :last-child { grid-column: 1 / -1; }
.hv6-hero .bg-searchform__form .bg-btn { width: 100%; justify-content: center; }
.hv6-cats { margin-top: -26px; position: relative; z-index: 2; }
.hv6-cats .hv-cats.is-round { padding: 22px 16px 18px; background: #fff; border-radius: 18px; box-shadow: 0 10px 30px rgb(0 0 0 / 8%); }
.hv6-band { margin-top: 56px; padding: 48px 0; }
.hv6-band--cream { background: #fbf6e8; }
.hv6-band--green { background: #2f4a24; color: #fff; }

.hv6-map { position: relative; overflow: hidden; background-color: #3d8b1f; }
.hv6-map__pins { position: absolute; right: 230px; top: 14px; display: flex; gap: 18px; opacity: .9; }
.hv6-map__pins i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50% 50% 50% 0; background: #fff; transform: rotate(-45deg); font-style: normal; font-size: 18px; box-shadow: 0 3px 8px rgb(0 0 0 / 25%); }
.hv6-map__pins i:nth-child(odd) { margin-top: 18px; }
.hv6-prov { display: flex; gap: 14px; overflow-x: auto; margin: 0; padding: 0 0 8px; list-style: none; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.hv6-prov li { flex: 0 0 200px; scroll-snap-align: start; }
.hv6-prov a { position: relative; display: flex; flex-direction: column; justify-content: flex-end; height: 240px; padding: 16px; border-radius: 14px; overflow: hidden; color: #fff; text-decoration: none; background: #555 var(--hv-img) center / cover; }
.hv6-prov a::before { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgb(0 0 0 / 65%), rgb(0 0 0 / 0%) 60%); transition: background .2s; }
.hv6-prov a:hover::before { background: linear-gradient(0deg, rgb(43 122 11 / 80%), rgb(0 0 0 / 0%) 70%); }
.hv6-prov strong, .hv6-prov small { position: relative; }
.hv6-prov strong { font-size: 19px; }
.hv6-prov small { font-size: 13px; opacity: .9; }
@media (max-width: 991px) { .hv6-hero__in { grid-template-columns: 1fr; gap: 24px; } .hv6-map__pins { display: none; } }
@media (max-width: 767px) {
	.hv6-hero { padding: 24px 0 40px; }
	.hv6-hero .hv-hero1__photos { display: block; height: 220px; }
	.hv6-hero .bg-searchform__form { grid-template-columns: 1fr; }
	.hv6-band { margin-top: 36px; padding: 32px 0; }
	.hv6-prov li { flex-basis: 150px; }
	.hv6-prov a { height: 190px; }
}
.hv6-map__pins b { display: block; transform: rotate(45deg); font-weight: 400; font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; }

/* Ontwerp 6, samenhang (9-11): één opbouw per sectie, vaste afronding (14px), vast kleurritme. */
.hv--6 { --hv-r: 14px; --hv-green: #2b7a0b; --hv-cream: #fbf6e8; --hv-mint: #eef6e8; --hv-dark: #2f4a24; padding-bottom: 0; }
.hv6-sec { padding: 64px 0; }
.hv6-sec--white { background: #fff; }
.hv6-sec--cream { background: var(--hv-cream); }
.hv6-sec--green { background: var(--hv-dark); color: #fff; }
.hv6-sec--cats { padding-top: 48px; }
.hv6-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin: 0 0 24px; }
.hv6-kicker { margin: 0 0 6px; color: var(--bg-green); font-size: 13px; font-weight: 700; letter-spacing: .6px; text-transform: uppercase; }
.hv6-head h2 { margin: 0; font-size: 30px; line-height: 1.15; color: #1f2420; }
.hv6-head a { color: var(--hv-green); font-weight: 700; text-decoration: none; white-space: nowrap; }
.hv6-sec--green .hv6-head h2 { color: #fff; }
.hv6-sec--green .hv6-kicker { color: #9fd68a; }
.hv--6 .bg-card,.hv--6 .hv-news img,.hv--6 .hv-hero1__photos img { border-radius: var(--hv-r); }
.hv--6 .bg-card { overflow: hidden; border: 0; box-shadow: 0 6px 20px rgb(0 0 0 / 7%); }
.hv--6 .bg-card:hover { box-shadow: 0 10px 28px rgb(0 0 0 / 12%); }
.hv--6 .hv-cats.is-round { padding: 0; background: none; box-shadow: none; }
.hv6-trio { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 20px; }
.hv6-tile { position: relative; display: grid; align-content: start; gap: 8px; min-height: 240px; padding: 28px; border-radius: var(--hv-r); color: #1f2420; text-decoration: none; overflow: hidden; transition: transform .15s; }
.hv6-tile:hover { transform: translateY(-3px); }
.hv6-tile strong { font-size: 22px; }
.hv6-tile em { margin-top: auto; padding-top: 8px; font-style: normal; font-weight: 700; color: var(--hv-green); }
.hv6-tile .hv-emo { font-size: 40px; }
.hv6-tile--map { background: var(--bg-green) url(../img/live/gras.png) repeat-x left bottom / auto 34px; color: #fff; padding-bottom: 48px; }
.hv6-tile--map em { color: #fff; }
.hv6-tile--game { background: var(--hv-cream); }
.hv6-tile--farm { background: var(--hv-mint); }
.hv6-tile--map .hv6-map__pins { position: static; display: flex; gap: 14px; margin: 0 0 10px; }
.hv6-tile--map .hv6-map__pins i { width: 34px; height: 34px; font-size: 16px; }
.hv6-prov { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; overflow: visible; padding: 0; }
.hv6-prov li { flex: none; }
.hv6-prov a { height: 200px; border-radius: var(--hv-r); }
@media (max-width: 991px) { .hv6-trio { grid-template-columns: 1fr; } .hv6-tile { min-height: 0; } .hv6-prov { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) {
	.hv6-sec { padding: 40px 0; }
	.hv6-head h2 { font-size: 23px; }
	.hv6-head { margin-bottom: 18px; }
	.hv6-prov { grid-template-columns: 1fr 1fr; gap: 12px; }
	.hv6-prov a { height: 150px; padding: 12px; }
	.hv6-prov strong { font-size: 16px; }
	.hv6-tile { padding: 22px; }
}

/* Ontwerp 6: bewegende header, over Boerengids met collage, partners (9-11). */
.hv6-hero { position: relative; display: flex; align-items: center; min-height: 640px; padding: 80px 0; background: #1f2a19; color: #fff; overflow: hidden; }
.hv6-hero__bg { position: absolute; inset: 0; }
.hv6-hero__bg video { width: 100%; height: 100%; object-fit: cover; }
.hv6-hero__bg span { position: absolute; inset: 0; background: center / cover no-repeat; opacity: 0; animation: hv6fade 24s infinite; }
.hv6-hero__bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(15 25 10 / 75%), rgb(15 25 10 / 35%) 60%, rgb(15 25 10 / 15%)); }
@keyframes hv6fade { 0% { opacity: 0; transform: scale(1.12); } 4% { opacity: 1; } 25% { opacity: 1; } 30% { opacity: 0; transform: scale(1); } 100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .hv6-hero__bg span { animation: none; } .hv6-hero__bg span:first-child { opacity: 1; } }
.hv6-hero__in { position: relative; z-index: 1; display: block; width: 100%; }
.hv6-hero h1 { max-width: 760px; color: #fff; font-size: clamp(40px, 5.6vw, 76px); text-shadow: 0 2px 20px rgb(0 0 0 / 30%); }
.hv6-hero .hv-lead { max-width: 560px; color: rgb(255 255 255 / 92%); font-size: 20px; }
.hv6-hero .hv6-kicker { color: #b9e6a3; }

.hv6-hero .bg-searchform__form { display: flex; grid-template-columns: none; }
.hv6-hero .bg-searchform__form .bg-btn { width: auto; }
.hv6-sec--mint { background: var(--hv-mint); }
.hv6-about { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
.hv6-about h2 { margin: 0 0 16px; font-size: 30px; color: #1f2420; }
.hv6-about p { margin: 0 0 14px; font-size: 16.5px; line-height: 1.65; color: #333; }
.hv6-about__btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px !important; }
.hv6-logos { display: grid; grid-template-columns: repeat(7, 1fr); gap: 16px; align-items: center; }
.hv6-logos li { display: grid; place-items: center; height: 110px; padding: 16px; background: #fff; border-radius: var(--hv-r); box-shadow: 0 4px 14px rgb(0 0 0 / 5%); }
.hv6-logos img { max-width: 100%; max-height: 72px; width: auto; height: auto; object-fit: contain; filter: grayscale(30%); transition: filter .2s; }
.hv6-logos li:hover img { filter: none; }
@media (max-width: 991px) { .hv6-about { grid-template-columns: 1fr; gap: 28px; } .hv6-logos { grid-template-columns: repeat(4, 1fr); } }
@media (max-width: 767px) {
	.hv6-hero { min-height: 560px; padding: 50px 0 60px; align-items: flex-end; }
	.hv6-hero__bg::after { background: linear-gradient(0deg, rgb(15 25 10 / 85%), rgb(15 25 10 / 30%)); }
	.hv6-hero .hv-lead { font-size: 16px; }
	.hv6-hero .bg-searchform__form { display: grid; }
	.hv6-hero .bg-searchform__form .bg-btn { width: 100%; }
	.hv6-about h2 { font-size: 23px; }
	.hv6-about .hv-hero1__photos { display: block; height: 260px; }
	.hv6-logos { grid-template-columns: repeat(3, 1fr); gap: 10px; }
	.hv6-logos li { height: 84px; padding: 10px; }
}

/* Ontwerp 6 in de huisstijl van de site (9-11): groene gecentreerde koppen, 6px afronding, dunne randen, donker golfblok. */
.hv--6 { --hv-r: 6px; }
.hv6-title { margin: 0 0 28px; text-align: center; color: var(--bg-green); font-size: 32px; font-weight: 700; line-height: 1.2; }
.hv6-more { margin: 28px 0 0; text-align: right; }
.hv6-sec { padding: 56px 0; }
.hv6-sec--cream { background: #f5f8f2; }
.hv--6 .bg-card { border: 1px solid #d9d9d9; box-shadow: none; border-radius: 6px; }
.hv--6 .bg-card:hover { box-shadow: 0 4px 18px rgb(0 0 0 / 10%); }
.hv--6 .hv-hero1__photos img { border-radius: 8px; box-shadow: none; }
.hv--6 .hv-news img { border-radius: 6px; }
/* Hero: gecentreerd zoals de site, brede witte zoekbalk. */
.hv6-hero { min-height: 600px; text-align: center; }
.hv6-hero__bg::after { background: rgb(20 25 18 / 45%); }
.hv6-hero h1 { max-width: none; margin: 0 auto 10px; font-size: clamp(34px, 4.4vw, 56px); text-shadow: 0 2px 12px rgb(0 0 0 / 35%); }
.hv6-hero .hv-lead { max-width: 720px; margin: 0 auto 34px; font-size: 18px; }
.hv6-search { max-width: 1160px; margin: 0 auto; text-align: left; }
.hv6-search .bg-searchform__form { display: grid; grid-template-columns: 1.1fr 1.4fr 1.6fr auto; gap: 0; align-items: stretch; padding: 10px; background: #fff; border-radius: 6px; box-shadow: 0 10px 40px rgb(0 0 0 / 30%); }
.hv6-search .bg-uline { justify-content: center; padding: 10px 20px !important; border-bottom: 0; border-right: 1px solid #e6e6e6; }
.hv6-search .bg-uline label { font-size: 13px; color: #777; font-weight: 600; }
.hv6-search .bg-uline input, .hv6-search .bg-uline select { height: 30px; font-size: 17px; }
.hv6-search .bg-uline:not(.bg-uline--select) label.screen-reader-text + input { margin-top: 0; }
.hv6-search .bg-uline input::placeholder { color: #333; }
.hv6-search .bg-field__action { right: 18px; bottom: 50%; transform: translateY(50%); }
.hv6-search .bg-searchform__submit, .hv6-search .bg-btn { height: auto; min-height: 60px; margin-left: 10px; padding: 0 40px; border-radius: 6px; font-size: 17px; }
/* Doe-mee-tegels: rustig. */
.hv6-tile { border-radius: 6px; min-height: 0; }
.hv6-tile:hover { transform: none; box-shadow: 0 4px 18px rgb(0 0 0 / 10%); }
.hv6-tile--game { background: #f5f8f2; border: 1px solid #e3e8de; }
.hv6-tile--farm { background: #fff; border: 1px solid #d9d9d9; }
/* Over Boerengids: het donkere golfblok van de site, met de collage. */
.hv6-about-wrap.bg-darkwave { margin: 60px 0; }
.hv6-about-wrap .hv6-about h2 { color: var(--bg-green); font-size: 36px; }
.hv6-about-wrap .hv6-about p { color: #fff; }
.hv6-about-wrap .hv-hero1__photos img { border: 5px solid #fff; }
.hv6-about-wrap .hv-ph0 { border: 0 !important; }
/* Partners: logo's los, zoals op de site. */
.hv6-logos li { background: none; box-shadow: none; border-radius: 0; height: 90px; }
.hv6-logos img { filter: none; }
@media (max-width: 991px) {
	.hv6-search .bg-searchform__form { grid-template-columns: 1fr 1fr; gap: 8px; }
	.hv6-search .bg-uline { border-right: 0; border-bottom: 1px solid #e6e6e6; }
	.hv6-search .bg-uline--select { grid-column: 1 / -1; }
	.hv6-search .bg-searchform__submit, .hv6-search .bg-btn { grid-column: 1 / -1; margin: 6px 0 0; min-height: 52px; justify-content: center; }
}
@media (max-width: 767px) {
	.hv6-title { font-size: 25px; margin-bottom: 20px; }
	.hv6-hero { min-height: 0; padding: 50px 0 56px; align-items: center; }
	.hv6-hero .hv-lead { font-size: 15.5px; margin-bottom: 22px; }
	.hv6-search .bg-searchform__form { grid-template-columns: 1fr; padding: 8px; }
	.hv6-search .bg-uline { padding: 8px 12px !important; }
	.hv6-search .bg-uline input, .hv6-search .bg-uline select { font-size: 16px; }
	.hv6-more { text-align: center; }
	.hv6-about-wrap .hv6-about h2 { font-size: 26px; }
}
@media (min-width: 992px) { .hv6-search .bg-searchform__form > :last-child { grid-column: auto; } .hv6-search .bg-searchform__form .bg-btn { width: auto; } }
.hv6-about-wrap .bg-btn--primary { color: #fff !important; }
.hv6-about-wrap .bg-btn--light { color: #1f2420 !important; }
@media (max-width: 767px) { .hv-cats.is-round { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px 4px; } .hv-cats.is-round strong { font-size: 11.5px; overflow-wrap: anywhere; hyphens: auto; } .hv-cats.is-round .hv-emo { width: 60px; height: 60px; font-size: 28px; } }

/* Ontwerp 6: fouten (9-11). */
/* Autohulp bij adres niet afknippen: alleen de achtergrond knipt. */
.hv6-hero { overflow: visible; }
.hv6-hero__bg { overflow: hidden; }
.hv6-search { position: relative; z-index: 5; }
.hv6-search .bg-suggest { z-index: 50; max-height: 320px; overflow-y: auto; }
/* Tegels: tekst behoudt zijn kleur, alleen een rustige rand/schaduw. */
.hv6-tile:hover, .hv6-tile:hover strong, .hv6-tile:hover span { color: inherit; text-decoration: none; }
.hv6-tile--map, .hv6-tile--map:hover, .hv6-tile--map:hover strong, .hv6-tile--map:hover span, .hv6-tile--map:hover em { color: #fff; }
.hv6-tile--game:hover, .hv6-tile--farm:hover { color: #1f2420; border-color: var(--bg-green); box-shadow: 0 4px 18px rgb(0 0 0 / 8%); }
.hv6-tile--map:hover { background-color: var(--bg-green-dark); box-shadow: 0 4px 18px rgb(0 0 0 / 12%); }
.hv6-tile:hover em { text-decoration: underline; text-underline-offset: 3px; }
.hv6-tile--game:hover em, .hv6-tile--farm:hover em { color: var(--bg-green-deep); }
/* Knoppen: groen wordt donkerder groen, wit krijgt een groene rand; tekst blijft leesbaar. */
.hv--6 .bg-btn--primary:hover, .hv--6 .bg-btn--primary:focus-visible { background: var(--bg-green-dark) !important; border-color: var(--bg-green-dark) !important; color: #fff !important; }
.hv--6 .bg-btn--light:hover, .hv--6 .bg-btn--light:focus-visible { background: #fff !important; border-color: var(--bg-green) !important; color: var(--bg-green-deep) !important; }
.hv--6 .bg-btn { transition: background-color .15s, border-color .15s, color .15s; }
@media (max-width: 767px) {
	.hv6-about__btns { display: grid !important; grid-template-columns: 1fr; gap: 8px; }
	.hv6-about__btns .bg-btn { width: 100%; justify-content: center; }
	.hv6-about-wrap.bg-darkwave { padding: 70px 14px; }
	.hv6-about-wrap .hv-hero1__photos { height: 280px; }
}
@media (max-width: 991px) { .hv6-logos { display: flex; flex-wrap: wrap; justify-content: center; } .hv6-logos li { flex: 0 0 calc(33.333% - 10px); } }

/* Homepage definitief (9-11): sitebreedte, schone kaarttegel, grotere partners, compacter mobiel, volle footer. */
.hv-wrap { max-width: calc(var(--bg-container) + 2 * var(--bg-gutter)); padding: 0 var(--bg-gutter); }
.bg-band--homepage { margin: 0; }
.bg-page--home .bg-band--homepage + * { margin-top: 0; }
.hv6-tile--map { background: var(--bg-green); padding-bottom: 28px; }
.hv6-tile--map:hover { background: var(--bg-green-dark); box-shadow: none; }
.hv6-logos { gap: 28px; }
.hv6-logos li { height: 130px; padding: 10px; }
.hv6-logos img { max-height: 110px; }
@media (max-width: 767px) {
	.hv6-sec { padding: 30px 0; }
	.hv6-title { margin-bottom: 16px; }
	.hv6-more { margin-top: 18px; }
	.hv6-trio { gap: 12px; }
	.hv6-about-wrap.bg-darkwave { margin: 30px 0; padding: 70px 24px; }
	.hv6-logos { gap: 14px; }
	.hv6-logos li { height: 96px; }
	.hv6-logos img { max-height: 80px; }
	.bg-footer p { max-width: none; }
	.bg-footer__social { padding-left: 0 !important; }
	.bg-footer__inner { padding: 60px var(--bg-gutter) 40px; }
}
.hv6-logos a { display: grid; place-items: center; width: 100%; height: 100%; } .hv6-logos a:hover img { transform: scale(1.05); } .hv6-logos img { transition: transform .15s; }
.hv6-logos { grid-template-columns: repeat(8, 1fr); } .hv6-logos img { border-radius: 4px; }

/* Mijn account: vermeldingskaart met voortgang en Gouden Klomp onderaan (9-11) */
.bg-mylist__foot { grid-column: 1 / -1; display: grid; gap: 14px; margin-top: 4px; padding-top: 14px; border-top: 1px solid #eef0ec; }
@media (min-width: 900px) { .bg-mylist__foot { grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; align-items: start; } }
.bg-mylist__ptitle { display: flex; justify-content: space-between; gap: 10px; margin: 0 0 6px; font-size: 14px; }
.bg-mylist__ptitle span { color: #6b7168; font-size: 13px; }
.bg-mylist__bar { display: block; height: 6px; border-radius: 99px; background: #eef0ec; overflow: hidden; }
.bg-mylist__bar > span { display: block; height: 100%; border-radius: 99px; background: var(--bg-green); }
.bg-mylist__todo { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 6px; }
@media (min-width: 700px) { .bg-mylist__todo { grid-template-columns: 1fr 1fr; } }
.bg-mylist__todo a { display: flex; gap: 10px; align-items: flex-start; height: 100%; padding: 9px 12px; border: 1px solid #e6e9e3; border-radius: 8px; color: #222; text-decoration: none; transition: border-color .15s, background .15s; }
.bg-mylist__todo a:hover, .bg-mylist__todo a:focus-visible { border-color: var(--bg-green); background: #f6faf3; }
.bg-mylist__plus { flex: 0 0 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: #eef6e8; color: var(--bg-green); font-weight: 700; line-height: 1; }
.bg-mylist__todo strong { display: block; font-size: 14px; font-weight: 600; }
.bg-mylist__todo small { display: block; margin-top: 1px; font-size: 12.5px; line-height: 1.4; color: #6b7168; }
.bg-mylist__ok { margin: 10px 0 0; font-size: 13.5px; color: #4d5449; }
.bg-mylist__klomp { padding: 14px; border-radius: 8px; background: #fbf7ea; border: 1px solid #efe4bf; font-size: 13.5px; }
.bg-mylist__klomp.is-active { background: #f6faf3; border-color: #dcebd2; }
.bg-mylist__klomp p { margin: 0 0 10px; color: #4d5449; line-height: 1.45; }
.bg-mylist__klomp strong { display: block; color: #222; font-size: 14px; margin-bottom: 2px; }
.bg-mylist__klomp .bg-inline-form, .bg-mylist__klomp .bg-btn { width: 100%; justify-content: center; }
@media (max-width: 767px) {
	.bg-dash .bg-mylist__foot { padding: 10px 12px 12px; margin: 0; gap: 10px; }
	.bg-dash .bg-mylist__todo, .bg-dash .bg-mylist__ok, .bg-dash .bg-mylist__klomp p { display: none; }
	.bg-dash .bg-mylist__ptitle { font-size: 12.5px; }
	.bg-dash .bg-mylist__ptitle span { display: none; }
	.bg-dash .bg-mylist__klomp { padding: 0; background: none; border: 0; }
	.bg-dash .bg-mylist__klomp .bg-btn { font-size: 13px; }
}
/* Eén of twee vermeldingen: op mobiel een volle kaart met takenlijst in plaats van tegels. */
@media (max-width: 767px) {
	.bg-dash .bg-mylist--few { grid-template-columns: 1fr; }
	.bg-dash .bg-mylist--few .bg-mylist__item { border-radius: 10px; }
	.bg-dash .bg-mylist--few .bg-mylist__thumb { height: 140px; }
	.bg-dash .bg-mylist--few .bg-mylist__meta > span:nth-child(3) { display: inline; }
	.bg-dash .bg-mylist--few .bg-mylist__actions .bg-btn { font-size: 14px; gap: 6px; }
	.bg-dash .bg-mylist--few .bg-mylist__foot { border-top: 1px solid #eef0ec; padding-top: 12px; }
	.bg-dash .bg-mylist--few .bg-mylist__todo { display: grid; }
	.bg-dash .bg-mylist--few .bg-mylist__ptitle span { display: inline; }
	.bg-dash .bg-mylist--few .bg-mylist__klomp { padding: 12px; background: #fbf7ea; border: 1px solid #efe4bf; }
	.bg-dash .bg-mylist--few .bg-mylist__klomp.is-active { background: #f6faf3; border-color: #dcebd2; }
	.bg-dash .bg-mylist--few .bg-mylist__klomp p { display: block; }
}
.bg-dash ul.bg-mylist__todo { padding-left: 0; margin-left: 0; }
/* Accountmenu op mobiel: alle keuzes in beeld (twee kolommen), geen schuifbalk (wens 9-11). */
@media (max-width: 899px) {
	.bg-dash__nav ul { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; overflow: visible; }
	.bg-dash__nav a { white-space: normal; padding: 10px 10px; font-size: 14px; line-height: 1.25; border: 1px solid #eef0ec; border-radius: 8px; min-height: 44px; }
	.bg-dash__nav a[aria-current="page"] { border-color: #cfe6c4; }
	.bg-dash__nav .bg-icon { flex: 0 0 auto; }
}

/* Bezochte boerderijen op mobiel: compactere stempels, soorten ingeklapt (9-11). */
.bg-stamps__more { display: none; }
@media (max-width: 767px) {
	.bg-dash .bg-stamps, .bg-dash .bg-stamps--small { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; }
	.bg-dash .bg-stamps--fold:not(.is-open) > li:nth-child(n+9) { display: none; }
	.bg-dash .bg-stamps__more { display: flex; width: 100%; justify-content: center; margin-top: 10px; }
	.bg-dash .bg-coll__how { padding: 16px; }
	.bg-dash .bg-coll__how h3 { margin-top: 0; font-size: 19px; }
	.bg-dash .bg-coll__how .bg-btn { width: 100%; justify-content: center; }
	.bg-dash .bg-coll__block h3 { margin-bottom: 8px; }
}
/* Accountknop met niveau: persoon-icoon + aantal (geen emoji meer, wens 9-11). */
.bg-header__lvlico { display: grid; place-items: center; }
.bg-header__lvlico .bg-icon { width: 18px; height: 18px; color: #fff; }
@media (max-width: 1199px) {
	.bg-header__level { position: relative; padding: 0 !important; width: 32px; height: 40px !important; justify-content: center; background: none !important; }
	.bg-header__lvlico .bg-icon { width: 24px; height: 24px; fill: currentColor; stroke: none; }
	.bg-header__level .bg-header__lvlnum { position: absolute; top: 3px; right: -6px; min-width: 17px; height: 17px; padding: 0 4px; font-size: 10.5px; line-height: 1; box-shadow: 0 0 0 2px #232323; }
}
/* Bezochte boerderijen: kaarten zoals de rest van Mijn account (wit + schaduw), duidelijk zichtbaar op mobiel (9-11). */
.bg-coll__score, .bg-coll__home, .bg-coll__how { background: #fff; border: 1px solid #e6e9e3; box-shadow: var(--bg-shadow); border-radius: 10px; }
.bg-coll__how { border-left: 4px solid var(--bg-green); }
.bg-coll__homeform input { border: 1px solid #d9ddd5; border-radius: 6px; padding: 0 12px; font: inherit; font-size: 15px; background: #fff; }
.bg-coll__homeform input:focus { outline: none; border-color: var(--bg-green); box-shadow: 0 0 0 3px rgb(93 178 66 / 18%); }
/* Kaartbronvermelding klein en op één regel waar het past (9-11). */
.leaflet-container .leaflet-control-attribution { font-size: 10px; line-height: 1.35; padding: 1px 6px; background: rgb(255 255 255 / 80%); }
/* 404 zoals op de oude site (12-11-2026): tekst + vijf knoppen links, koeien in de wei rechts. */
.bg-404 { padding: 60px 0 70px; }
.bg-404__grid { display: grid; gap: 32px; align-items: center; }
@media (min-width: 900px) { .bg-404__grid { grid-template-columns: 1fr 1fr; gap: 56px; } }
.bg-404 h1 { margin: 0 0 14px; color: var(--bg-green); font-size: clamp(30px, 4vw, 44px); line-height: 1.15; }
.bg-404 p { margin: 0 0 22px; font-size: 17px; line-height: 1.6; }
.bg-404__btns { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.bg-404__img img { display: block; width: 100%; height: auto; border-radius: 12px; }
@media (max-width: 767px) { .bg-404 { padding: 30px 0 40px; } .bg-404__btns .bg-btn { min-width: calc(50% - 5px); justify-content: center; } }
