/* LXS Shop, theme.css. Samengesteld uit shop.css van het ontwerp (basis, daarna "Richting 2"
   en "header v3", in die volgorde: latere regels winnen) plus het deel "WordPress en WooCommerce"
   onderaan. Tokens en fonts staan in tokens.css. Geen inline stijlen in templates; alles hier.
   Lucide-iconen via lxs_icon(). Contrast: groen #4CAF50 met wit haalt 2,8:1, daarom staat de
   tekst op afrondknoppen altijd vet en minimaal 16px. */

/* ── reset ──────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:var(--c-primary-2);text-decoration:none}
a:hover{color:var(--c-ink)}
h1,h2,h3,h4{font-family:var(--font-head);margin:0;line-height:1.15;color:inherit;text-wrap:balance}
p{margin:0;text-wrap:pretty}
ul,ol{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
table{border-collapse:collapse;width:100%}
.sr-only,.screen-reader-text:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px}

/* ── basisklassen ───────────────────────────────────────────────────────── */
.container{width:100%;max-width:calc(var(--container) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}
.section{padding:56px 0}
.section--surface{background:var(--c-surface)}
.section--dark{background:var(--c-dark);color:#fff}
.section__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;margin-bottom:24px}
.section__link{font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink);display:inline-flex;align-items:center;gap:6px}
.section__link:hover{color:var(--c-primary-2)}
.section--dark .section__link{color:#fff}
.section--dark .section__link:hover{color:var(--c-primary)}
.eyebrow{display:block;margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-primary-2)}
.section--dark .eyebrow,.eyebrow--on-dark{color:var(--c-primary)}
.section-title{font-size:clamp(26px,3vw,38px);font-weight:800;letter-spacing:-.02em}
.section-intro{margin-top:10px;max-width:640px;font-size:17px;color:var(--c-sub)}
.section--dark .section-intro{color:var(--c-dark-sub)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border:1.5px solid transparent;border-radius:var(--radius-sm);font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.btn--primary{background:var(--c-actie,var(--c-primary));color:var(--c-on-actie,#fff)}
.btn--primary:hover{background:var(--c-actie-2,var(--c-primary-2));color:var(--c-on-actie,#fff)}
.btn--success{background:var(--c-success);color:#fff;font-size:16px}
.btn--success:hover{background:var(--c-success-2);color:#fff}
.btn--ghost{background:transparent;border-color:var(--c-ink);color:var(--c-ink)}
.btn--ghost:hover{background:var(--c-ink);color:#fff}
.btn--ghost-dark{background:transparent;border-color:rgba(255,255,255,.55);color:#fff}
.btn--ghost-dark:hover{background:#fff;border-color:#fff;color:var(--c-ink)}
.btn--dark{background:var(--c-ink);color:#fff}
.btn--dark:hover{background:#000;color:#fff}
.btn--block{width:100%}
.btn--lg{min-height:58px;font-size:16px}
.btn .ico svg{width:18px;height:18px}

.ico{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}
.ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.tag{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:4px;background:var(--c-surface);font-size:12px;font-weight:600;color:var(--c-sub)}

/* ── topbar + header ───────────────────────────── */
.topbar{background:var(--c-dark);color:var(--c-dark-sub);font-size:13px}
.topbar__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:38px}
.topbar__usps{display:flex;gap:24px;overflow:hidden}
.topbar__usps li{display:flex;align-items:center;gap:7px;white-space:nowrap}
.topbar__usps .ico{color:var(--c-primary)}
.topbar__usps .ico svg{width:15px;height:15px}
.topbar__links{display:flex;gap:18px;white-space:nowrap}
.topbar__links a{color:var(--c-dark-sub)}
.topbar__links a:hover{color:#fff}
.topbar__score{display:flex;align-items:center;gap:6px;color:#fff;font-weight:600}
.topbar__score .ico{color:var(--c-primary)}
.topbar__score .ico svg{width:14px;height:14px;fill:currentColor;stroke:none}

.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--c-line)}
.site-header__in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;min-height:78px}
.site-header__logo img{width:170px;height:auto}
.site-header__menu-btn{display:none}
.zoekveld{display:flex;align-items:center;gap:10px;max-width:680px;width:100%;height:48px;padding:0 6px 0 16px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:var(--c-surface)}
.zoekveld:focus-within{border-color:var(--c-ink);background:#fff}
.zoekveld input{flex:1;min-width:0;height:100%;border:0;background:transparent;font-size:15px;outline:none}
.zoekveld input::placeholder{color:#8a8a84}
.zoekveld button{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:0;border-radius:4px;background:var(--c-ink);color:#fff}
.zoekveld button .ico svg{width:18px;height:18px}
.site-header__acties{display:flex;align-items:center;gap:6px}
.kopknop{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-width:64px;padding:6px 8px;border-radius:var(--radius-sm);color:var(--c-ink);font-size:12px;font-weight:600}
.kopknop:hover{background:var(--c-surface);color:var(--c-ink)}
.kopknop .ico svg{width:22px;height:22px}
.kopknop__badge{position:absolute;top:2px;right:12px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff);font-size:11px;font-weight:700;line-height:19px;text-align:center}

.hoofdmenu{background:var(--c-dark-2);color:#fff}
.hoofdmenu__lijst{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.hoofdmenu__lijst::-webkit-scrollbar{display:none}
.hoofdmenu__item:hover,.hoofdmenu__item:focus-within{overflow:visible}
.hoofdmenu__item{position:static}
.hoofdmenu__link{display:flex;align-items:center;gap:6px;height:50px;padding:0 16px;color:#fff;font-size:15px;font-weight:600;white-space:nowrap;border-bottom:3px solid transparent}
.hoofdmenu__link:hover,.hoofdmenu__item:focus-within .hoofdmenu__link,.hoofdmenu__item:hover .hoofdmenu__link{color:#fff;border-bottom-color:var(--c-primary)}
.hoofdmenu__link--actie{color:var(--c-primary)}
.hoofdmenu__link--rechts{margin-left:auto}
/* Mega-menu: opent op hover (desktop, 120 ms vertraging) en op focus/klik (toetsenbord, touch).
   Escape sluit. Eén paneel tegelijk. Gestuurd door theme.js; zie het deel onderaan. */
.mega{position:absolute;left:0;right:0;top:100%;z-index:40;display:none;background:#fff;color:var(--c-ink);border-top:1px solid var(--c-line);box-shadow:var(--shadow-lg)}
.hoofdmenu{position:relative}
.hoofdmenu__item:hover .mega,.hoofdmenu__item:focus-within .mega{display:block}
.mega__in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.3fr);gap:32px;padding:30px var(--gutter) 34px}
.mega__kop{display:block;margin-bottom:12px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub)}
.mega__lijst li+li{margin-top:7px}
.mega__lijst a{color:var(--c-ink);font-size:15px}
.mega__lijst a:hover{color:var(--c-primary-2)}
.mega__alles{display:inline-flex;margin-top:14px;font-size:14px;font-weight:700;color:var(--c-primary-2)}
.mega__uitgelicht{position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--c-dark);color:#fff}
.mega__uitgelicht img{width:100%;aspect-ratio:16/9;object-fit:cover;opacity:.75}
.mega__uitgelicht span{position:absolute;left:18px;bottom:16px;right:18px;font-size:19px;font-weight:700;line-height:1.25}

/* ── footer ─────────────────────────────────────────────────────────────── */
.site-footer{background:var(--c-dark);color:var(--c-dark-sub);font-size:15px}
.site-footer__top{display:grid;grid-template-columns:1.4fr repeat(3,minmax(0,1fr));gap:40px;padding:56px 0 44px}
.site-footer__logo{width:150px;height:auto;margin-bottom:16px}
.site-footer__over{max-width:340px}
.site-footer__score{display:flex;align-items:center;gap:12px;margin-top:20px;padding:14px 16px;border:1px solid var(--c-dark-line);border-radius:var(--radius);color:#fff;max-width:340px}
.site-footer__score strong{font-size:28px;font-weight:800;line-height:1}
.site-footer__score span{font-size:13px;line-height:1.4;color:var(--c-dark-sub)}
.site-footer__kop{display:block;margin-bottom:14px;color:#fff;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.site-footer__lijst li+li{margin-top:8px}
.site-footer__lijst a{color:var(--c-dark-sub)}
.site-footer__lijst a:hover{color:#fff}
.site-footer__onder{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;border-top:1px solid var(--c-dark-line);font-size:13px}
.betaalmerken{display:flex;flex-wrap:wrap;gap:8px}
.betaalmerken img{width:40px;height:40px;border-radius:6px;background:#fff}
.site-footer__legal{display:flex;flex-wrap:wrap;gap:6px 18px}
.site-footer__legal a{color:var(--c-dark-sub)}

/* ── HOME: hero ─────────────────────────────────────────────────────────── */
/* Hero-slider: bouwt voort op template "Split Tactical": tekst links, foto rechts.
   Gedrag: 1–3 slides, wisselt niet automatisch (rustiger, beter voor conversie);
   pijlen + stippen onder de tekst, swipe op telefoon. Eerste foto eager +
   fetchpriority="high", volgende slides loading="lazy". Geen video. */
.hero{background:var(--c-dark);color:#fff;overflow:hidden}
.hero__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;min-height:560px}
.hero__tekst{display:flex;flex-direction:column;justify-content:center;gap:22px;padding:56px 48px 56px 0}
.hero__title{font-size:clamp(38px,5vw,70px);font-weight:800;line-height:1.02;letter-spacing:-.03em}
.hero__title em{font-style:normal;color:var(--c-primary)}
.hero__intro{max-width:520px;font-size:18px;color:#cfcfca}
.hero__ctas{display:flex;flex-wrap:wrap;gap:12px}
.hero__cert{display:flex;flex-wrap:wrap;gap:8px 18px;padding-top:20px;border-top:1px solid var(--c-dark-line);font-size:14px;color:var(--c-dark-sub)}
.hero__cert li{display:flex;align-items:center;gap:7px}
.hero__cert .ico{color:var(--c-primary)}
.hero__cert .ico svg{width:16px;height:16px}
.hero__media{position:relative;margin-right:calc((100vw - min(100vw,var(--container) + var(--gutter)*2))/-2 - var(--gutter))}
.hero__media img{width:100%;height:100%;object-fit:cover}
.hero__nav{display:flex;align-items:center;gap:14px}
.hero__dots{display:flex;gap:6px}
.hero__dots span{width:26px;height:4px;border-radius:2px;background:#3a3a37}
.hero__dots span.is-actief{background:var(--c-primary)}
.hero__pijl{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--c-dark-line);border-radius:var(--radius-sm);background:transparent;color:#fff}
.hero__pijl:hover{border-color:#fff}

/* USP-balk */
.usps{border-bottom:1px solid var(--c-line);background:#fff}
.usps__lijst{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.usps__item{display:flex;align-items:center;gap:14px;padding:20px 18px}
.usps__item+.usps__item{border-left:1px solid var(--c-line)}
.usps__item .ico{width:44px;height:44px;border-radius:var(--radius-sm);background:var(--c-surface);color:var(--c-ink)}
.usps__item .ico svg{width:22px;height:22px}
.usps__title{display:block;font-size:15px;font-weight:700;line-height:1.3}
.usps__text{display:block;font-size:13.5px;line-height:1.4;color:var(--c-sub)}

/* categorieblokken */
.categorieen__tabs{display:flex;gap:6px;margin-bottom:18px}
.categorieen__tab{height:40px;padding:0 16px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:14px;font-weight:600}
.categorieen__tab.is-actief{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.categorieen__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.cat-tegel{position:relative;display:block;border-radius:var(--radius);overflow:hidden;background:var(--c-surface);color:var(--c-ink)}
.cat-tegel img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .3s}
.cat-tegel:hover img{transform:scale(1.03)}
.cat-tegel__tekst{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 16px;background:linear-gradient(0deg,rgba(14,14,14,.85),rgba(14,14,14,0));color:#fff}
.cat-tegel__title{font-size:18px;font-weight:700}
.cat-tegel__n{font-size:12.5px;color:#d6d6d0}
.cat-tegel .ico{color:var(--c-primary)}
.doelgroepen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:14px}
.doelgroep{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1.5px solid var(--c-line);border-radius:var(--radius);background:#fff;color:var(--c-ink)}
.doelgroep:hover{border-color:var(--c-ink);color:var(--c-ink)}
.doelgroep .ico{width:42px;height:42px;border-radius:var(--radius-sm);background:var(--c-dark);color:var(--c-primary)}
.doelgroep__title{display:block;font-size:16px;font-weight:700;line-height:1.25}
.doelgroep__text{display:block;font-size:13px;color:var(--c-sub);line-height:1.35}

/* merkenband */
.merken{background:var(--c-dark);color:#fff;padding:30px 0}
.merken__in{display:flex;align-items:center;gap:32px}
.merken__label{flex:0 0 auto;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-dark-sub)}
.merken__lijst{flex:1;min-width:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}
.merken__lijst a{display:flex;align-items:center;justify-content:center;height:60px;border-radius:var(--radius-sm);background:var(--c-dark-2);opacity:.8}
.merken__lijst a:hover{opacity:1;background:#2a2a28}
.merken__lijst img{max-width:120px;max-height:30px;width:auto;height:auto}

/* ── productkaart (WooCommerce loop) ────────────────────────────────────── */
ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 18px;margin:0;padding:0}
ul.products li.product{position:relative;display:flex;flex-direction:column;min-width:0}
.woocommerce-LoopProduct-link{display:flex;flex-direction:column;color:var(--c-ink)}
.woocommerce-LoopProduct-link:hover{color:var(--c-ink)}
.product__media{position:relative;display:block;aspect-ratio:1/1;border-radius:var(--radius);overflow:hidden;background:var(--c-surface)}
.product__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .2s}
/* tweede foto bij hover (alleen op apparaten met hover; op touch blijft foto 1) */
.product__media .product__hover{opacity:0}
@media (hover:hover){li.product:hover .product__hover{opacity:1}}
.badges{position:absolute;top:10px;left:10px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.onsale,.badge{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1}
.onsale{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff)}
.badge--nieuw{background:var(--c-ink);color:#fff}
.product__fav{position:absolute;top:8px;right:8px;z-index:2;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:50%;background:#fff;color:var(--c-ink);box-shadow:var(--shadow)}
.product__fav .ico svg{width:17px;height:17px}
.product__brand{display:block;min-height:1.2em;margin-top:12px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub)}
.woocommerce-loop-product__title{margin-top:3px;font-size:16px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.7em}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin-top:6px;font-size:17px;font-weight:700;color:var(--c-ink)}
.price del{font-size:14px;font-weight:500;color:var(--c-sub)}
.price ins{text-decoration:none;color:var(--c-primary-2)}
.product__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;min-height:20px}
.product__swatches{display:flex;gap:5px}
.product__swatches li{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.15)}
.product__swatches .meer{width:auto;height:auto;border:0;font-size:12px;color:var(--c-sub)}
.product__sizes{font-size:12.5px;color:var(--c-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
ul.products .button{display:flex;align-items:center;justify-content:center;gap:8px;height:44px;margin-top:12px;border:1.5px solid var(--c-ink);border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-size:13.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
ul.products .button:hover{background:var(--c-ink);color:#fff}
ul.products .button.add_to_cart_button{background:var(--c-actie,var(--c-primary));border-color:var(--c-actie,var(--c-primary));color:var(--c-on-actie,#fff)}
ul.products .button.add_to_cart_button:hover{background:var(--c-actie-2,var(--c-primary-2));border-color:var(--c-actie-2,var(--c-primary-2))}
.voorraad-laag{color:var(--c-primary-2)}

/* kleurstippen: één klasse per WooCommerce-kleurterm (slug) */
.kleur--zwart{background:#1b1b1b}
.kleur--olive{background:#5b5e3a}
.kleur--coyote{background:#a9875c}
.kleur--ranger{background:#3f4a3a}
.kleur--navy{background:#1f2a44}
.kleur--grijs{background:#7b7d7f}
.kleur--camo{background:linear-gradient(135deg,#5b5e3a 0 33%,#a9875c 33% 66%,#2d2f22 66%)}
.kleur--wit{background:#f6f6f4}

/* campagneblok */
.campagne{background:var(--c-dark);color:#fff}
.campagne__in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);border-radius:var(--radius);overflow:hidden;background:var(--c-dark-2)}
.campagne__media img{width:100%;height:100%;min-height:380px;object-fit:cover}
.campagne__tekst{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:44px}
.campagne__title{font-size:clamp(28px,3.2vw,44px);font-weight:800;letter-spacing:-.02em}
.campagne__text{font-size:17px;color:#cfcfca;max-width:460px}
.campagne__korting{display:flex;align-items:baseline;gap:10px;font-size:15px;color:var(--c-dark-sub)}
.campagne__korting strong{font-size:44px;font-weight:800;line-height:1;color:var(--c-primary)}

/* kenniscentrum */
.kennis__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gids{display:flex;flex-direction:column;border:1.5px solid var(--c-line);border-radius:var(--radius);overflow:hidden;background:#fff;color:var(--c-ink)}
.gids:hover{border-color:var(--c-ink);color:var(--c-ink)}
.gids img{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--c-surface)}
.gids__body{display:flex;flex-direction:column;gap:8px;padding:18px 20px 20px}
.gids__soort{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-primary-2)}
.gids__title{font-size:20px;font-weight:700;line-height:1.3}
.gids__text{font-size:15px;color:var(--c-sub)}
.gids__duur{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:13px;color:var(--c-sub)}
.gids__duur .ico svg{width:15px;height:15px}

/* reviews */
.reviews__in{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:28px;align-items:start}
.reviews__score{padding:26px;border-radius:var(--radius);background:var(--c-dark);color:#fff}
.reviews__cijfer{display:block;font-size:64px;font-weight:800;line-height:1;letter-spacing:-.03em}
.reviews__sterren{display:flex;gap:3px;margin:10px 0 8px;color:var(--c-primary)}
.reviews__sterren .ico svg{width:20px;height:20px;fill:currentColor;stroke:none}
.reviews__bron{font-size:14px;color:var(--c-dark-sub)}
.reviews__lijst{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.review{display:flex;flex-direction:column;gap:10px;padding:22px;border:1.5px solid var(--c-line);border-radius:var(--radius);background:#fff}
.review .reviews__sterren{margin:0}
.review .reviews__sterren .ico svg{width:16px;height:16px}
.review__title{font-size:17px;font-weight:700;line-height:1.3}
.review__text{font-size:15px;color:#3a3a37}
.review__wie{margin-top:auto;font-size:13px;color:var(--c-sub)}

/* nieuwsbrief */
.nieuwsbrief{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff)}
.nieuwsbrief__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);align-items:center;gap:28px;padding-top:44px;padding-bottom:44px}
.nieuwsbrief__title{font-size:clamp(24px,2.6vw,34px);font-weight:800;color:#fff}
.nieuwsbrief__text{margin-top:6px;font-size:16px;color:#fff}
.nieuwsbrief__form{display:flex;gap:8px}
.nieuwsbrief__form input{flex:1;min-width:0;height:54px;padding:0 16px;border:0;border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-size:16px}
.nieuwsbrief__form .btn{min-height:54px}
.nieuwsbrief__klein{grid-column:2;font-size:13px;color:#fff;opacity:.9}

/* ── CATEGORIE ──────────────────────────────────────────────────────────── */
.kruimel{display:flex;flex-wrap:wrap;gap:6px;padding:16px 0 0;font-size:13.5px;color:var(--c-sub)}
.kruimel a{color:var(--c-sub)}
.kruimel a:hover{color:var(--c-ink)}
.cat-kop{padding:18px 0 22px}
.cat-kop__title{font-size:clamp(30px,3.6vw,46px);font-weight:800;letter-spacing:-.02em}
.cat-kop__title span{font-size:.45em;font-weight:500;color:var(--c-sub);letter-spacing:0;vertical-align:middle}
.cat-kop__text{margin-top:10px;max-width:780px;font-size:16.5px;color:var(--c-sub)}
.subcats{display:flex;gap:8px;margin-top:18px;overflow-x:auto;scrollbar-width:none}
.subcats::-webkit-scrollbar{display:none}
.subcats a{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-size:14.5px;font-weight:600;white-space:nowrap}
.subcats a:hover{border-color:var(--c-ink);color:var(--c-ink)}
.subcats a.is-actief{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.subcats a span{font-weight:400;opacity:.65}
.shop-raster{display:grid;grid-template-columns:280px minmax(0,1fr);gap:36px;padding-bottom:64px}
.filters{align-self:start;position:sticky;top:96px}
.filters__kop{display:none}
.sheet-dim{display:none}
.filter{border-top:1px solid var(--c-line);padding:16px 0}
.filter:first-of-type{border-top:0;padding-top:0}
.filter__title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.filter__opties li+li{margin-top:7px}
.filter__optie{display:flex;align-items:center;gap:10px;font-size:15px;cursor:pointer}
.filter__optie input{width:18px;height:18px;accent-color:var(--c-ink)}
.filter__optie span{margin-left:auto;font-size:13px;color:var(--c-sub)}
.filter__meer{display:inline-block;margin-top:8px;font-size:14px;font-weight:600}
.filter__maten{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.filter__maat{display:flex;align-items:center;justify-content:center;height:40px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer}
.filter__maat.is-aan{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.filter__kleuren{display:flex;flex-wrap:wrap;gap:8px}
.filter__kleur{width:30px;height:30px;border-radius:50%;border:1px solid rgba(0,0,0,.15);box-shadow:0 0 0 2px #fff,0 0 0 3px transparent;cursor:pointer}
.filter__kleur.is-aan{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--c-ink)}
.filter__prijs{display:flex;align-items:center;gap:8px}
.filter__prijs input{width:100%;height:42px;padding:0 10px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);font-size:15px}
.filter__voet{display:none}
.shop-balk{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}
.shop-balk__actief{display:flex;flex-wrap:wrap;gap:6px}
.chip-uit{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px 0 12px;border-radius:var(--radius-sm);background:var(--c-surface);font-size:13.5px;font-weight:600;color:var(--c-ink)}
.chip-uit .ico svg{width:14px;height:14px}
.chip-uit--wis{background:transparent;text-decoration:underline;font-weight:500}
.woocommerce-result-count{margin:0;font-size:14px;color:var(--c-sub)}
.woocommerce-ordering select{height:42px;padding:0 36px 0 12px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:14.5px;font-weight:600}
.shop-balk__filterknop{display:none}
.woocommerce-pagination{display:flex;justify-content:center;margin-top:44px}
.page-numbers{display:flex;gap:6px}
.page-numbers a,.page-numbers span{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 10px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);color:var(--c-ink);font-weight:600}
.page-numbers a:hover{border-color:var(--c-ink)}
.page-numbers .current{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.page-numbers .dots{border:0}
.cat-seo{max-width:860px;padding:8px 0 64px;font-size:16px;color:#3a3a37}
.cat-seo h2{margin:0 0 10px;font-size:22px;font-weight:700}
.cat-seo p+p{margin-top:12px}

/* ── PRODUCT ────────────────────────────────────────────────────────────── */
.product-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;padding-top:22px;padding-bottom:56px}
.woocommerce-product-gallery{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-self:start;position:sticky;top:100px}
.flex-control-thumbs{display:flex;flex-direction:column;gap:10px}
.flex-control-thumbs li{border:1.5px solid var(--c-line);border-radius:var(--radius-sm);overflow:hidden;background:var(--c-surface);cursor:pointer}
.flex-control-thumbs li.is-actief{border-color:var(--c-ink)}
.flex-control-thumbs img{width:100%;aspect-ratio:1/1;object-fit:contain}
.woocommerce-product-gallery__wrapper{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--c-surface)}
.woocommerce-product-gallery__image img{width:100%;aspect-ratio:1/1;object-fit:contain}
.woocommerce-product-gallery__wrapper .badges{top:16px;left:16px}
.gallery__zoom{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:var(--radius-sm);background:#fff;font-size:13px;font-weight:600;box-shadow:var(--shadow)}
.summary{display:flex;flex-direction:column;gap:18px;min-width:0}
.summary__brand{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub)}
.product_title{font-size:clamp(26px,2.6vw,36px);font-weight:800;letter-spacing:-.02em;line-height:1.12}
.summary__rating{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--c-sub)}
.summary__rating .reviews__sterren{margin:0}
.summary__rating .reviews__sterren .ico svg{width:16px;height:16px}
.summary .price{margin:0;font-size:30px;font-weight:800}
.summary .price del{font-size:18px}
.summary__btw{display:block;font-size:13px;color:var(--c-sub);margin-top:-12px}
.summary__kort{font-size:16px;color:#3a3a37}
form.cart{display:flex;flex-direction:column;gap:16px;padding:20px;border:1.5px solid var(--c-line);border-radius:var(--radius)}
table.variations{border:0}
table.variations tr{display:block}
table.variations tr+tr{margin-top:16px}
table.variations th,table.variations td{display:block;padding:0;text-align:left}
table.variations th.label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:9px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
table.variations th.label span{font-weight:500;letter-spacing:0;text-transform:none;color:var(--c-sub)}
.maatadvies{font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;display:inline-flex;align-items:center;gap:6px}
.maatadvies .ico svg{width:16px;height:16px}
/* swatch-wissel: gedrag: kiezen van een kleur wisselt de galerij naar de
   foto's van die variant (WooCommerce "found_variation"), werkt de prijs en
   voorraad bij en zet uitverkochte maten voor díe kleur op doorgestreept. */
.zn-swatches{display:flex;flex-wrap:wrap;gap:8px}
.zn-swatch{display:flex;flex-direction:column;align-items:center;gap:5px;width:70px;padding:4px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:12px;font-weight:600;color:var(--c-sub)}
.zn-swatch img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:4px;background:var(--c-surface)}
.zn-swatch.is-aan{border-color:var(--c-ink);color:var(--c-ink)}
.zn-sizes{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}
.zn-size{display:flex;align-items:center;justify-content:center;height:46px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:15px;font-weight:600}
.zn-size:hover{border-color:var(--c-ink)}
.zn-size.is-aan{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.zn-size.is-uitverkocht{color:#b6b6b0;text-decoration:line-through;background:var(--c-surface);border-color:var(--c-surface);cursor:not-allowed}
.variatie-voorraad{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;color:#2e7d32}
.variatie-voorraad::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c-success)}
.cart__rij{display:flex;gap:10px}
.quantity{display:flex;align-items:center;height:58px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm)}
.quantity button{width:42px;height:100%;border:0;background:transparent;font-size:20px}
.quantity .qty{width:44px;height:100%;border:0;text-align:center;font-size:17px;font-weight:700;-moz-appearance:textfield}
.quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none}
.single_add_to_cart_button{flex:1;min-width:0}
.cart__rij{flex-wrap:wrap}
.content,.content-raster>*,.shop-raster>*,.account>*{min-width:0}
.account__tabel{overflow-x:auto}
.summary__fav{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff}
.leverbox{border-radius:var(--radius);background:var(--c-surface);padding:6px 18px}
.leverbox li{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:15px}
.leverbox li+li{border-top:1px solid var(--c-line)}
.leverbox .ico{color:var(--c-ink)}
.leverbox strong{font-weight:700}
.leverbox__groen{color:#2e7d32}
.leverbox img{width:34px;height:34px;border-radius:5px;margin-left:auto;background:#fff}
.productinfo{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.productinfo li{display:flex;flex-direction:column;gap:4px;padding:14px;border:1.5px solid var(--c-line);border-radius:var(--radius)}
.productinfo .ico{justify-content:flex-start;color:var(--c-primary-2)}
.productinfo__label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sub)}
.productinfo__waarde{font-size:15px;font-weight:600;line-height:1.3}

.product-tabs{padding:0 0 64px}
.pdp-tabs{display:flex;gap:4px;border-bottom:1.5px solid var(--c-line);margin-bottom:30px;overflow-x:auto}
.pdp-tabs li a{display:flex;align-items:center;gap:8px;height:54px;padding:0 20px;color:var(--c-sub);font-size:16px;font-weight:700;border-bottom:3px solid transparent;margin-bottom:-1.5px;white-space:nowrap}
.pdp-tabs li.active a{color:var(--c-ink);border-bottom-color:var(--c-primary)}
.pdp-tabs li a span{font-size:13px;font-weight:600;padding:2px 7px;border-radius:4px;background:var(--c-surface)}
.tabs__inhoud{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px}
.beschrijving h2{font-size:24px;font-weight:800;margin-bottom:12px}
.beschrijving h3{font-size:18px;font-weight:700;margin:22px 0 8px}
.beschrijving p{font-size:16.5px;color:#3a3a37}
.beschrijving p+p{margin-top:12px}
.beschrijving ul li{position:relative;padding-left:24px;font-size:16px;color:#3a3a37}
.beschrijving ul li+li{margin-top:6px}
.beschrijving ul li::before{content:"";position:absolute;left:4px;top:.6em;width:9px;height:9px;border-radius:2px;background:var(--c-primary)}
.shop_attributes{border:1.5px solid var(--c-line);border-radius:var(--radius);overflow:hidden;border-collapse:separate;border-spacing:0}
.shop_attributes caption{caption-side:top;text-align:left;font-size:24px;font-weight:800;padding-bottom:12px}
.shop_attributes th,.shop_attributes td{padding:12px 16px;font-size:15px;text-align:left;vertical-align:top;border-top:1px solid var(--c-line)}
.shop_attributes tr:first-child th,.shop_attributes tr:first-child td{border-top:0}
.shop_attributes th{width:42%;font-weight:600;color:var(--c-sub);background:var(--c-surface)}
.product-reviews{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:28px;margin-top:48px;padding-top:40px;border-top:1.5px solid var(--c-line)}
.product-reviews__lijst{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.balkjes li{display:grid;grid-template-columns:28px minmax(0,1fr) 32px;align-items:center;gap:10px;font-size:13.5px;color:var(--c-sub)}
.balkjes li+li{margin-top:6px}
.balkjes i{display:block;height:7px;border-radius:4px;background:var(--c-line);overflow:hidden}
.balkjes b{display:block;height:100%;background:var(--c-primary)}
.reviews__score .balkjes{margin-top:16px}
.reviews__score .balkjes li{color:var(--c-dark-sub)}
.reviews__score .balkjes i{background:#2c2c2a}
.reviews__score .btn{margin-top:18px}
.w-100{width:100%}.w-10{width:10%}.w-3{width:3%}.w-2{width:2%}.w-85{width:85%}.w-0{width:0}

/* sticky bestelbalk: gedrag: verschijnt (translateY) zodra form.cart uit beeld
   is (IntersectionObserver), verdwijnt weer als het formulier terug in beeld komt.
   Knop scrollt naar de maatkeuze als er nog geen maat gekozen is, anders voegt hij toe. */
.bestelbalk{position:fixed;left:0;right:0;bottom:0;z-index:45;background:#fff;border-top:1px solid var(--c-line);box-shadow:0 -6px 20px rgba(0,0,0,.08)}
.bestelbalk__in{display:flex;align-items:center;gap:16px;min-height:76px}
.bestelbalk img{width:52px;height:52px;border-radius:var(--radius-sm);background:var(--c-surface);object-fit:contain}
.bestelbalk__naam{flex:1;min-width:0;font-size:15px;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bestelbalk__naam span{display:block;font-size:13px;font-weight:500;color:var(--c-sub)}
.bestelbalk .price{margin:0;font-size:20px;font-weight:800}
.bestelbalk .btn{min-width:240px}
.bestelbalk-ruimte{height:76px}

/* ── WINKELWAGEN / AFREKENEN / BEDANKT: kale schil ─────────────────────── */
.kaal{background:var(--c-surface);min-height:100vh}
.kaal-kop{background:#fff;border-bottom:1px solid var(--c-line)}
.kaal-kop__in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:72px;gap:16px}
.kaal-kop__terug{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--c-sub)}
.kaal-kop__terug:hover{color:var(--c-ink)}
.kaal-kop__logo img{width:160px;height:auto}
.kaal-kop__veilig{justify-self:end;display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--c-sub)}
.kaal-kop__veilig .ico{color:#2e7d32}
.kaal-kop__veilig .ico svg{width:17px;height:17px}
.stappen{background:#fff;border-bottom:1px solid var(--c-line)}
.stappen__lijst{display:flex;justify-content:center;gap:0;padding:14px 0;counter-reset:stap}
.stappen__item{display:flex;align-items:center;gap:10px;font-size:14.5px;font-weight:600;color:var(--c-sub)}
.stappen__item+.stappen__item::before{content:"";width:56px;height:2px;margin:0 14px;background:var(--c-line)}
.stappen__nr{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--c-line);background:#fff;font-size:13px;font-weight:700}
.stappen__item.is-klaar{color:var(--c-ink)}
.stappen__item.is-klaar .stappen__nr{border-color:var(--c-success);background:var(--c-success);color:#fff}
.stappen__item.is-klaar+.stappen__item::before{background:var(--c-success)}
.stappen__item.is-nu{color:var(--c-ink)}
.stappen__item.is-nu .stappen__nr{border-color:var(--c-ink);background:var(--c-ink);color:#fff}
.kaal-main{padding:30px 0 64px}
.kaal-raster{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:28px;align-items:start}
.kaal-titel{font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.02em;margin-bottom:18px}
.kaal-titel span{font-weight:500;color:var(--c-sub)}
.kaart{background:#fff;border:1px solid var(--c-line);border-radius:var(--radius);box-shadow:var(--shadow)}
.kaart--pad{padding:22px}
.kaart+.kaart{margin-top:16px}
.kaart__titel{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:19px;font-weight:700}
.kaart__nr{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--c-ink);color:#fff;font-size:14px;font-weight:700}
.gratis-balk{display:flex;flex-direction:column;gap:9px;padding:16px 20px;margin-bottom:16px;border-radius:var(--radius);background:#fff;border:1px solid var(--c-line)}
.gratis-balk__tekst{display:flex;align-items:center;gap:10px;font-size:15.5px}
.gratis-balk__tekst strong{font-weight:700}
.gratis-balk__lijn{height:7px;border-radius:4px;background:var(--c-line);overflow:hidden}
.gratis-balk__lijn b{display:block;height:100%;width:74%;background:var(--c-primary)}
.woocommerce-cart-form__contents{border:0}
.woocommerce-cart-form__contents thead{display:none}
.cart_item{display:grid;grid-template-columns:96px minmax(0,1fr) auto auto 40px;align-items:center;gap:16px;padding:18px 20px;border-top:1px solid var(--c-line)}
.cart_item:first-child{border-top:0}
.cart_item td{padding:0}
.cart_item .product-thumbnail img{width:96px;height:96px;border-radius:var(--radius-sm);background:var(--c-surface);object-fit:contain}
.cart_item .product-name a{display:block;font-size:16.5px;font-weight:600;color:var(--c-ink);line-height:1.3}
.cart_item .product-brand{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub);margin-bottom:3px}
.cart_item .variation{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.cart_item .stock{display:block;margin-top:6px;font-size:13px;font-weight:600;color:#2e7d32}
.cart_item .quantity{height:44px}
.cart_item .quantity button{width:36px}
.cart_item .quantity .qty{width:34px;font-size:15px}
.cart_item .product-subtotal{min-width:86px;text-align:right;font-size:17px;font-weight:700}
.cart_item .remove{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-sm);color:var(--c-sub)}
.cart_item .remove:hover{background:var(--c-surface);color:var(--c-ink)}
.coupon{display:flex;gap:8px;padding:16px 20px;border-top:1px solid var(--c-line)}
.coupon input{flex:1;min-width:0;height:46px;padding:0 14px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);font-size:15px}
.coupon .btn{min-height:46px;padding:0 18px;font-size:13.5px}
.cart_totals,.bestel-overzicht{position:sticky;top:20px}
.cart_totals h2,.bestel-overzicht h2{font-size:19px;font-weight:700;margin-bottom:14px}
.shop_table.totalen{border:0}
.totalen th,.totalen td{padding:8px 0;font-size:15.5px;text-align:left}
.totalen td{text-align:right;font-weight:600}
.totalen .gratis{color:#2e7d32;font-weight:700}
.totalen .order-total th,.totalen .order-total td{padding-top:14px;border-top:1px solid var(--c-line);font-size:17px;font-weight:700}
.totalen .order-total td strong{font-size:26px;font-weight:800}
.totalen small{display:block;font-size:12.5px;font-weight:500;color:var(--c-sub)}
.wc-proceed-to-checkout{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.express{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.express__knop{display:flex;align-items:center;justify-content:center;gap:6px;height:50px;border:0;border-radius:var(--radius-sm);font-size:16px;font-weight:700}
.express__knop--apple{background:#000;color:#fff}
.express__knop--apple .ico svg{width:18px;height:18px;fill:currentColor;stroke:none}
.express__knop--klarna{background:#ffb3c7;color:#17120f}
.of-lijn{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--c-sub)}
.of-lijn::before,.of-lijn::after{content:"";flex:1;height:1px;background:var(--c-line)}
.vertrouwen{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;margin-top:16px;padding-top:16px;border-top:1px solid var(--c-line);font-size:13.5px;color:var(--c-sub)}
.vertrouwen li{display:flex;align-items:center;gap:8px}
.vertrouwen .ico{color:var(--c-ink)}
.vertrouwen .ico svg{width:16px;height:16px}

form.checkout .kaart{padding:22px}
.velden{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.form-row{display:flex;flex-direction:column;gap:6px;margin:0}
.form-row-wide{grid-column:1/-1}
.form-row label{font-size:13px;font-weight:700;letter-spacing:.04em}
.form-row label .required{color:var(--c-primary-2);text-decoration:none}
.input-text,.form-row select{height:52px;padding:0 14px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:16px;outline:none;width:100%}
.input-text:focus,.form-row select:focus{border-color:var(--c-ink)}
.form-row__hint{font-size:13px;color:var(--c-sub)}
.form-row.is-ok .input-text{border-color:var(--c-success)}
.keuzes{display:flex;flex-direction:column;gap:10px}
.keuze{display:grid;grid-template-columns:20px 52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid var(--c-line);border-radius:var(--radius);cursor:pointer}
.keuze input{width:20px;height:20px;margin:0;accent-color:var(--c-ink)}
.keuze:has(input:checked){border-color:var(--c-ink);box-shadow:inset 0 0 0 1px var(--c-ink)}
.keuze__logo{display:flex;align-items:center;justify-content:center;width:52px;height:40px;border:1px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:11px;font-weight:800}
.keuze__logo img{max-width:44px;max-height:32px;width:auto;height:auto}
.keuze__label{display:block;font-size:16px;font-weight:600;line-height:1.3}
.keuze__sub{display:block;font-size:13.5px;color:var(--c-sub)}
.keuze__prijs{font-size:15px;font-weight:700}
.keuze__prijs.is-gratis{color:#2e7d32}
.keuze--uitgelicht{border-color:var(--c-ink)}
.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:15px;cursor:pointer}
.checkbox input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--c-ink)}
.overzicht-item{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0}
.overzicht-item+.overzicht-item{border-top:1px solid var(--c-line)}
.overzicht-item__foto{position:relative}
.overzicht-item__foto img{width:60px;height:60px;border-radius:var(--radius-sm);background:var(--c-surface);object-fit:contain}
.overzicht-item__n{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--c-ink);color:#fff;font-size:12px;font-weight:700;line-height:22px;text-align:center}
.overzicht-item__naam{font-size:14.5px;font-weight:600;line-height:1.3}
.overzicht-item__naam span{display:block;font-size:13px;font-weight:500;color:var(--c-sub)}
.overzicht-item__prijs{font-size:15px;font-weight:700}
#place_order{margin-top:6px}
.voorwaarden{margin-top:10px;font-size:13px;color:var(--c-sub);text-align:center}

.bedankt-hero{background:var(--c-dark);color:#fff;padding:44px 0}
.bedankt-hero__in{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:end}
.bedankt-hero__vink{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:18px;border-radius:50%;background:var(--c-success);color:#fff}
.bedankt-hero__vink .ico svg{width:28px;height:28px;stroke-width:3}
.bedankt-hero__title{font-size:clamp(32px,4.6vw,56px);font-weight:800;letter-spacing:-.03em;line-height:1.05}
.bedankt-hero__text{margin-top:14px;max-width:600px;font-size:18px;color:#cfcfca}
.eta{padding:22px;border:1px solid var(--c-dark-line);border-bottom:3px solid var(--c-primary);border-radius:var(--radius);background:var(--c-dark-2)}
.eta__label{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-dark-sub)}
.eta__dag{display:block;margin-top:4px;font-size:36px;font-weight:800;line-height:1.05}
.eta__sub{display:block;margin-top:6px;font-size:14.5px;color:#cfcfca}
.account-cta{background:var(--c-dark-2);color:#fff}
.account-cta__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:32px;align-items:center;padding-top:36px;padding-bottom:36px}
.account-cta__title{font-size:clamp(24px,3vw,34px);font-weight:800;letter-spacing:-.02em}
.account-cta__lijst{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 20px;margin-top:18px}
.account-cta__lijst li{display:flex;gap:10px;font-size:15px;color:#e2e2dc}
.account-cta__lijst .ico{color:var(--c-primary)}
.account-cta__form{display:flex;flex-direction:column;gap:12px;padding:22px;border-radius:var(--radius);background:#fff;color:var(--c-ink)}
.reis li{position:relative;display:flex;gap:14px;padding-bottom:20px}
.reis li:last-child{padding-bottom:0}
.reis li::before{content:"";position:absolute;left:14px;top:32px;bottom:0;width:2px;background:var(--c-line)}
.reis li:last-child::before{display:none}
.reis__nr{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex:0 0 30px;height:30px;border-radius:50%;border:2px solid var(--c-line);background:#fff;font-size:13px;font-weight:700;color:var(--c-sub)}
.reis li.is-klaar .reis__nr{border-color:var(--c-success);background:var(--c-success);color:#fff}
.reis__title{display:block;font-size:16.5px;font-weight:700}
.reis__text{display:block;font-size:15px;color:var(--c-sub)}
.reis__dag{display:block;margin-top:2px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-primary-2)}
.adresblok{display:flex;gap:12px;padding:14px 16px;border-left:3px solid var(--c-primary);border-radius:var(--radius-sm);background:var(--c-surface);font-size:15.5px;line-height:1.55}

/* ── MIJN ACCOUNT ───────────────────────────────────────────────────────── */
.account{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;padding-top:28px;padding-bottom:64px;align-items:start}
.woocommerce-MyAccount-navigation{position:sticky;top:100px;border:1px solid var(--c-line);border-radius:var(--radius);overflow:hidden;background:#fff}
.account__wie{display:flex;align-items:center;gap:12px;padding:18px;background:var(--c-dark);color:#fff}
.account__avatar{display:flex;align-items:center;justify-content:center;flex:0 0 44px;height:44px;border-radius:50%;background:var(--c-primary);font-size:18px;font-weight:800}
.account__naam{display:block;font-size:16px;font-weight:700;line-height:1.25}
.account__mail{display:block;font-size:13px;color:var(--c-dark-sub);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.woocommerce-MyAccount-navigation ul{padding:8px}
.woocommerce-MyAccount-navigation-link a{display:flex;align-items:center;gap:12px;height:46px;padding:0 12px;border-radius:var(--radius-sm);color:var(--c-ink);font-size:15px;font-weight:500}
.woocommerce-MyAccount-navigation-link a:hover{background:var(--c-surface);color:var(--c-ink)}
.woocommerce-MyAccount-navigation-link.is-active a{background:var(--c-ink);color:#fff;font-weight:700}
.woocommerce-MyAccount-navigation-link a .ico svg{width:18px;height:18px}
.woocommerce-MyAccount-navigation-link a b{margin-left:auto;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff);font-size:12px;line-height:22px;text-align:center}
.woocommerce-MyAccount-navigation-link--customer-logout{margin-top:6px;padding-top:6px;border-top:1px solid var(--c-line)}
.woocommerce-MyAccount-navigation-link--customer-logout a{color:var(--c-sub)}
.woocommerce-MyAccount-content{display:flex;flex-direction:column;gap:20px;min-width:0}
.account__titel{font-size:clamp(28px,3vw,38px);font-weight:800;letter-spacing:-.02em}
.lopend{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:22px;align-items:center;padding:22px;border-radius:var(--radius);background:var(--c-dark);color:#fff;border-bottom:3px solid var(--c-primary)}
.lopend img{width:110px;height:110px;border-radius:var(--radius-sm);background:#2a2a28;object-fit:contain}
.lopend__eyebrow{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-primary)}
.lopend__title{display:block;margin-top:4px;font-size:24px;font-weight:800;line-height:1.2}
.lopend__sub{display:block;margin-top:4px;font-size:15px;color:#cfcfca}
.spoor{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;max-width:460px;margin-top:12px}
.spoor i{height:5px;border-radius:3px;background:#3a3a37}
.spoor i.is-aan{background:var(--c-primary)}
.lopend__acties{display:flex;flex-direction:column;gap:8px}
.snel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.snel a{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--c-line);border-radius:var(--radius);background:#fff;color:var(--c-ink)}
.snel a:hover{border-color:var(--c-ink);color:var(--c-ink)}
.snel .ico{width:42px;height:42px;border-radius:var(--radius-sm);background:var(--c-surface)}
.snel__title{display:block;font-size:15.5px;font-weight:700;line-height:1.25}
.snel__sub{display:block;font-size:13px;color:var(--c-sub)}
.woocommerce-orders-table{border:1px solid var(--c-line);border-radius:var(--radius);overflow:hidden;border-collapse:separate;border-spacing:0;background:#fff}
.woocommerce-orders-table th{padding:12px 16px;background:var(--c-dark);color:#cfcfca;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-align:left;white-space:nowrap}
.woocommerce-orders-table td{height:72px;padding:0 16px;border-top:1px solid var(--c-line);font-size:15px;vertical-align:middle}
.woocommerce-orders-table td a{font-weight:700;color:var(--c-ink)}
.woocommerce-orders-table__cell-order-total{font-weight:700;text-align:right;white-space:nowrap}
.woocommerce-orders-table__cell-order-actions{text-align:right;white-space:nowrap}
.woocommerce-orders-table .woocommerce-button{display:inline-flex;align-items:center;height:38px;padding:0 14px;border-radius:var(--radius-sm);background:var(--c-ink);color:#fff;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.woocommerce-orders-table .woocommerce-button:hover{background:#000;color:#fff}
.woocommerce-orders-table .woocommerce-button--licht{background:#fff;border:1.5px solid var(--c-line);color:var(--c-ink);margin-left:6px}
.status{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 10px;border-radius:5px;font-size:13px;font-weight:700;white-space:nowrap}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.status--onderweg{background:#fdf0e6;color:#a8501a}
.status--bezorgd{background:#e8f5e9;color:#2e7d32}
.status--retour{background:#eef0f3;color:#3d4756}
.account-twee{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.blok-kop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.blok-kop h2{font-size:19px;font-weight:700}
.retourblok{display:flex;flex-direction:column;gap:12px}
.retourblok p{color:var(--c-sub);font-size:15px}

/* ── ZOEKEN ─────────────────────────────────────────────────────────────── */
/* Zoekpaneel: gedrag: opent bij focus in het zoekveld (desktop) of via het
   zoekicoon (telefoon, dan schermvullend). Live resultaten na 2 tekens, 200 ms
   debounce, toetsenbord ↑↓ + Enter. Escape of klik buiten sluit. Zonder query:
   recente + populaire zoektermen en categorieën. */
.zoek-overlay{position:fixed;inset:0;z-index:30;background:rgba(14,14,14,.45)}
.zoekpaneel{position:relative;z-index:49;background:#fff;border-bottom:1px solid var(--c-line);box-shadow:var(--shadow-lg)}
.zoekpaneel__in{display:grid;grid-template-columns:260px minmax(0,1fr) 300px;gap:32px;padding:26px var(--gutter) 30px}
.zoekpaneel__kop{display:block;margin-bottom:12px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub)}
.zoektermen li+li{margin-top:4px}
.zoektermen a{display:flex;align-items:center;gap:10px;height:38px;padding:0 10px;border-radius:var(--radius-sm);color:var(--c-ink);font-size:15px}
.zoektermen a:hover{background:var(--c-surface);color:var(--c-ink)}
.zoektermen .ico{color:var(--c-sub)}
.zoektermen .ico svg{width:16px;height:16px}
.zoektermen mark{background:transparent;color:inherit;font-weight:700}
.zoekresultaten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.zoekresultaat{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center;padding:8px;border-radius:var(--radius);color:var(--c-ink)}
.zoekresultaat:hover,.zoekresultaat.is-actief{background:var(--c-surface);color:var(--c-ink)}
.zoekresultaat img{width:72px;height:72px;border-radius:var(--radius-sm);background:var(--c-surface);object-fit:contain}
.zoekresultaat__merk{display:block;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub)}
.zoekresultaat__naam{display:block;font-size:15px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zoekresultaat .price{margin-top:2px;font-size:15px}
.zoekpaneel__alles{display:flex;justify-content:center;margin-top:14px}
.zoekcats{display:flex;flex-direction:column;gap:8px}
.zoekcats a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--c-line);border-radius:var(--radius);color:var(--c-ink);font-size:15px;font-weight:600}
.zoekcats a span{font-size:13px;font-weight:500;color:var(--c-sub)}
.zoekcats a:hover{border-color:var(--c-ink);color:var(--c-ink)}
.zoek-gids{display:flex;gap:12px;align-items:center;margin-top:14px;padding:12px;border-radius:var(--radius);background:var(--c-dark);color:#fff}
.zoek-gids img{width:64px;height:64px;border-radius:var(--radius-sm);object-fit:cover}
.zoek-gids span{font-size:14.5px;font-weight:600;line-height:1.35}
.zoek-gids small{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-primary)}

/* ── 404 + CONTENT ──────────────────────────────────────────────────────── */
.niet-gevonden{background:var(--c-dark);color:#fff;padding:72px 0 64px}
.niet-gevonden__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:40px;align-items:center}
.niet-gevonden__code{display:block;font-size:clamp(90px,14vw,180px);font-weight:800;line-height:.9;letter-spacing:-.05em;color:var(--c-primary)}
.niet-gevonden__title{margin-top:14px;font-size:clamp(28px,3.6vw,44px);font-weight:800;letter-spacing:-.02em}
.niet-gevonden__text{margin-top:12px;max-width:520px;font-size:17px;color:#cfcfca}
.niet-gevonden .zoekveld{margin-top:24px;background:#fff;border-color:#fff}
.niet-gevonden__links{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.niet-gevonden__links a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 18px;border:1px solid var(--c-dark-line);border-radius:var(--radius);background:var(--c-dark-2);color:#fff;font-weight:600}
.niet-gevonden__links a:hover{border-color:var(--c-primary);color:#fff}
.niet-gevonden__links .ico{color:var(--c-primary)}

.pagina-kop{background:var(--c-dark);color:#fff;padding:44px 0 40px}
.pagina-kop__title{font-size:clamp(30px,4vw,50px);font-weight:800;letter-spacing:-.02em}
.pagina-kop__text{margin-top:12px;max-width:640px;font-size:18px;color:#cfcfca}
.pagina-kop .kruimel{padding:0 0 18px}
.pagina-kop .kruimel,.pagina-kop .kruimel a{color:var(--c-dark-sub)}
.pagina-snel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:-28px;position:relative}
.pagina-snel a{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--c-line);border-radius:var(--radius);background:#fff;color:var(--c-ink);box-shadow:var(--shadow)}
.pagina-snel a:hover{border-color:var(--c-ink);color:var(--c-ink)}
.pagina-snel .ico{justify-content:flex-start;color:var(--c-primary-2)}
.pagina-snel strong{font-size:17px;font-weight:700}
.pagina-snel span{font-size:14px;color:var(--c-sub)}
.content-raster{display:grid;grid-template-columns:250px minmax(0,1fr) 320px;gap:40px;padding-top:48px;padding-bottom:64px;align-items:start}
.content-nav{position:sticky;top:100px}
.content-nav a{display:block;padding:9px 12px;border-left:2px solid var(--c-line);color:var(--c-sub);font-size:15px}
.content-nav a:hover{color:var(--c-ink)}
.content-nav a.is-actief{border-left-color:var(--c-primary);color:var(--c-ink);font-weight:700}
.content h2{font-size:26px;font-weight:800;letter-spacing:-.01em;margin:40px 0 12px;scroll-margin-top:110px}
.content h2:first-child{margin-top:0}
.content p{font-size:16.5px;color:#3a3a37}
.content p+p{margin-top:12px}
.content-tabel{margin-top:16px;border:1px solid var(--c-line);border-radius:var(--radius);overflow:hidden;border-collapse:separate;border-spacing:0}
.content-tabel th,.content-tabel td{padding:12px 16px;font-size:15px;text-align:left;border-top:1px solid var(--c-line)}
.content-tabel thead th{border-top:0;background:var(--c-surface);font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sub)}
.faq{margin-top:14px;border-top:1px solid var(--c-line)}
.faq details{border-bottom:1px solid var(--c-line)}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;font-size:16.5px;font-weight:700;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{transition:transform .15s}
.faq details[open] summary .ico{transform:rotate(45deg)}
.faq details p{padding:0 0 16px}
.contactblok{position:sticky;top:100px;display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:var(--radius);background:var(--c-dark);color:#fff}
.contactblok__title{font-size:20px;font-weight:700}
.contactblok p{color:#cfcfca;font-size:15px}
.contactblok__regel{display:flex;align-items:center;gap:12px;font-size:15.5px;color:#fff}
.contactblok__regel .ico{color:var(--c-primary)}
.contactblok__open{display:flex;align-items:center;gap:8px;font-size:14px;color:#cfcfca}
.contactblok__open::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-success)}

/* ── telefoonvensters / bottom-sheet ────────────────────────────────────── */
/* Filter-sheet (catalogus-sprint): knop "Filters" opent de filterkolom als bottom-sheet
   (85vh, sleepgreep, achtergrond dimt). */

/* ── responsive ─────────────────────────────────────────────────────────── */
@media (max-width:1280px){
  .hoofdmenu__link{padding:0 11px;font-size:14.5px}
  .topbar__usps li:nth-child(n+3){display:none}
  .categorieen__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .merken__lijst{grid-template-columns:repeat(4,minmax(0,1fr))}
  .reviews__lijst{grid-template-columns:repeat(2,minmax(0,1fr))}
  .reviews__lijst .review:nth-child(3){display:none}
  .content-raster{grid-template-columns:220px minmax(0,1fr)}
  .content-raster .contactblok{grid-column:2;position:static}
  .zoekpaneel__in{grid-template-columns:220px minmax(0,1fr)}
  .zoekpaneel__in>:last-child{display:none}
}
@media (max-width:1100px){
  .account{grid-template-columns:220px minmax(0,1fr);gap:22px}
  .snel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woocommerce-orders-table thead{display:none}
  .woocommerce-orders-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:14px 16px;border-top:1px solid var(--c-line)}
  .woocommerce-orders-table tr:first-child{border-top:0}
  .woocommerce-orders-table td{display:block;height:auto;padding:0;border:0}
  .woocommerce-orders-table__cell-order-actions{grid-column:1/-1;text-align:left;margin-top:6px}
  .hoofdmenu__link{padding:0 9px;font-size:14px}
  .hoofdmenu__item--extra{display:none}
  ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
  .shop-raster{grid-template-columns:240px minmax(0,1fr);gap:28px}
  .product-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
  .productinfo{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kaal-raster{grid-template-columns:minmax(0,1fr) 360px}
  .mega__in{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mega__uitgelicht{display:none}
  .site-footer__top{grid-template-columns:repeat(3,minmax(0,1fr))}
  .site-footer__top>:first-child{grid-column:1/-1}
}
@media (max-width:900px){
  .section{padding:44px 0}
  .topbar__usps li:nth-child(n+2){display:none}
  .hoofdmenu{display:none}
  .site-header__in{grid-template-columns:auto 1fr auto;gap:12px;min-height:64px}
  .site-header__menu-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:transparent}
  .site-header__logo{justify-self:center}
  .site-header__logo img{width:140px}
  .site-header .zoekveld{grid-column:1/-1;grid-row:2;max-width:none;margin-bottom:10px;height:46px}
  .kopknop{min-width:44px;padding:6px}
  .kopknop__label{display:none}
  .kopknop__badge{right:0}
  .kopknop--account{display:none}
  .hero__in{grid-template-columns:1fr;min-height:0}
  .hero__media{order:-1;margin:0 calc(var(--gutter)*-1)}
  .hero__media img{aspect-ratio:4/3;height:auto}
  .hero__tekst{padding:28px 0 36px}
  .usps__lijst{grid-template-columns:repeat(2,minmax(0,1fr))}
  .usps__item:nth-child(3){border-left:0}
  .usps__item:nth-child(n+3){border-top:1px solid var(--c-line)}
  .doelgroepen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .merken__in{flex-direction:column;align-items:flex-start;gap:14px}
  .merken__lijst{width:100%}
  .campagne__in{grid-template-columns:1fr}
  .campagne__media img{min-height:0;aspect-ratio:16/10}
  .campagne__tekst{padding:28px 24px}
  .kennis__grid{grid-template-columns:1fr;gap:12px}
  .kennis__grid .gids{display:grid;grid-template-columns:120px minmax(0,1fr)}
  .kennis__grid .gids img{height:100%;aspect-ratio:auto}
  .kennis__grid .gids__body{padding:14px 16px}
  .kennis__grid .gids__text{display:none}
  .gids__title{font-size:17px}
  .reviews__in{grid-template-columns:1fr}
  .nieuwsbrief__in{grid-template-columns:1fr;gap:16px;padding-top:36px;padding-bottom:36px}
  .nieuwsbrief__klein{grid-column:1}
  /* categorie: filters als bottom-sheet */
  .shop-raster{grid-template-columns:1fr}
  .shop-balk__filterknop{display:inline-flex;min-height:44px;padding:0 16px;font-size:14px}
  .filters{position:fixed;left:0;right:0;bottom:0;z-index:60;max-height:85vh;display:flex;flex-direction:column;background:#fff;border-radius:14px 14px 0 0;box-shadow:var(--shadow-lg);transform:translateY(105%);transition:transform .25s ease}
  .filters:target{transform:none}
  .filters:target~.sheet-dim{display:block}
  .sheet-dim{display:none;position:fixed;inset:0;z-index:55;background:rgba(14,14,14,.5)}
  .filters__kop{display:flex;align-items:center;justify-content:space-between;padding:16px var(--gutter) 12px;border-bottom:1px solid var(--c-line);font-size:18px;font-weight:800}
  .filters__kop::before{content:"";position:absolute;top:7px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--c-line)}
  .filters__kop a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--c-ink)}
  .filters__body{flex:1;overflow-y:auto;padding:14px var(--gutter)}
  .filter__voet{display:flex;gap:10px;padding:12px var(--gutter);border-top:1px solid var(--c-line)}
  .filter__voet .btn{flex:1}
  .woocommerce-result-count{order:3;width:100%}
  /* product */
  .product-top{grid-template-columns:1fr;gap:20px;padding-top:12px}
  .woocommerce-product-gallery{position:static;grid-template-columns:1fr;margin:0 calc(var(--gutter)*-1)}
  .woocommerce-product-gallery__wrapper{border-radius:0}
  .flex-control-thumbs{order:2;flex-direction:row;overflow-x:auto;padding:0 var(--gutter)}
  .flex-control-thumbs li{flex:0 0 64px}
  .tabs__inhoud,.product-reviews{grid-template-columns:1fr;gap:28px}
  .bestelbalk__in{gap:10px;min-height:68px}
  .bestelbalk img,.bestelbalk__naam{display:none}
  .bestelbalk .price{flex:1}
  .bestelbalk .btn{min-width:0;flex:1.4}
  /* kaal */
  .kaal-raster{grid-template-columns:1fr}
  .cart_totals,.bestel-overzicht{position:static}
  .bestel-overzicht{order:-1}
  .kaal-kop__terug span,.kaal-kop__veilig span{display:none}
  .stappen__item span:not(.stappen__nr){display:none}
  .stappen__item.is-nu span{display:inline}
  .stappen__item+.stappen__item::before{width:24px;margin:0 8px}
  .bedankt-hero__in,.account-cta__in{grid-template-columns:1fr}
  .account-cta__lijst{grid-template-columns:1fr}
  /* account */
  .account{grid-template-columns:1fr;gap:18px;padding-top:18px}
  .woocommerce-MyAccount-navigation{position:static}
  .woocommerce-MyAccount-navigation ul{display:flex;overflow-x:auto;gap:4px;padding:8px}
  .woocommerce-MyAccount-navigation-link a{white-space:nowrap;height:40px}
  .woocommerce-MyAccount-navigation-link--customer-logout{margin:0;padding:0;border:0}
  .lopend{grid-template-columns:72px minmax(0,1fr)}
  .lopend img{width:72px;height:72px}
  .lopend__acties{grid-column:1/-1;flex-direction:row}
  .lopend__acties .btn{flex:1}
  .snel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .account-twee{grid-template-columns:1fr}
  .woocommerce-orders-table thead{display:none}
  .woocommerce-orders-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:14px 16px;border-top:1px solid var(--c-line)}
  .woocommerce-orders-table tr:first-child{border-top:0}
  .woocommerce-orders-table td{display:block;height:auto;padding:0;border:0}
  .woocommerce-orders-table__cell-order-actions{grid-column:1/-1;text-align:left;margin-top:6px}
  /* zoeken */
  .zoekpaneel{position:fixed;inset:0;overflow-y:auto}
  .zoekpaneel__in{grid-template-columns:1fr;gap:22px;padding:16px var(--gutter) 28px}
  .zoekpaneel__mob{display:flex;gap:8px;align-items:center}
  .zoekresultaten{grid-template-columns:1fr}
  /* 404 + content */
  .niet-gevonden{padding:44px 0}
  .niet-gevonden__in{grid-template-columns:1fr;gap:28px}
  .pagina-snel{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-20px}
  .content-raster{grid-template-columns:1fr;gap:24px;padding-top:32px;padding-bottom:48px}
  .content-nav{position:static;display:flex;gap:6px;overflow-x:auto}
  .content-nav a{flex:0 0 auto;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);white-space:nowrap}
  .content-nav a.is-actief{border-color:var(--c-ink)}
  .content-raster .contactblok{grid-column:auto}
  .site-footer__top{grid-template-columns:1fr 1fr;gap:28px;padding:40px 0 28px}
}
@media (min-width:901px){.zoekpaneel__mob{display:none}}
@media (max-width:600px){
  body{font-size:15.5px}
  .section{padding:36px 0}
  .section-title{font-size:26px}
  .btn{min-height:48px;padding:0 18px;font-size:14px}
  .topbar__links{display:none}
  .topbar__in{justify-content:center}
  .hero__title{font-size:36px}
  .hero__intro{font-size:16.5px}
  .hero__ctas .btn{flex:1}
  .hero__cert{font-size:13px}
  .usps__item{flex-direction:column;align-items:flex-start;gap:8px;padding:14px 12px}
  .usps__item .ico{width:36px;height:36px}
  .usps__title{font-size:14px}
  .usps__text{font-size:12.5px}
  .categorieen__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .categorieen__tabs{overflow-x:auto}
  .cat-tegel img{aspect-ratio:1/1}
  .cat-tegel__title{font-size:16px}
  .doelgroepen{grid-template-columns:1fr;gap:8px}
  .merken__lijst{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
  .merken__lijst a{height:50px}
  .merken__lijst img{max-width:70px;max-height:22px}
  ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 10px}
  .woocommerce-loop-product__title{font-size:14.5px}
  .price{font-size:15.5px}
  .product__sizes{display:none}
  ul.products .button{height:40px;font-size:12px;letter-spacing:.04em}
  .product__fav{width:32px;height:32px}
  .reviews__lijst{grid-template-columns:1fr}
  .reviews__lijst .review:nth-child(n+2){display:none}
  .reviews__score{display:grid;grid-template-columns:auto 1fr;gap:0 16px;align-items:center}
  .reviews__score .balkjes,.reviews__score .btn{grid-column:1/-1}
  .nieuwsbrief__form{flex-direction:column}
  .cat-kop__text{font-size:15.5px}
  .shop-balk{gap:8px}
  .shop-balk__filterknop,.woocommerce-ordering{flex:1}
  .woocommerce-ordering select{width:100%}
  .page-numbers a,.page-numbers span{min-width:40px;height:40px}
  .page-numbers li:nth-child(4),.page-numbers li:nth-child(5){display:none}
  .summary .price{font-size:26px}
  form.cart{padding:16px;border:0;padding:0}
  .productinfo li{padding:12px}
  .shop_attributes th{width:46%}
  .product-reviews__lijst{grid-template-columns:1fr}
  .cart_item{grid-template-columns:76px minmax(0,1fr) 36px;gap:12px;padding:16px}
  .cart_item .product-thumbnail{grid-row:1/3}
  .cart_item .product-thumbnail img{width:76px;height:76px}
  .cart_item .product-name{grid-column:2}
  .cart_item .product-remove{grid-column:3;grid-row:1}
  .cart_item .product-quantity{grid-column:2;grid-row:2}
  .cart_item .product-subtotal{grid-column:3;grid-row:2;min-width:0;align-self:center;font-size:16px}
  .cart_item{grid-template-columns:76px minmax(0,1fr) auto}
  .coupon{flex-direction:column}
  .velden{grid-template-columns:1fr}
  .keuze{grid-template-columns:20px 44px minmax(0,1fr);gap:10px}
  .keuze__logo{width:44px}
  .keuze__prijs{grid-column:3}
  .express{grid-template-columns:1fr}
  .vertrouwen{grid-template-columns:1fr}
  .eta__dag{font-size:30px}
  .snel{grid-template-columns:1fr}
  .lopend__title{font-size:20px}
  .lopend__acties{flex-direction:column}
  .niet-gevonden__links{grid-template-columns:1fr}
  .pagina-snel{grid-template-columns:1fr}
  .site-footer__top{grid-template-columns:1fr}
  .site-footer__onder{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}


/* ==========================================================================
   RICHTING 2: strak en foto-gedreven
   Minder kaders, iconen en labels. Koppen in hoofdletters, foto's over de
   volle breedte, witte knop op donker. Overschrijft de regels hierboven.
   ========================================================================== */
.section-title{font-size:clamp(24px,2.4vw,34px);font-weight:800;letter-spacing:.01em;text-transform:uppercase}
.section__head--center{justify-content:center;text-align:center;margin-bottom:28px}
.section__meer{display:flex;justify-content:center;margin-top:36px}
.section--flush{padding-top:0}
.btn{border-radius:var(--radius-sm);letter-spacing:.04em}
.btn--wit{background:#fff;color:var(--c-ink)}
.btn--wit:hover{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff)}
.btn--ghost{border-width:1.5px}

/* topbar: alleen tekst */
.topbar{font-size:12.5px;letter-spacing:.04em}
.topbar__in{justify-content:center;min-height:34px}
.topbar__usps{gap:0}
.topbar__usps li{padding:0 18px;color:#cfcfca}
.topbar__usps li+li{border-left:1px solid #3a3a37}

/* header: wit met logo in het midden */
.site-header{position:relative;border-bottom:0}
.site-header__in{grid-template-columns:1fr auto 1fr;min-height:84px;gap:16px}
.site-header__logo{grid-column:2;justify-self:center}
.site-header__logo img{width:190px}
.site-header__menu-btn{grid-column:1;grid-row:1;justify-self:start}
.site-header__acties{grid-column:3;grid-row:1;justify-self:end;gap:2px}
.kopknop{min-width:44px;height:44px;padding:0;justify-content:center}
.kopknop__badge{top:3px;right:2px}
.kopknop--zoek{order:-1}

/* zwarte menubalk, gecentreerd, hoofdletters */
.hoofdmenu{position:sticky;top:0;z-index:50;background:var(--c-dark);display:block}
.hoofdmenu__lijst{justify-content:center;gap:4px}
.hoofdmenu__link{height:52px;padding:0 16px;font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid transparent}
.hoofdmenu__link .ico svg{width:15px;height:15px}
.hoofdmenu__link--actie{color:var(--c-primary)}

/* hero: foto over de volle breedte, tekst erop */
.hero{position:relative;min-height:640px;display:flex;align-items:center;background:var(--c-dark)}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.82) 0%,rgba(10,10,10,.45) 45%,rgba(10,10,10,0) 75%)}
.hero__in{position:relative;z-index:1;display:block;min-height:0}
.hero__tekst{display:flex;flex-direction:column;align-items:flex-start;gap:22px;max-width:640px;padding:80px 0}
.hero__eyebrow{font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.hero__title{font-size:clamp(34px,4.2vw,58px);font-weight:800;line-height:1.08;letter-spacing:0;text-transform:uppercase}
.hero__teller{position:absolute;left:50%;bottom:30px;z-index:1;display:flex;align-items:stretch;transform:translateX(-50%);background:#fff;color:var(--c-ink);border-radius:2px}
.hero__teller button{width:40px;height:40px;border:0;background:transparent;color:var(--c-ink)}
.hero__teller button .ico svg{width:16px;height:16px}
.hero__teller span{display:flex;align-items:center;padding:0 12px;border-left:1px solid var(--c-line);border-right:1px solid var(--c-line);font-size:13px}

/* usp-regel: alleen tekst */
.usps{background:#fff}
.usps__lijst{grid-template-columns:repeat(4,minmax(0,1fr))}
.usps__item{justify-content:center;padding:16px 12px;font-size:13.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-align:center}

/* categorieën: foto + titel, geen rand, geen telling */
.categorieen__grid{gap:12px}
.cat-tegel{border-radius:0;background:var(--c-surface)}
.cat-tegel img{aspect-ratio:3/4}
.cat-tegel__title{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 18px;background:linear-gradient(0deg,rgba(10,10,10,.75),rgba(10,10,10,0));color:#fff;font-size:17px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.doelgroepen{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:0}
.doelgroep{position:relative;display:block;padding:0;border:0;border-radius:0;overflow:hidden;background:var(--c-dark);color:#fff}
.doelgroep:hover{color:#fff}
.doelgroep img{width:100%;aspect-ratio:16/10;object-fit:cover;opacity:.8;transition:opacity .2s}
.doelgroep:hover img{opacity:.6}
.doelgroep__title{position:absolute;left:20px;right:20px;bottom:48px;font-size:20px;font-weight:800;line-height:1.2;letter-spacing:.02em;text-transform:uppercase}
.doelgroep__link{position:absolute;left:20px;bottom:20px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-bottom:2px solid var(--c-primary)}

/* merken: rustig, op wit */
.merken{background:#fff;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line);padding:22px 0}
.merken__lijst a{background:transparent;opacity:1;filter:invert(1) grayscale(1);opacity:.55}
.merken__lijst a:hover{background:transparent;opacity:1}

/* productkaart: geen rand, minder ruis */
.product__media{border-radius:0}
.badges{top:0;left:0;gap:0}
.onsale,.badge{border-radius:0;height:26px;padding:0 10px}
.product__fav{background:transparent;box-shadow:none}
.product__brand{margin-top:14px;letter-spacing:.08em}
.woocommerce-loop-product__title{font-weight:500}
.price ins{color:var(--c-ink)}
.price del{color:var(--c-sub)}
ul.products .button{height:42px;border-width:1px;font-size:12.5px;letter-spacing:.06em}
ul.products .button.add_to_cart_button{background:var(--c-ink);border-color:var(--c-ink)}
ul.products .button.add_to_cart_button:hover{background:var(--c-primary);border-color:var(--c-primary)}
ul.products .button .ico{display:none}

/* campagne: foto over de volle breedte */
.campagne{position:relative;display:flex;align-items:center;min-height:520px;background:var(--c-dark);padding:0}
.campagne__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.campagne::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,0) 30%,rgba(10,10,10,.8) 80%)}
.campagne__in{position:relative;z-index:1;display:flex;justify-content:flex-end;background:transparent;border-radius:0;overflow:visible}
.campagne__tekst{max-width:520px;padding:64px 0;align-items:flex-start}
.campagne__title{font-size:clamp(30px,3.6vw,50px);line-height:1.08;text-transform:uppercase;letter-spacing:0}

/* kenniscentrum: foto + label + titel */
.gids{border:0;border-radius:0;background:transparent;gap:0}
.gids img{margin-bottom:14px}
.gids__soort{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub)}
.gids__title{margin-top:4px;font-size:19px;font-weight:700;line-height:1.3}
.gids:hover .gids__title{text-decoration:underline;text-underline-offset:3px}

/* reviews: score bovenaan, drie citaten */
.reviews__kop{display:flex;flex-direction:column;align-items:center;gap:4px;margin-bottom:36px;text-align:center}
.reviews__cijfer{font-size:72px;font-weight:800;line-height:1}
.reviews__bron{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub)}
.reviews__lijst{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.review{margin:0;padding:0;border:0;background:transparent;text-align:center}
.review__text{font-size:18px;line-height:1.5;color:var(--c-ink)}
.review__wie{display:block;margin-top:12px;font-style:normal;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sub)}

/* nieuwsbrief: zwart, gecentreerd */
.nieuwsbrief{background:var(--c-dark)}
.nieuwsbrief__in{display:flex;flex-direction:column;align-items:center;gap:10px;padding-top:56px;padding-bottom:56px;text-align:center}
.nieuwsbrief__title{font-size:clamp(24px,2.4vw,32px);text-transform:uppercase}
.nieuwsbrief__text{color:var(--c-dark-sub)}
.nieuwsbrief__form{width:100%;max-width:520px;margin-top:14px}
.nieuwsbrief__form input{border-radius:var(--radius-sm)}

/* footer */
.site-footer__score{border:0;padding:0}

/* categorie: banner + rustige filters */
.cat-banner{position:relative;display:flex;align-items:flex-end;min-height:300px;background:var(--c-dark);color:#fff}
.cat-banner__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cat-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,10,.8),rgba(10,10,10,.15))}
.cat-banner__in{position:relative;z-index:1;padding-top:48px;padding-bottom:40px}
.cat-banner__title{font-size:clamp(34px,4.6vw,60px);font-weight:800;text-transform:uppercase;line-height:1}
.cat-banner__text{margin-top:12px;max-width:620px;font-size:17px;color:#e2e2dc}
.cat-kop{padding:6px 0 18px}
.subcats{gap:0;border-bottom:1px solid var(--c-line)}
.subcats a{height:48px;padding:0 16px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.subcats a.is-actief{background:transparent;color:var(--c-ink);border-bottom-color:var(--c-ink)}
.subcats a span{display:none}
.filter__title{font-size:13px;letter-spacing:.1em}
.filter__maat{border-width:1px;border-radius:2px}
.chip-uit{border-radius:2px}

/* product */
.product_title{text-transform:uppercase;letter-spacing:0;font-size:clamp(24px,2.4vw,34px)}
.summary .price ins{color:var(--c-ink)}
form.cart{border:0;padding:0}
.zn-swatch,.zn-size{border-width:1px;border-radius:2px}
.leverbox{background:transparent;padding:0;border-top:1px solid var(--c-line)}
.leverbox .ico{display:none}
.leverbox li{padding:11px 0;font-size:14.5px}
.productinfo{gap:0;border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.productinfo li{border:0;border-radius:0;padding:14px 0}
.productinfo li+li{border-left:1px solid var(--c-line);padding-left:16px}
.productinfo .ico{display:none}
.pdp-tabs li a{text-transform:uppercase;letter-spacing:.06em;font-size:14px}
.pdp-tabs li.active a{border-bottom-color:var(--c-ink)}
.product-reviews .reviews__score{background:transparent;color:var(--c-ink);padding:0}
.reviews__sterren{color:var(--c-ink)}

/* kaal + account: dezelfde rust */
.kaart{box-shadow:none}
.lopend{border-bottom:0}
.snel .ico{background:transparent}

@media (max-width:1280px){
  .hoofdmenu__link{padding:0 11px;font-size:13px}
  .topbar__usps li:nth-child(n+3){display:none}
}
@media (max-width:1100px){
  .hoofdmenu__link{padding:0 8px;font-size:12.5px;letter-spacing:.04em}
}
@media (max-width:900px){
  .hoofdmenu{display:none}
  .site-header{position:sticky;top:0;z-index:50}
  .site-header__in{grid-template-columns:auto 1fr auto;min-height:62px}
  .site-header__logo img{width:150px}
  .kopknop--zoek{order:0}
  .hero{min-height:520px;align-items:flex-end}
  .hero::after{background:linear-gradient(0deg,rgba(10,10,10,.85) 10%,rgba(10,10,10,.1) 70%)}
  .hero__tekst{padding:0 0 96px}
  .usps__lijst{grid-template-columns:repeat(2,minmax(0,1fr))}
  .usps__item{font-size:12px;padding:12px 8px}
  .doelgroepen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .campagne{min-height:460px;align-items:flex-end}
  .campagne::after{background:linear-gradient(0deg,rgba(10,10,10,.85) 20%,rgba(10,10,10,.1) 75%)}
  .campagne__in{justify-content:flex-start}
  .campagne__tekst{padding:0 0 40px}
  .kennis__grid .gids{display:flex;flex-direction:column}
  .kennis__grid .gids img{aspect-ratio:16/10;height:auto}
  .reviews__lijst{grid-template-columns:1fr;gap:28px}
  .reviews__lijst .review:nth-child(3){display:block}
  .productinfo{grid-template-columns:repeat(2,minmax(0,1fr))}
  .productinfo li:nth-child(3){border-left:0;padding-left:0}
  .productinfo li:nth-child(n+3){border-top:1px solid var(--c-line)}
  .cat-banner{min-height:220px}
}
@media (max-width:600px){
  .hero{min-height:480px}
  .hero__title{font-size:30px}
  .hero__tekst .btn{width:100%}
  .usps__lijst{grid-template-columns:1fr 1fr}
  .categorieen__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .cat-tegel__title{font-size:14px;padding:30px 12px 12px}
  .doelgroepen{grid-template-columns:1fr;gap:8px}
  .doelgroep__title{font-size:18px}
  .campagne__title{font-size:28px}
  .kennis__grid{gap:24px}
  .reviews__lijst .review:nth-child(n+2){display:block}
  .review__text{font-size:16.5px}
  .cat-banner__title{font-size:32px}
  .cat-banner__text{font-size:15.5px}
}

/* header v3: logo links, zoekbalk midden, iconen rechts; menu start links */
.site-header__in{grid-template-columns:auto minmax(0,1fr) auto;gap:32px}
.site-header__logo{grid-column:1;justify-self:start}
.site-header__logo img{width:190px;height:auto}
.site-header .zoekveld{grid-column:2;grid-row:1;justify-self:center;max-width:640px}
.site-header__menu-btn{display:none}
.kopknop--zoek{display:none}
.hoofdmenu__lijst{justify-content:flex-start;gap:0}
.hoofdmenu__item:first-child .hoofdmenu__link{padding-left:0}
.kaal-kop__logo img{width:170px;height:auto}

/* reviews op de productpagina */
.product-reviews{grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:56px}
.product-reviews .reviews__score{display:flex;flex-direction:column;gap:6px}
.product-reviews .reviews__cijfer{font-size:56px}
.product-reviews .reviews__bron{font-size:12.5px}
.product-reviews .balkjes{margin-top:14px}
.product-reviews .balkjes li{grid-template-columns:30px minmax(0,1fr) 34px;color:var(--c-sub)}
.product-reviews .balkjes i{height:6px;border-radius:3px;background:#ececE8}
.product-reviews .balkjes b{background:var(--c-ink);border-radius:3px}
.product-reviews .btn{margin-top:18px}
.product-reviews__lijst{grid-template-columns:1fr;gap:0}
.reviews__sterren .ico svg{fill:currentColor;stroke:none}

@media (max-width:900px){
  .site-header__in{grid-template-columns:auto 1fr auto;gap:12px}
  .site-header__menu-btn{display:flex}
  .site-header__logo{grid-column:2;justify-self:center}
  .site-header__logo img{width:150px}
  .site-header .zoekveld{grid-column:1/-1;grid-row:2;max-width:none;margin-bottom:10px}
  .product-reviews{grid-template-columns:1fr;gap:28px}
}

.site-header__logo img{width:159px}
.kaal-kop__logo img{width:159px}
@media (max-width:900px){.site-header__logo img{width:140px}}


/* ==========================================================================
   WORDPRESS EN WOOCOMMERCE
   Wat het ontwerp niet kent: de panelen, het zoekpaneel in werking, de hero-slider,
   de mini-cart van WooCommerce, meldingen, berichten en het contentraster met
   editor-opmaak. Dezelfde tokens en maten als hierboven.
   ========================================================================== */
[hidden]{display:none!important}
.skip{position:absolute;left:-999px;top:8px;z-index:100;padding:10px 14px;border-radius:var(--radius-sm);background:var(--c-ink);color:#fff;font-weight:700}
.skip:focus{left:8px;color:#fff}
.main{min-height:60vh}
html.is-locked,html.is-locked body{overflow:hidden}
body.admin-bar .hoofdmenu{top:32px}
@media (max-width:782px){body.admin-bar .site-header{top:46px}}
@media (max-width:600px){body.admin-bar .site-header{top:0}}

/* header: knoppen en teller */
.kopknop{border:0;background:transparent;cursor:pointer}
.kopknop__badge.is-leeg{display:none}
.kopknop__badge.is-bump{animation:ds-bump .35s ease}
@keyframes ds-bump{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
.site-header__menu-btn{color:var(--c-ink)}
.topbar__usps li.is-actief{display:flex}
.topbar__links{margin-left:auto}
.topbar__links li{display:flex}
.topbar__links a{color:var(--c-dark-sub);font-size:12.5px;letter-spacing:.04em}
.topbar__links a:hover{color:#fff}
@media (max-width:900px){
  .topbar__in{justify-content:center}
  .topbar__usps li{display:none}
  .topbar__usps li.is-actief{display:flex}
  .topbar__links{display:none}
}

/* mega-menu: gestuurd door theme.js, niet door :hover */
.hoofdmenu__item:hover .mega,.hoofdmenu__item:focus-within .mega{display:none}
.hoofdmenu__item .mega.is-open{display:block}
.hoofdmenu__item.is-open>.hoofdmenu__link{border-bottom-color:var(--c-primary)}
.mega__in--zonder{grid-template-columns:repeat(4,minmax(0,1fr))}
.mega__kolom{min-width:0}
a.mega__kop{color:var(--c-sub)}
a.mega__kop:hover{color:var(--c-primary-2)}
.mega__uitgelicht img{display:block;width:100%;height:auto}
@media (max-width:1100px){.mega__in--zonder{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* hero-slider */
.hero__slide{display:none;position:relative;width:100%;min-height:inherit;align-items:center}
.hero__slide.is-actief{display:flex}
.hero__teller span span{padding:0}
.hero__intro{max-width:520px;font-size:17px;color:#e2e2dc}
@media (max-width:900px){.hero__slide{align-items:flex-end}}

/* panelen (mobiel menu links, winkelwagen rechts) */
.backdrop{position:fixed;inset:0;z-index:70;background:rgba(14,14,14,.5);opacity:0;transition:opacity .25s}
.backdrop.is-open{opacity:1}
.drawer{position:fixed;top:0;bottom:0;z-index:80;display:flex;flex-direction:column;width:min(420px,92vw);background:#fff;color:var(--c-ink);box-shadow:var(--shadow-lg);transition:transform .3s ease}
.drawer--links{left:0;transform:translateX(-105%)}
.drawer--rechts{right:0;transform:translateX(105%)}
.drawer.is-open{transform:none}
.drawer__kop{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:0 16px 0 20px;border-bottom:1px solid var(--c-line)}
.drawer__titel{font-size:17px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.drawer__aantal{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 7px;border-radius:12px;background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff);font-size:12px;font-weight:700;vertical-align:middle}
.drawer__sluit{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--c-ink)}
.drawer__sluit:hover{background:var(--c-surface)}
.drawer__body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:8px 0 24px}
.drawer__menu>li{border-bottom:1px solid var(--c-line)}
.drawer__link{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:0 20px;color:var(--c-ink);font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;list-style:none}
.drawer__link::-webkit-details-marker{display:none}
.drawer__link .ico{color:var(--c-sub);transition:transform .15s}
details[open]>.drawer__link .ico{transform:rotate(180deg)}
.drawer__sub{padding:0 20px 14px;background:var(--c-surface)}
.drawer__sub li a{display:block;padding:9px 0;color:var(--c-ink);font-size:15px}
.drawer__sub .drawer__kop a{padding-top:14px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub)}
.drawer__sub .drawer__alles a{font-weight:700;color:var(--c-primary-2)}
.drawer__extra{display:flex;flex-direction:column;padding:14px 8px 0}
.drawer__extra a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:var(--radius-sm);color:var(--c-ink);font-size:15px;font-weight:600}
.drawer__extra a:hover{background:var(--c-surface)}
.drawer__extra .ico{color:var(--c-primary-2)}
.drawer__usps{margin:18px 20px 0;padding-top:16px;border-top:1px solid var(--c-line);font-size:13.5px;color:var(--c-sub)}
.drawer__usps li{display:flex;align-items:center;gap:8px;padding:4px 0}
.drawer__usps .ico{color:var(--c-success)}

/* winkelwagen-paneel: de mini-cart van WooCommerce */
.widget_shopping_cart_content{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
.widget_shopping_cart_content .gratis-balk{margin:16px 20px 0;padding:14px 16px;background:var(--c-surface);border:0}
.widget_shopping_cart_content .gratis-balk__tekst{font-size:14px}
.widget_shopping_cart_content .gratis-balk .ico{color:var(--c-ink)}
.woocommerce-mini-cart{flex:1;padding:8px 20px}
.woocommerce-mini-cart-item{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px 36px 16px 0;border-bottom:1px solid var(--c-line)}
.minicart__foto img{width:76px;height:76px;border-radius:var(--radius-sm);background:var(--c-surface);object-fit:contain}
.minicart__body{display:flex;flex-direction:column;gap:3px;min-width:0}
.minicart__merk{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub)}
.minicart__naam{color:var(--c-ink);font-size:15px;font-weight:600;line-height:1.3}
.minicart__body .quantity{display:block;height:auto;border:0;font-size:14px;color:var(--c-sub)}
.minicart__body .quantity .amount{font-weight:700;color:var(--c-ink)}
.minicart__body dl.variation{display:flex;flex-wrap:wrap;gap:2px 10px;margin:0;font-size:13px;color:var(--c-sub)}
.minicart__body dl.variation dt,.minicart__body dl.variation dd{display:inline;margin:0;font-weight:500}
.minicart__body dl.variation dd p{display:inline}
.woocommerce-mini-cart-item .remove{position:absolute;top:14px;right:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:var(--c-sub);font-size:22px;line-height:1}
.woocommerce-mini-cart-item .remove:hover{background:var(--c-surface);color:var(--c-ink)}
.woocommerce-mini-cart__empty-message{display:flex;flex-direction:column;align-items:center;gap:14px;padding:56px 20px;text-align:center;color:var(--c-sub)}
.woocommerce-mini-cart__empty-message .ico{color:var(--c-line)}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;gap:12px;margin:0;padding:16px 20px;border-top:1px solid var(--c-line);font-size:16px}
.woocommerce-mini-cart__total .amount{font-size:19px;font-weight:800}
.woocommerce-mini-cart__buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0 20px 20px}
.woocommerce-mini-cart__buttons .btn{min-height:50px;padding:0 12px}
.w-0{width:0}.w-5{width:5%}.w-10{width:10%}.w-15{width:15%}.w-20{width:20%}.w-25{width:25%}.w-30{width:30%}.w-35{width:35%}.w-40{width:40%}.w-45{width:45%}.w-50{width:50%}.w-55{width:55%}.w-60{width:60%}.w-65{width:65%}.w-70{width:70%}.w-75{width:75%}.w-80{width:80%}.w-85{width:85%}.w-90{width:90%}.w-95{width:95%}.w-100{width:100%}
.gratis-balk.is-klaar .gratis-balk__lijn b{background:var(--c-success)}
.gratis-balk.is-klaar .gratis-balk__tekst{color:var(--c-groen-tekst);font-weight:600}

/* melding na toevoegen */
.toast-wrap{position:fixed;left:50%;bottom:20px;z-index:90;display:flex;flex-direction:column;align-items:center;gap:8px;width:min(520px,calc(100vw - 32px));transform:translateX(-50%);pointer-events:none}
.toast{display:flex;align-items:center;gap:12px;width:100%;padding:12px 12px 12px 16px;border-radius:var(--radius);background:var(--c-ink);color:#fff;box-shadow:var(--shadow-lg);font-size:15px;pointer-events:auto;animation:ds-toast-in .25s ease}
.toast.is-weg{animation:ds-toast-out .3s ease forwards}
.toast__icoon{display:flex;align-items:center;justify-content:center;flex:0 0 26px;height:26px;border-radius:50%;background:var(--c-success);color:#fff}
.toast__tekst{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.toast__knop{flex:0 0 auto;padding:8px 12px;border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.toast__knop:hover{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff)}
@keyframes ds-toast-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes ds-toast-out{to{opacity:0;transform:translateY(12px)}}

/* zoekpaneel in werking */
.site-header{z-index:48}
.zoekpaneel{position:absolute;left:0;right:0;z-index:49}
.zoek-overlay{z-index:30}
.zoekpaneel__links,.zoekpaneel__midden,.zoekpaneel__rechts{min-width:0}
.zoektermen button{display:flex;align-items:center;gap:10px;width:100%;height:38px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--c-ink);font-size:15px;text-align:left}
.zoektermen button:hover{background:var(--c-surface)}
.zoektermen button .ico{color:var(--c-sub)}
.zoektermen button .ico svg{width:16px;height:16px}
.zoekresultaten:empty{display:none}
.zoekpaneel__start{display:none;color:var(--c-sub);font-size:15px}
.zoekpaneel__melding{padding:12px 0;color:var(--c-sub);font-size:15px}
.zoekpaneel__bezig{display:block;padding:12px 0;color:var(--c-sub);font-size:14px}
.zoekresultaat.is-actief{background:var(--c-surface)}
@media (max-width:1280px){.zoekpaneel__rechts{display:none}}
@media (max-width:900px){
  .zoekpaneel{position:fixed;inset:0;z-index:85;overflow-y:auto;box-shadow:none;border:0}
  .zoekpaneel__mob{display:flex;margin-bottom:8px}
  .zoekpaneel__mob button{background:transparent;color:var(--c-ink);width:40px}
  .zoekpaneel__start{display:block}
  .zoekpaneel__midden.heeft-resultaten .zoekpaneel__start{display:none}
  .zoekpaneel__rechts{display:block}
  .zoek-overlay{display:none}
}

/* productkaart in werking */
.product__fav.is-aan{color:var(--c-primary)}
.product__fav.is-aan .ico svg{fill:currentColor}
.product__swatches li{background:#d9d9d4}
.product__swatches .meer{background:transparent}
ul.products .button.loading{opacity:.6;pointer-events:none}
ul.products .added_to_cart{display:none}
ul.products li.product .star-rating{display:none}
.shop-raster--zonder{grid-template-columns:1fr}
.shop-main{min-width:0}
.shop-balk{margin-top:4px}
.woocommerce-ordering{margin:0}
.shop-leeg{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:22px;border:1.5px solid var(--c-line);border-radius:var(--radius);font-size:16px}
.cat-kop .term-description{margin-top:10px;max-width:780px;font-size:16.5px;color:var(--c-sub)}
.cat-kop .term-description p+p{display:none}
.kruimel__sep{opacity:.6}
.woocommerce-pagination ul.page-numbers{display:flex;gap:6px}
.woocommerce-pagination ul.page-numbers li{display:block}
.ds-pagination .nav-links{display:flex;justify-content:center;gap:6px;margin-top:44px}
.ds-pagination .page-numbers{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 10px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);color:var(--c-ink);font-weight:600}
.ds-pagination .page-numbers.current{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.ds-pagination .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* meldingen van WooCommerce */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notices-wrapper>div:not(.woocommerce-notice){display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:16px 0;padding:14px 18px;border-left:3px solid var(--c-ink);border-radius:var(--radius-sm);background:var(--c-surface);font-size:15px;list-style:none}
.woocommerce-message{border-left-color:var(--c-success)}
.woocommerce-error{border-left-color:var(--c-primary)}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{order:2;margin-left:auto;font-weight:700;color:var(--c-ink)}
.woocommerce-notices-wrapper:empty{display:none}
.main--home .woocommerce-notices-wrapper>div:not(.woocommerce-notice){margin:16px 0 0}
.woocommerce-notice{margin:0}
.woocommerce-notice:focus,.woocommerce-notice:focus-visible{outline:none}

/* paginakop, kruimels en contentraster */
.pagina-kop .kruimel{padding:0 0 18px}
.pagina-kop .kruimel span[aria-current]{color:#fff}
.kruimel span+span{color:var(--c-ink)}
.cat-kop .kruimel span[aria-current]{color:var(--c-ink)}
.content-raster--single{grid-template-columns:200px minmax(0,1fr) 320px}
.content-nav:empty{display:none}
.content-raster:has(.content-nav:empty){grid-template-columns:minmax(0,1fr) 320px}
.content h1{font-size:30px;font-weight:800;margin:0 0 12px}
.content h3{font-size:20px;font-weight:700;margin:28px 0 8px}
.content h4{font-size:17px;font-weight:700;margin:22px 0 6px}
.content ul,.content ol{margin:12px 0;padding-left:0}
.content ul li{position:relative;padding-left:24px;font-size:16px;color:#3a3a37}
.content ul li+li,.content ol li+li{margin-top:6px}
.content ul li::before{content:"";position:absolute;left:4px;top:.6em;width:9px;height:9px;border-radius:2px;background:var(--c-primary)}
.content ol{list-style:decimal;padding-left:24px}
.content ol li{font-size:16px;color:#3a3a37}
.content a{text-decoration:underline;text-underline-offset:2px}
.content img{border-radius:var(--radius)}
.content figure{margin:20px 0}
.content figcaption{margin-top:6px;font-size:13.5px;color:var(--c-sub)}
.content blockquote{margin:20px 0;padding:4px 0 4px 20px;border-left:3px solid var(--c-primary);font-size:18px;color:var(--c-ink)}
.content table{margin-top:16px;border:1px solid var(--c-line);border-radius:var(--radius);overflow:hidden;border-collapse:separate;border-spacing:0}
.content th,.content td{padding:12px 16px;font-size:15px;text-align:left;border-top:1px solid var(--c-line)}
.content thead th{border-top:0;background:var(--c-surface);font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sub)}
.content .wp-block-button__link{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border-radius:var(--radius-sm);background:var(--c-ink);color:#fff;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}
.content__beeld{margin:0 0 24px}
.content__beeld img{width:100%;height:auto;border-radius:var(--radius)}
.content__meta{margin-top:28px;padding-top:16px;border-top:1px solid var(--c-line);font-size:13.5px;color:var(--c-sub)}
.content__tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:24px}
.content__tags a{display:inline-flex;align-items:center;height:30px;padding:0 10px;border-radius:var(--radius-sm);background:var(--c-surface);font-size:13px;font-weight:600;color:var(--c-ink)}
.postnav{display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:20px;border-top:1px solid var(--c-line);font-size:14.5px;font-weight:600}
.postnav a{display:inline-flex;align-items:center;gap:6px;color:var(--c-ink)}
.postnav__volgende{margin-left:auto;text-align:right}
.linkpages{margin-top:20px;display:flex;gap:6px}
.leeg{padding:40px 0;color:var(--c-sub)}
.zoek-opnieuw{max-width:640px;margin-bottom:28px}
.contactblok .btn{margin-top:4px;align-self:flex-start}
.pagina-snel .ico svg{width:24px;height:24px}
.faq summary .ico{flex:0 0 auto;color:var(--c-sub)}

/* blogkaarten in de vorm van de gidsen */
.gids--bericht{display:flex;flex-direction:column}
.gids__media{display:block;background:var(--c-surface);margin-bottom:14px;overflow:hidden}
.gids__media img{width:100%;aspect-ratio:16/10;object-fit:cover;margin:0}
.gids__leeg{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;color:var(--c-sub)}
.gids--bericht .gids__title a{color:inherit}
.gids--bericht .gids__text{margin-top:8px}
.gids__meer{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-ink)}
.gids__meer:hover{color:var(--c-primary-2)}

/* footer: extra's */
.site-footer__contact{display:flex;flex-direction:column;gap:8px;margin-top:20px;font-size:15px}
.site-footer__contact a{display:inline-flex;align-items:center;gap:8px;color:#fff}
.site-footer__contact a:hover{color:var(--c-primary)}
.site-footer__contact .ico{color:var(--c-primary)}
.site-footer__open{display:flex;align-items:center;gap:8px;color:var(--c-dark-sub);font-size:14px}
.site-footer__open::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c-success)}
.site-footer__kolom{min-width:0}
.site-footer__powered{color:var(--c-dark-sub)}
.ds-pay{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.ds-pay__label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--c-dark-sub)}
.ds-pay__list{display:flex;flex-wrap:wrap;gap:8px}
.ds-pay__chip{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 8px;border-radius:6px;background:#fff;color:var(--c-ink);font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.ds-pay__chip img{max-width:40px;max-height:26px;width:auto;height:auto;border-radius:0;background:transparent}
.ds-pay--light .ds-pay__label{color:var(--c-sub)}
.ds-pay--light .ds-pay__chip{border:1px solid var(--c-line)}

/* WooCommerce-pagina's zonder eigen template (winkelwagen, afrekenen, account: sprint 4 en 5) */
.wcpage{padding:30px 0 64px}
.wcpage .kaal-titel{margin-bottom:24px}
.wcpage .shop_table{border:1px solid var(--c-line);border-radius:var(--radius)}
.wcpage .shop_table th,.wcpage .shop_table td{padding:12px 14px;border-top:1px solid var(--c-line);text-align:left;vertical-align:middle}
.wcpage .shop_table thead th{border-top:0;background:var(--c-surface);font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sub)}
.wcpage .button,.wcpage button.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1.5px solid var(--c-ink);border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.wcpage .button.alt,.wcpage .checkout-button,.wcpage #place_order{background:var(--c-success);border-color:var(--c-success);color:#fff;font-size:16px}
.wcpage .input-text,.wcpage select,.wcpage textarea{width:100%;min-height:48px;padding:8px 14px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:16px}
.wcpage .form-row{margin:0 0 14px}
.wcpage label{display:block;margin-bottom:6px;font-size:13px;font-weight:700;letter-spacing:.04em}
.wcpage .cart-collaterals,.wcpage #customer_details,.wcpage #order_review{margin-top:24px}
.wcpage .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.wcpage .woocommerce-MyAccount-navigation a{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:var(--radius-sm);background:var(--c-surface);color:var(--c-ink);font-weight:600}
.wcpage .woocommerce-MyAccount-navigation .is-active a{background:var(--c-ink);color:#fff}
.wcpage .woocommerce-MyAccount-content{min-width:0}
.wcpage .woocommerce-MyAccount-content p+p{margin-top:12px}
.wcpage h2,.wcpage h3{margin:24px 0 12px;font-size:22px;font-weight:800}

/* reacties */
.comments{margin-top:40px;padding-top:28px;border-top:1px solid var(--c-line)}
.comments textarea,.comments input:not([type=checkbox]):not([type=submit]){width:100%;padding:10px 14px;border:1.5px solid var(--c-line);border-radius:var(--radius-sm);font-size:16px}
.comments input[type=submit]{display:inline-flex;align-items:center;min-height:46px;padding:0 20px;border:0;border-radius:var(--radius-sm);background:var(--c-ink);color:#fff;font-weight:700;letter-spacing:.04em;text-transform:uppercase}

/* engine: bewerkknop op blokken. Zwevend over het blok (alleen voor beheerders), zodat er geen witruimte boven bijvoorbeeld de hero ontstaat. */
.lxs-block-edit{position:absolute;z-index:30}
.zoektermen svg.ico{flex:0 0 auto;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--c-sub)}
.nieuwsbrief__msg{margin-top:14px;font-size:15px;color:#fff}
.nieuwsbrief__msg.is-fout{color:var(--c-primary)}

/* ── catalogus (sprint 2): filters, chips, varianten, meer laden ─────────── */
.cat-kop--na-banner{padding-top:14px}
.cat-banner__bg{z-index:0}
.cat-banner__in{width:100%}
.filter__optie{color:var(--c-ink);text-decoration:none}
.filter__optie:hover{color:var(--c-ink)}
.filter__optie .filter__box{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:18px;margin-left:0;border:1.5px solid var(--c-line);border-radius:3px;background:#fff;color:#fff}
.filter__optie .filter__box .ico{color:inherit;opacity:0}
.filter__optie.is-aan .filter__box .ico{opacity:1}
.filter__box .ico svg{width:12px;height:12px}
.filter__optie.is-aan .filter__box{background:var(--c-ink);border-color:var(--c-ink)}
.filter__optie:hover .filter__box{border-color:var(--c-ink)}
.filter__maat{color:var(--c-ink)}
.filter__maat.is-leeg{opacity:.4}
.filter__maat:hover{border-color:var(--c-ink);color:var(--c-ink)}
.filter__kleur{display:block}
.filter__kleur:hover{box-shadow:0 0 0 2px #fff,0 0 0 3px var(--c-sub)}
.filter__meer{border:0;background:transparent;padding:0;color:var(--c-ink)}
.filter__prijs{flex-wrap:wrap}
.filter__prijs input{flex:1;min-width:70px}
.filter__prijs .btn{min-height:42px;padding:0 14px;font-size:12.5px;width:100%}
.filter__opties li[hidden]{display:none}
.filters .filters__kop button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;background:transparent;color:var(--c-ink)}
.chip-uit{color:var(--c-ink)}
a.chip-uit:hover{background:var(--c-line);color:var(--c-ink)}
.chip-uit .ico{color:var(--c-sub)}
.shop-balk__filterknop .ico svg{width:18px;height:18px}
.woocommerce-ordering select{appearance:none;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23141414' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center/16px}
.product__swatches--links li{position:relative}
.product__swatches--links{gap:8px}
.product__swatches--links li a{display:block;width:24px;height:24px;margin:-4px;border-radius:50%}
.product__swatches li.is-aan{box-shadow:0 0 0 2px #fff,0 0 0 3px var(--c-ink)}
.product__swatches li.is-uit{opacity:.35}
.product--variatie .product__sizes{color:var(--c-ink)}
.shop-paginering{display:flex;flex-direction:column;align-items:center;gap:14px}
.shop-paginering .woocommerce-pagination{margin-top:44px}
.shop-paginering.is-laden .woocommerce-pagination{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.laadmeer{margin-top:36px}
.laadmeer__klaar{margin-top:36px;font-size:14px;color:var(--c-sub)}
.laadmeer.is-bezig{opacity:.6;pointer-events:none}
ul.products li.product.is-nieuw-geladen{animation:ds-kaart-in .3s ease}
@keyframes ds-kaart-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.cat-seo__tekst{max-width:860px}
.cat-seo .dci-guide{margin-top:0}
@media (max-width:900px){
  .filters{z-index:82;top:auto}
  .filters.is-open{transform:none}
  .filters__kop{position:relative}
  .filter__prijs .btn{width:auto}
  /* Dicht is het paneel onzichtbaar, waar de browser het ook neerzet (iOS zette het midden in beeld). */
  .filters:not(.is-open):not(:target){visibility:hidden;pointer-events:none;transition:transform .25s ease,visibility 0s linear .25s}
  .filters.is-open,.filters:target{visibility:visible;transition:transform .25s ease}
}



/* ==========================================================================
   Ontwerp deel 2 (8A): gedeelde bouwstenen, zijbalk, hero-sjablonen, topbar,
   footer, klantenservice-status, beeldtaal, merken, categoriekop, kleurfilter en
   productkaart. Overgenomen uit shop.css van het ontwerp; aanpassingen aan de
   markup van het thema staan onderaan dit blok.
   ========================================================================== */
/* ── paneel: fly-in rechts (desktop) / bottom-sheet (telefoon) ─────────────
   Gedrag: openen zet .is-open op .dim en .paneel, body krijgt .scroll-lock
   (overflow:hidden). Focus gaat naar de eerste knop in het paneel en blijft
   erin (focus-trap). Sluiten met de sluitknop, Escape of een klik op de dim;
   de focus gaat terug naar de knop die het paneel opende. Op telefoon mag je
   het paneel ook naar beneden vegen (> 80 px = sluiten). */
body.scroll-lock{overflow:hidden}
.dim{position:fixed;inset:0;z-index:80;background:rgba(20,20,20,.55)}
.paneel{position:fixed;top:0;right:0;bottom:0;z-index:81;width:min(460px,100%);background:#fff;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}
.paneel--breed{width:min(880px,100%)}
.paneel__grip{display:none}
.paneel__kop{display:flex;align-items:center;gap:12px;min-height:64px;padding:10px 20px;border-bottom:1px solid var(--c-line)}
.paneel__titel{flex:1;min-width:0;font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.paneel__titel small{margin-left:6px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--c-sub);font-size:14px}
.paneel__sluit{flex:0 0 auto;width:40px;height:40px;border:1px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);display:flex;align-items:center;justify-content:center}
.paneel__sluit:hover{border-color:var(--c-ink);color:var(--c-ink)}
.paneel__body{flex:1;min-height:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:18px}
.paneel__voet{flex:0 0 auto;padding:16px 20px 18px;border-top:1px solid var(--c-line);display:flex;flex-direction:column;gap:10px;background:#fff}
.paneel__sub{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub)}
@media (max-width:720px){
  .paneel,.paneel--breed{top:auto;left:0;width:100%;max-height:90vh;border-radius:14px 14px 0 0}
  .paneel__grip{display:block;flex:0 0 auto;width:42px;height:4px;margin:8px auto 0;border-radius:2px;background:#d6d6d0}
  .paneel__kop{min-height:56px;padding:6px 16px 10px}
  .paneel__body{padding:16px}
  .paneel__voet{padding:14px 16px calc(16px + env(safe-area-inset-bottom))}
}
/* ── kleine gedeelde onderdelen ─────────────────────────────────────────── */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border:1px solid var(--c-line);border-radius:99px;background:#fff;color:var(--c-ink);font-size:14px;font-weight:600;line-height:1.2;text-align:left;cursor:pointer}
.chip:hover{border-color:var(--c-ink);color:var(--c-ink)}
.chip.is-aan,.chip[aria-pressed="true"]{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.chip small{font-weight:500;color:var(--c-sub)}
.chip.is-aan small{color:#cfcfca}
.chip .ico svg{width:16px;height:16px}

.meld{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--c-line);border-radius:var(--radius-sm);background:#fff;font-size:14.5px;line-height:1.5}
.meld .ico{margin-top:1px}
.meld .ico svg{width:18px;height:18px}
.meld--ok{background:#edf7ee;border-color:#cfe8d1;color:#1f5e23}
.meld--info{background:var(--c-surface);border-color:var(--c-line);color:var(--c-ink)}
.meld--let{background:#fff6dc;border-color:#f0dfa6;color:#6b5000}
.meld--fout{background:#fdecea;border-color:#f3c9c4;color:#8a1f16}
.meld__titel{display:block;font-weight:700}

.mini{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:4px 14px;align-items:center}
.mini__foto{grid-row:1/4;width:64px;height:64px;border-radius:var(--radius-sm);background:var(--c-surface);overflow:hidden}
.mini__foto img{width:100%;height:100%;object-fit:cover}
.mini__naam{font-size:15px;font-weight:600;line-height:1.3;color:var(--c-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
a.mini__naam:hover{color:var(--c-primary-2)}
.mini__var{font-size:13px;color:var(--c-sub);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mini__prijs{grid-column:3;grid-row:1;font-size:15px;font-weight:700;text-align:right;white-space:nowrap}
.mini--klein{grid-template-columns:48px minmax(0,1fr) auto}
.mini--klein .mini__foto{width:48px;height:48px}

.voorraad{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#2f7a33}
.voorraad::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c-success)}
.voorraad--laag{color:#8a5a00}
.voorraad--laag::before{background:#e0a100}

.aantal{display:inline-flex;align-items:center;height:38px;border:1px solid var(--c-line);border-radius:var(--radius-sm);overflow:hidden}
.aantal button{width:34px;height:36px;border:0;background:#fff;font-size:17px;line-height:1}
.aantal button:hover{background:var(--c-surface)}
.aantal span{min-width:30px;text-align:center;font-weight:700;font-size:15px}

.knoprij{display:flex;flex-wrap:wrap;gap:10px}
.knoprij .btn{flex:1 1 180px}

.tijdlijn{position:relative;display:flex;flex-direction:column;gap:0}
.tijdlijn__stap{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:0 14px;padding-bottom:22px}
.tijdlijn__stap:last-child{padding-bottom:0}
.tijdlijn__stap::before{content:"";position:absolute;left:13px;top:28px;bottom:0;width:2px;background:var(--c-line)}
.tijdlijn__stap:last-child::before{display:none}
.tijdlijn__stip{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;border:2px solid var(--c-line);background:#fff;display:flex;align-items:center;justify-content:center;color:#fff}
.tijdlijn__stip .ico svg{width:14px;height:14px;stroke-width:3}
.tijdlijn__stap.is-klaar .tijdlijn__stip{background:var(--c-ink);border-color:var(--c-ink)}
.tijdlijn__stap.is-klaar::before{background:var(--c-ink)}
.tijdlijn__stap.is-nu .tijdlijn__stip{border-color:var(--c-primary);box-shadow:0 0 0 4px rgba(var(--c-primary-rgb),.18)}
.tijdlijn__stap.is-nu .tijdlijn__stip::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--c-primary)}
.tijdlijn__titel{font-size:15.5px;font-weight:700;line-height:1.35}
.tijdlijn__stap:not(.is-klaar):not(.is-nu) .tijdlijn__titel{color:var(--c-sub);font-weight:600}
.tijdlijn__tekst{font-size:14px;color:var(--c-sub)}
.tijdlijn__tijd{font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--c-sub)}

/* ticket: status als vier vakjes, gedeeld door portaal, retour en account */
.ticket{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--c-dark-line);border-radius:var(--radius);overflow:hidden}
.ticket__vak{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-left:1px dashed var(--c-dark-line);color:var(--c-dark-sub);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.ticket__vak:first-child{border-left:0}
.ticket__vak b{font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}
.ticket__vak.is-klaar{color:#fff}
.ticket__vak.is-nu{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff)}
.ticket__vak.is-nu b{color:#fff}
.ticket--licht{border-color:var(--c-line)}
.ticket--licht .ticket__vak{border-color:var(--c-line);color:var(--c-sub)}
.ticket--licht .ticket__vak.is-klaar{color:var(--c-ink)}
.ticket--licht .ticket__vak.is-nu{color:#fff}
@media (max-width:560px){.ticket{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket__vak:nth-child(3){border-left:0}.ticket__vak:nth-child(n+3){border-top:1px dashed var(--c-dark-line)}.ticket--licht .ticket__vak:nth-child(n+3){border-top-color:var(--c-line)}}

/* kortingscode-kaart: zelfde vorm als in de mails */
.code-kaart{display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:var(--radius);background:var(--c-dark);color:#fff}
.code-kaart__titel{font-size:17px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.code-kaart__tekst{font-size:14.5px;color:var(--c-dark-sub)}
.code-kaart__rij{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.code-kaart__code{flex:1 1 180px;display:flex;align-items:center;justify-content:center;min-height:50px;padding:0 16px;border:1.5px dashed var(--c-primary);border-radius:var(--radius-sm);font-size:20px;font-weight:800;letter-spacing:.14em}
.code-kaart .btn{flex:0 0 auto}
.zijblok{display:flex;flex-direction:column;gap:10px;padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid var(--c-line)}
.zijblok__titel{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.zijblok__merken{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.zijblok__merken a{display:flex;align-items:center;justify-content:center;height:52px;padding:8px;border:1px solid var(--c-line);border-radius:var(--radius-sm);background:#fff}
.zijblok__merken a:hover{border-color:var(--c-ink)}
.zijblok__merken img{max-height:28px;width:auto}
.zijblok .mini{grid-template-columns:44px minmax(0,1fr)}
.zijblok .mini__foto{width:44px;height:44px;grid-row:1/3}
.zijblok .mini__prijs{grid-column:2;grid-row:2;text-align:left;font-size:13.5px}
.zijblok .mini__naam{font-size:13.5px}
.zijblok__recent{display:flex;flex-direction:column;gap:10px}
.zijblok .chip{min-height:34px;font-size:13px;padding:0 12px}
.reviews__verdeling{display:flex;flex-direction:column;gap:6px;width:min(100%,320px)}
.reviews__verdeling li{display:grid;grid-template-columns:34px minmax(0,1fr) 40px;gap:10px;align-items:center;font-size:13px;color:var(--c-sub)}
.reviews__verdeling i{height:6px;border-radius:3px;background:#e3e3df;overflow:hidden}
.reviews__verdeling b{display:block;height:100%;border-radius:3px;background:var(--c-ink)}
.reviews__kaarten{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.winkelreview{display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:var(--radius);background:#fff;border:1px solid var(--c-line)}
.winkelreview__kop{display:grid;grid-template-columns:40px minmax(0,1fr);gap:0 12px;align-items:center}
.winkelreview__avatar{grid-row:1/3;width:40px;height:40px;border-radius:50%;background:var(--c-ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800}
.winkelreview__naam{font-weight:700;font-size:15px}
.winkelreview__datum{font-size:12.5px;color:var(--c-sub)}
.winkelreview .reviews__sterren{color:var(--c-primary)}
.winkelreview .reviews__sterren .ico svg{width:16px;height:16px}
.winkelreview__tekst{font-size:15px;line-height:1.55;color:#2c2c2a}
@media (max-width:900px){.reviews__kaarten{grid-template-columns:1fr}}
.hero-slider{position:relative;background:var(--c-dark);color:#fff;overflow:hidden}
.hero-slide{position:relative;display:grid;min-height:560px}
.hero-slide--split{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.hero-slide__tekst{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:56px max(var(--gutter),calc((100vw - var(--container))/2)) 56px max(var(--gutter),calc((100vw - var(--container))/2));padding-right:56px}
.hero-slide__eyebrow{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hero-accent,var(--c-primary))}
.hero-slide__titel{font-size:clamp(34px,4.6vw,64px);font-weight:800;line-height:1.02;letter-spacing:.005em;text-transform:uppercase}
.hero-slide__intro{max-width:520px;font-size:17.5px;line-height:1.55;color:#d6d6d0}
.hero-slide .knoprij{margin-top:8px}
.hero-slide .knoprij .btn{flex:0 0 auto}
.hero-slide__cert{margin-top:6px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--c-dark-sub)}
.hero-slide__beeld{position:relative;min-height:320px;background:#2a2a28}
.hero-slide__beeld img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-slide--monument{grid-template-columns:1fr;min-height:640px}
.hero-slide--monument .hero-slide__beeld{position:absolute;inset:0}
.hero-slide--monument::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,14,14,.92) 0%,rgba(14,14,14,.55) 38%,rgba(14,14,14,0) 70%)}
.hero-slide--monument .hero-slide__tekst{position:relative;z-index:1;justify-content:flex-end;align-items:center;text-align:center;padding:56px var(--gutter) 88px}
.hero-slide--monument .hero-slide__intro{margin:0 auto}
.hero-slide--monument .knoprij{justify-content:center}
.hero-accent--oranje{--hero-accent:var(--c-primary)}
.hero-accent--wit{--hero-accent:#fff}
.hero-accent--groen{--hero-accent:#7bc67e}
.hero-accent--oranje .btn--primary{background:var(--c-label,var(--c-primary))}
.hero-accent--wit .btn--primary{background:#fff;color:var(--c-ink)}
.hero-accent--groen .btn--primary{background:var(--c-success)}
.hero-focus--links-midden img{object-position:20% 50%}.hero-focus--midden-midden img{object-position:50% 50%}.hero-focus--rechts-midden img{object-position:80% 50%}.hero-focus--midden-boven img{object-position:50% 20%}.hero-focus--midden-onder img{object-position:50% 80%}
.hero-bediening{position:absolute;right:max(var(--gutter),calc((100vw - var(--container))/2));bottom:24px;z-index:2;display:flex;align-items:center;gap:10px}
.hero-teller{min-width:62px;font-size:13px;font-weight:700;letter-spacing:.12em;color:#fff;text-align:center}
.hero-pijl{width:46px;height:46px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:rgba(14,14,14,.4);color:#fff;display:flex;align-items:center;justify-content:center}
.hero-pijl:hover{background:#fff;color:var(--c-ink)}
.hero-pijl:disabled{opacity:.35;pointer-events:none}
@media (max-width:900px){
  .hero-slide--split{grid-template-columns:1fr;min-height:0}
  .hero-slide--split .hero-slide__beeld{order:-1;min-height:0;aspect-ratio:4/3}
  .hero-slide__tekst{padding:28px var(--gutter) 84px}
  .hero-slide--monument{min-height:560px}
  .hero-slide .knoprij .btn{flex:1 1 100%}
  .hero-bediening{left:var(--gutter);right:var(--gutter);justify-content:space-between}
}
.section__head .reviews__kop{display:flex;flex-direction:column;gap:4px}
#reviews .section__head{align-items:center}
.summary .trust-badge{margin:10px 0 2px}
.summary > .section__link{margin-top:12px}
.filters__body .zijblok:first-child{padding-top:0}
/* ── topbar ── */
.topbar{background:var(--c-dark);color:#fff;font-size:13px;border-bottom:1px solid var(--c-dark-line)}
.topbar__in{min-height:40px;gap:24px}
.topbar__usps{flex:1;min-width:0;gap:0}
.topbar__usps li{gap:8px;padding:0 22px;font-weight:500;color:#e9e9e5}
.topbar__usps li:first-child{padding-left:0}
.topbar__usps li + li{border-left:1px solid var(--c-dark-line)}
.topbar__usps .ico{width:18px;height:18px;border-radius:50%;background:rgba(var(--c-primary-rgb),.18);color:var(--c-primary)}
.topbar__usps .ico svg{width:11px;height:11px;stroke-width:3.4}
.topbar__rechts{display:flex;align-items:center;gap:18px;white-space:nowrap}
.topbar__rechts a{color:var(--c-dark-sub);font-weight:500}
.topbar__rechts a:hover{color:#fff}
.topbar__score{display:inline-flex;align-items:center;gap:7px}
.topbar__rechts .topbar__score{color:#fff;font-weight:700}
.topbar__score .ico{color:var(--c-primary)}
.topbar__score .ico svg{width:14px;height:14px;fill:currentColor;stroke:none}
.topbar__sep{width:1px;height:16px;background:var(--c-dark-line)}
.topbar .var{border-bottom-color:rgba(var(--c-primary-rgb),.7)}
@media (max-width:1100px){.topbar__rechts a:not(.topbar__score),.topbar__sep{display:none}}
@media (max-width:720px){
  .topbar__in{justify-content:center;min-height:36px}
  .topbar__usps{justify-content:center}
  .topbar__usps li{padding:0}
  .topbar__usps li + li{display:none}
  .topbar__rechts{display:none}
}

/* ── footer ── */
.site-footer{background:var(--c-dark);color:var(--c-dark-sub);font-size:15px}
.site-footer__hulp{background:var(--c-dark-2);border-bottom:1px solid var(--c-dark-line)}
.site-footer__hulp-in{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:40px;align-items:center;padding-top:40px;padding-bottom:40px}
.site-footer__hulp-titel{color:#fff;font-size:clamp(22px,2.4vw,30px);font-weight:800;line-height:1.15;letter-spacing:-.01em}
.site-footer__hulp-tekst p{margin-top:10px;font-size:15px;line-height:1.55}
.site-footer__kanalen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.site-footer__kanaal{display:flex;align-items:center;gap:12px;height:100%;padding:16px;border:1px solid var(--c-dark-line);border-radius:var(--radius);color:#fff;transition:border-color .15s,background-color .15s}
.site-footer__kanaal:hover{border-color:var(--c-primary);background:rgba(var(--c-primary-rgb),.06);color:#fff}
.site-footer__kanaal > .ico{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:var(--c-primary);color:#fff}
.site-footer__kanaal > .ico svg{width:19px;height:19px}
.site-footer__kanaal b{display:block;font-size:15px;font-weight:700;line-height:1.3}
.site-footer__kanaal small{display:block;font-size:13px;color:var(--c-dark-sub);overflow:hidden;text-overflow:ellipsis}
.site-footer__kanaal > span{min-width:0}
.site-footer__top{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:48px;padding:52px 0 40px}
.site-footer__logo{width:159px;height:auto;margin-bottom:18px;filter:brightness(0) invert(1)}
.site-footer__over{max-width:360px;line-height:1.6}
.site-footer__score{display:inline-flex;align-items:center;gap:14px;margin-top:22px;padding:12px 16px 12px 12px;border:1px solid var(--c-dark-line);border-radius:var(--radius);color:#fff;max-width:none}
.site-footer__score:hover{border-color:var(--c-primary);color:#fff}
.site-footer__score strong{display:flex;align-items:center;justify-content:center;min-width:56px;height:48px;padding:0 8px;border-radius:var(--radius-sm);background:var(--c-primary);font-size:22px;font-weight:800;line-height:1}
.site-footer__score > span{display:flex;flex-direction:column;gap:3px;font-size:13px;color:var(--c-dark-sub)}
.site-footer__score .reviews__sterren{display:flex;gap:1px;color:var(--c-primary)}
.site-footer__score .reviews__sterren .ico svg{width:14px;height:14px}
.site-footer__kolom > summary{list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:default;pointer-events:none}
.site-footer__kolom > summary::-webkit-details-marker{display:none}
.site-footer__kolom > summary .ico{display:none}
.site-footer__kop{margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--c-primary);width:fit-content}
.site-footer__lijst li+li{margin-top:10px}
.site-footer__lijst a{color:var(--c-dark-sub);transition:color .15s}
.site-footer__lijst a:hover{color:#fff}
.site-footer__onder{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:16px 32px;padding:20px 0 24px}
.site-footer__merken{display:flex;align-items:center;gap:12px}
.site-footer__label{font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7c7c77}
.site-footer__onder .betaalmerken img{width:38px;height:38px}
.site-footer__gls{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:6px;background:#fff;color:#061ab1;font-size:11px;font-weight:800}
.site-footer__legal{justify-self:end;font-size:13px}
@media (max-width:1100px){
  .site-footer__hulp-in{grid-template-columns:1fr;gap:22px}
  .site-footer__kanalen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-footer__top{grid-template-columns:1fr 1fr 1fr;gap:32px}
  .site-footer__merk{grid-column:1/-1}
  .site-footer__onder{grid-template-columns:auto auto}
  .site-footer__legal{grid-column:1/-1;justify-self:start}
}
@media (max-width:720px){
  .site-footer__hulp-in{padding-top:28px;padding-bottom:28px}
  .site-footer__kanalen{grid-template-columns:1fr;gap:8px}
  .site-footer__kanaal{padding:12px 14px}
  .site-footer__top{grid-template-columns:1fr;gap:0;padding:28px 0 8px}
  .site-footer__merk{padding-bottom:22px}
  .site-footer__kolom{border-top:1px solid var(--c-dark-line)}
  .site-footer__kolom > summary{min-height:54px;margin:0;padding:0;border:0;width:auto;cursor:pointer;pointer-events:auto}
  .site-footer__kolom > summary .ico{display:inline-flex;transition:transform .15s}
  .site-footer__kolom[open] > summary .ico{transform:rotate(180deg)}
  .site-footer__kolom .site-footer__lijst{padding-bottom:18px}
  .site-footer__onder{grid-template-columns:1fr;gap:14px;padding-top:18px;border-top:1px solid var(--c-dark-line)}
}
/* fixes na controle */
.quantity .qty,.cart_item .quantity .qty{padding:0;width:40px;text-align:center}
.reviews__kop,.reviews__kop > *{min-width:0}
.reviews__bron .var,.reviews__kop .var{white-space:normal;overflow-wrap:anywhere}
@media (max-width:720px){
  .reviews__cijfer{font-size:44px;overflow-wrap:anywhere}
  .stappen__lijst{flex-wrap:nowrap;justify-content:center;min-width:0}
  .stappen__item{min-width:0;gap:6px}
  .stappen__item+.stappen__item::before{width:14px;margin:0 6px}
  .stappen__nr{width:24px;height:24px;font-size:12px;flex:0 0 24px}
}
/* ── topbar licht: grijze strook boven de witte header, zwart blijft alleen voor het menu ── */
.topbar{background:var(--c-surface);color:var(--c-ink);border-bottom:1px solid var(--c-line)}
.topbar__usps li{color:var(--c-ink)}
.topbar__usps li + li{border-left-color:var(--c-line)}
.topbar__usps .ico{background:rgba(var(--c-primary-rgb),.14)}
.topbar__rechts a{color:var(--c-sub)}
.topbar__rechts a:hover{color:var(--c-ink)}
.topbar__rechts .topbar__score{color:var(--c-ink)}
.topbar__sep{background:var(--c-line)}


/* ── onderkant v4: zwart menu + zwarte footer, inhoud ertussen wit/grijs, oranje als accent ── */
/* nieuwsbrief: foto + tekst, wit vlak */
.nieuwsbrief{background:#fff;color:var(--c-ink);border-top:1px solid var(--c-line)}
.nieuwsbrief__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:0;padding-top:0;padding-bottom:0;text-align:left}
.nieuwsbrief__foto{position:relative;min-height:340px;background:#e9e9e6;overflow:hidden}
.nieuwsbrief__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.nieuwsbrief__body{display:flex;flex-direction:column;justify-content:center;gap:12px;padding:48px 24px 48px 56px}
.nieuwsbrief__eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#a14a14}
.nieuwsbrief__title{margin:0;font-size:clamp(26px,2.8vw,38px);line-height:1.1;font-weight:800;text-transform:none;color:var(--c-ink)}
.nieuwsbrief__text{margin:0;max-width:440px;font-size:16px;line-height:1.6;color:#55554f}
.nieuwsbrief__form{display:flex;flex-direction:row;gap:8px;width:100%;max-width:480px;margin-top:8px}
.nieuwsbrief__form input{flex:1;min-width:0;height:54px;padding:0 16px;border:1.5px solid #d6d6d1;border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-size:16px}
.nieuwsbrief__form input:focus{outline:none;border-color:var(--c-ink)}
.nieuwsbrief__form .btn{min-height:54px;background:var(--c-actie,var(--c-primary));border-color:var(--c-actie,var(--c-primary));color:var(--c-ink)}
.nieuwsbrief__form .btn:hover{background:#d16820;border-color:#d16820;color:var(--c-ink)}
.nieuwsbrief__klein{margin:0;font-size:13px;color:#6b6b66}

/* footer: zwart, rustig, geen kaarten of cirkels */
.site-footer{background:var(--c-dark);color:#b4b4ae}
.site-footer__top{padding-top:56px}
.site-footer__kop{padding-bottom:0;border-bottom:0;margin-bottom:14px;color:#fff;font-size:13px;letter-spacing:.12em}
.site-footer__lijst a{color:#b4b4ae}
.site-footer__lijst a:hover{color:#fff}
.site-footer__over{color:#b4b4ae}
.site-footer__contact{display:flex;flex-direction:column;gap:4px;margin-top:18px;font-size:14.5px;line-height:1.5;color:#b4b4ae}
.site-footer__contact a{color:#fff;font-weight:600;text-decoration:none;border-bottom:1px solid var(--c-primary);width:fit-content}
.site-footer__contact a:hover{color:var(--c-primary)}
.site-footer__score{background:transparent;border:1px solid #333}
.site-footer__score strong{color:#fff}
.site-footer__score span{color:#b4b4ae}
.site-footer__score .reviews__sterren{color:var(--c-primary)}
.site-footer__onder{border-top:1px solid #2a2a2a}
.site-footer__label,.site-footer__legal,.site-footer__legal a{color:#9a9a94}
.site-footer__legal a:hover{color:#fff}

@media (max-width:900px){
  .nieuwsbrief__in{grid-template-columns:1fr}
  .nieuwsbrief__foto{min-height:220px}
  .nieuwsbrief__body{padding:28px 0 36px}
  .nieuwsbrief__form{flex-direction:column}
}

/* ── geen zwart op oranje: altijd wit ── */
:root{--c-on-prim:#fff}
.btn--primary,.btn--primary:hover,.nieuwsbrief__form .btn,.nieuwsbrief__form .btn:hover{color:var(--c-on-actie,#fff)}
.account__avatar{color:#fff}
.nieuwsbrief__form .btn{font-weight:800}

/* usp's in de topbalk: groene vinkjes */
.topbar__usps .ico{color:#1f8a4c}

/* score in de topbalk: vijf sterren */
.topbar__sterren{display:inline-flex;gap:1px;color:var(--c-primary)}
.topbar__sterren .ico svg{width:13px;height:13px;fill:currentColor;stroke:none}

/* footerlogo wit */
.site-footer__logo{width:170px;height:auto;filter:none}

/* nieuwsbrief: foto loopt tot de linkerrand, tekst blijft op de containerlijn */
.nieuwsbrief__in{max-width:none;padding-left:0;padding-right:0}
.nieuwsbrief__body{padding-right:max(var(--gutter),calc((100vw - var(--container)) / 2));padding-left:56px;max-width:none}
@media (max-width:900px){
  .nieuwsbrief__body{padding-left:var(--gutter);padding-right:var(--gutter)}
}
.site-footer__score .reviews__sterren .ico{color:var(--c-primary)}
.topbar__usps .ico{background:rgba(31,138,76,.12)}

/* ── klantenservice-status: groen bolletje = nu bereikbaar ── */
@keyframes ks-puls{0%{box-shadow:0 0 0 0 rgba(52,199,89,.55)}70%{box-shadow:0 0 0 7px rgba(52,199,89,0)}100%{box-shadow:0 0 0 0 rgba(52,199,89,0)}}
.ks-dot{display:inline-block;flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:#8a8a85}
.ks-dot.is-aan{background:#34c759;animation:ks-puls 2.2s ease-out infinite}
.topbar__ks{display:inline-flex;align-items:center;gap:8px}
.ks-status{margin-top:22px;display:flex;flex-direction:column;border:1px solid #2e2e2e;border-radius:10px;overflow:hidden;max-width:420px}
.ks-status__kop{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#1c1c1c;border-bottom:1px solid #2e2e2e;font-size:14.5px;color:#fff}
.ks-status__kop b{font-weight:700}
.ks-kanaal{display:flex;align-items:center;gap:14px;padding:14px 16px;color:#fff;text-decoration:none;border-top:1px solid #262626}
.ks-kanaal:first-of-type{border-top:0}
.ks-kanaal:hover{background:#1a1a1a;color:#fff}
.ks-kanaal .ico{flex:0 0 36px;width:36px;height:36px;border-radius:8px;background:#232323;display:flex;align-items:center;justify-content:center;color:#fff}
.ks-kanaal .ico svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ks-kanaal__tekst{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.ks-kanaal__tekst b{font-size:15px;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ks-kanaal__tekst small{font-size:12.5px;color:#a9a9a3}
.ks-pil{flex:0 0 auto;padding:4px 9px;border-radius:99px;font-size:11.5px;font-weight:700;white-space:nowrap;background:#262626;color:#c4c4be}
.ks-pil.is-aan{background:rgba(52,199,89,.14);color:#5fdc84}
@media (prefers-reduced-motion:reduce){.ks-dot.is-aan{animation:none}}
@media (max-width:480px){.ks-kanaal{flex-wrap:wrap}.ks-pil{margin-left:50px}}
@media (max-width:1100px){.topbar__rechts a.topbar__ks{display:inline-flex}}
@media (max-width:720px){.topbar__ks [data-ks-kort]{font-size:12px}}
@media (max-width:1100px){.topbar__usps li:nth-child(n+2){display:none}}

/* ── footer v5 ── */
.site-footer{background:var(--c-dark);color:#b4b4ae}
.sf-service{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,.9fr);border-bottom:1px solid #2a2a2a}
.sf-service__cel{display:flex;align-items:center;gap:14px;min-width:0;padding:26px 24px;border-left:1px solid #2a2a2a;color:#fff;text-decoration:none}
.sf-service__cel:first-child{border-left:0;padding-left:0}
.sf-service__cel:last-child{padding-right:0}
a.sf-service__cel:hover{background:#1a1a1a;color:#fff}
.sf-service__cel .ks-dot{width:10px;height:10px}
.sf-service__ico{flex:0 0 auto;display:flex;color:#fff}
.sf-service__ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sf-service__tekst{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;line-height:1.3}
.sf-service__tekst b{font-size:16px;font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-service__tekst small{font-size:12.5px;color:#a9a9a3}
.sf-service__cel--status .sf-service__tekst b{font-size:16px}
.sf-service__cel--score strong{font-size:34px;line-height:1;font-weight:800;color:#fff;letter-spacing:-.5px}
.sf-service__cel--score .reviews__sterren{display:flex;gap:2px;color:var(--c-primary)}
.sf-service__cel--score .reviews__sterren .ico{color:var(--c-primary)}
.sf-service__cel--score .reviews__sterren svg{width:14px;height:14px;fill:currentColor;stroke:none}
.sf-service .ks-pil{font-size:11px;padding:3px 8px}

.sf-main{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:40px;padding-top:48px;padding-bottom:44px}
.sf-merk{display:flex;flex-direction:column;gap:16px;max-width:360px}
.sf-merk .site-footer__logo{width:170px;height:auto}
.sf-merk__tekst{margin:0;font-size:14.5px;line-height:1.65;color:#a9a9a3}
.sf-main .site-footer__kop{margin-bottom:16px;color:#fff;font-size:12.5px;letter-spacing:.14em;border:0;padding:0}
.sf-main .site-footer__lijst{display:flex;flex-direction:column;gap:10px}
.sf-main .site-footer__lijst a{font-size:15px;color:#b4b4ae}
.sf-main .site-footer__lijst a:hover{color:#fff}
.site-footer__onder{border-top:1px solid #2a2a2a}

@media (max-width:1100px){
  .sf-service{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sf-service__cel{padding:20px 20px}
  .sf-service__cel:nth-child(odd){border-left:0;padding-left:0}
  .sf-service__cel:nth-child(even){padding-right:0}
  .sf-service__cel:nth-child(n+3){border-top:1px solid #2a2a2a}
  .sf-main{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
  .sf-merk{grid-column:1/-1;max-width:520px}
}
@media (max-width:720px){
  .sf-service{grid-template-columns:1fr}
  .sf-service__cel{border-left:0;padding:16px 0;border-top:1px solid #2a2a2a}
  .sf-service__cel:first-child{border-top:0}
  .sf-main{grid-template-columns:1fr;gap:0;padding-top:28px}
  .sf-merk{margin-bottom:20px}
}
/* ── categorietekst v2: tags boven, één rustige leeskolom, alles op één linkerlijn ── */
.cattekst{background:#fff;border-top:1px solid var(--c-line);padding-top:48px;padding-bottom:64px}
.ct-tags{display:flex;flex-wrap:wrap;gap:20px 48px;padding-bottom:28px;border-bottom:1px solid var(--c-line)}
.ct-tags__groep{display:flex;flex-direction:column;gap:10px;min-width:0}
.ct-tags__label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6b6b66}
.ct-tags .chips{display:flex;flex-wrap:wrap;gap:8px}
.ct-tags .chip small{color:#6b6b66;margin-right:4px}
.ct-body{max-width:1040px;padding-top:36px;display:flex;flex-direction:column;gap:36px}
.ct-intro{margin:0;max-width:760px;font-size:20px;line-height:1.55;font-weight:500;color:var(--c-ink);text-wrap:pretty}
.ct-kolommen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.ct-h2{margin:0 0 10px;font-size:20px;line-height:1.25;font-weight:800;text-transform:none;letter-spacing:0;color:var(--c-ink)}
.ct-kolommen p{margin:0;font-size:16px;line-height:1.7;color:#3a3a37;text-wrap:pretty}
.ct-label{margin:0 0 14px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#6b6b66}
.ct-kort ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;border-top:1px solid var(--c-line)}
.ct-kort li{display:flex;align-items:flex-start;gap:10px;padding:14px 0;border-bottom:1px solid var(--c-line);font-size:15px;line-height:1.45;color:var(--c-ink)}
.ct-kort li .ico{flex:0 0 18px;width:18px;height:18px;margin-top:1px;color:var(--c-primary)}
.ct-kort li .ico svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ct-faq{max-width:760px}
.ct-faq .cattekst-faq{margin:0;border-top:1px solid var(--c-line)}
.ct-faq details{border-bottom:1px solid var(--c-line);background:transparent;border-radius:0;padding:0}
.ct-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;font-size:16px;font-weight:700;color:var(--c-ink);cursor:pointer;list-style:none}
.ct-faq summary::-webkit-details-marker{display:none}
.ct-faq details p{margin:0;padding:0 0 18px;font-size:15.5px;line-height:1.65;color:#3a3a37;max-width:680px}
.ct-faq details[open] summary .ico{transform:rotate(45deg)}
@media (max-width:900px){
  .cattekst{padding-top:32px;padding-bottom:44px}
  .ct-intro{font-size:18px}
  .ct-kolommen{grid-template-columns:1fr;gap:28px}
  .ct-kort ul{grid-template-columns:1fr}
}
@media (min-width:901px) and (max-width:1100px){.ct-kort ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ct-intro-blok{display:flex;flex-direction:column;gap:10px;padding:28px 32px;background:#f4f4f2;border-left:4px solid var(--c-primary);border-radius:0 var(--radius-sm,6px) var(--radius-sm,6px) 0}
.ct-intro-blok__label{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#a14a14}
.ct-intro-blok .ct-intro{max-width:820px}
@media (max-width:900px){.ct-intro-blok{padding:22px 20px}}

/* ── categorietekst v3: artikel links, "In het kort" als plakkende kaart rechts ── */
.ct-tags{flex-direction:row}
.ct-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-template-areas:"intro kort" "tekst kort" "faq kort";gap:36px 56px;align-items:start;padding-top:40px;max-width:none}
.ct-intro-blok{grid-area:intro}
.ct-kort{grid-area:kort}
.ct-artikel{grid-area:tekst;display:flex;flex-direction:column;gap:28px;max-width:none}
.ct-faq{grid-area:faq;max-width:none}
.ct-intro-blok{padding:30px 34px}
.ct-intro-blok .ct-intro{font-size:19px;line-height:1.6;max-width:none}
.ct-sectie{padding-top:28px;border-top:1px solid var(--c-line)}
.ct-sectie:first-child{padding-top:0;border-top:0}
.ct-sectie .ct-h2{margin:0 0 12px;font-size:22px}
.ct-sectie p{margin:0;font-size:16.5px;line-height:1.75;color:#3a3a37;text-wrap:pretty;max-width:720px}
.ct-kort{position:sticky;top:24px;background:#fff;border:1.5px solid var(--c-line);border-top:4px solid var(--c-ink);border-radius:var(--radius-sm,6px);padding:24px 24px 8px}
.ct-kort__titel{margin:0 0 6px;font-size:20px;line-height:1.2;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:var(--c-ink)}
.ct-kort ul{display:block;border-top:0}
.ct-kort li{padding:14px 0;border-bottom:1px solid var(--c-line);font-size:15.5px}
.ct-kort li:last-child{border-bottom:0}
.ct-faq .ct-label{font-size:22px;font-weight:800;letter-spacing:0;text-transform:none;color:var(--c-ink);margin-bottom:12px}
.ct-faq details p{max-width:720px}
@media (max-width:1000px){
  .ct-grid{grid-template-columns:1fr;grid-template-areas:"intro" "kort" "tekst" "faq";gap:28px}
  .ct-kort{position:static}
  .ct-kort ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
  .ct-kort li:nth-last-child(2):nth-child(odd){border-bottom:0}
}
@media (max-width:640px){
  .ct-tags{flex-direction:column}
  .ct-kort ul{grid-template-columns:1fr}
  .ct-kort li:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--c-line)}
  .ct-intro-blok{padding:22px 20px}
  .ct-intro-blok .ct-intro{font-size:17.5px}
}

/* servicestrook: belangrijke tekst nooit afkappen, label + status op één regel erboven */
@media (min-width:1101px){
  .sf-service{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1.15fr) minmax(0,.9fr)}
  .sf-service__cel{padding:24px 22px}
  .sf-service__cel:first-child{padding-left:0}
  .sf-service__cel:last-child{padding-right:0}
}
.sf-service__tekst b{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;font-size:17px}
.sf-service__rij{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.sf-service__rij small{white-space:nowrap}
.sf-service .ks-pil{font-size:10.5px;padding:2px 7px;line-height:1.4}
.sf-service__cel--score{gap:14px}
.sf-service__cel--score .sf-service__tekst small{white-space:normal}
/* echte productfoto's: vrijstaand op wit tonen, niet bijsnijden */
.product__media{background:#fff}
.product__media img{object-fit:contain}
.cat-tegel img,.doelgroep img,.gids img,.hero__bg,.campagne__bg,.nieuwsbrief__foto img,.mega__uitgelicht img{object-fit:cover}


/* ── beeldtaal v3: volle kleur, één warme grade, cinematic overlay, motion ── */
.cat-tegel,.doelgroep,.gids,.hero,.campagne,.mega__uitgelicht,.nieuwsbrief__foto{position:relative;overflow:hidden;isolation:isolate}
/* 1. één grade over alle sfeerbeelden: iets minder verzadigd, meer diepte */
.cat-tegel img,.doelgroep img,.gids img,.hero__bg,.campagne__bg,.nieuwsbrief__foto img,.mega__uitgelicht img{
  filter:saturate(.82) contrast(1.08);transition:transform 1.6s cubic-bezier(.16,1,.3,1),filter .8s ease}
/* 2. overlay: diep onderin, warm oranje gloed in de hoek — overal dezelfde */
.cat-tegel::after,.doelgroep::after,.gids::after,.hero::after,.campagne::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(120% 80% at 100% 0%,rgba(var(--c-primary-rgb),.28),transparent 55%),linear-gradient(180deg,rgba(18,15,12,0) 30%,rgba(18,15,12,.82) 100%);
  mix-blend-mode:normal;transition:opacity .8s ease}
.cat-tegel__title,.doelgroep__title,.doelgroep__link,.hero__in,.hero__teller,.campagne__in{z-index:2}
.gids__soort,.gids__title,.gids__body,.gids__meta{position:relative;z-index:2}
/* 3. spotlight volgt de muis in de tegels */
.cat-tegel::before,.doelgroep::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .4s ease;
  background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(255,190,140,.32),transparent 70%)}
.cat-tegel:hover::before,.doelgroep:hover::before{opacity:1}
.cat-tegel:hover img,.doelgroep:hover img,.gids:hover img{transform:scale(1.08);filter:saturate(1) contrast(1.05)}
.cat-tegel:hover::after,.doelgroep:hover::after{opacity:.8}
/* oranje lijn groeit onder de titel bij hover */
.cat-tegel h3,.doelgroep h3,.cat-tegel__titel,.doelgroep__titel{background:linear-gradient(var(--c-primary),var(--c-primary)) 0 100%/0 3px no-repeat;padding-bottom:6px;transition:background-size .6s cubic-bezier(.16,1,.3,1)}
.cat-tegel:hover h3,.doelgroep:hover h3,.cat-tegel:hover .cat-tegel__titel,.doelgroep:hover .doelgroep__titel{background-size:100% 3px}
/* 4. hero: beeld opent als een gordijn, tekst rijst op uit een masker, langzame camera */
.hero__bg{animation:ds-gordijn 1.4s cubic-bezier(.77,0,.18,1) both,ds-camera 24s 1.4s ease-in-out infinite alternate;transform-origin:65% 50%}
@keyframes ds-gordijn{from{clip-path:inset(0 0 0 100%);transform:scale(1.25)}to{clip-path:inset(0);transform:scale(1.06)}}
@keyframes ds-camera{from{transform:scale(1.06)}to{transform:scale(1.16) translate(-1.5%,1%)}}
.hero__in > *{animation:ds-rijs 1s cubic-bezier(.16,1,.3,1) both;animation-delay:.7s}
.hero__in > *:nth-child(2){animation-delay:.82s}
.hero__in > *:nth-child(3){animation-delay:.94s}
.hero__in > *:nth-child(4){animation-delay:1.06s}
@keyframes ds-rijs{from{opacity:0;transform:translateY(40px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0 0 -20% 0)}}
.campagne__bg{animation:ds-camera 28s ease-in-out infinite alternate-reverse}
/* 5. merkenband: loopt rustig door */
.ds-band{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff);overflow:hidden;border-block:1px solid rgba(0,0,0,.08)}
.ds-band__spoor{display:flex;width:max-content;animation:ds-band 38s linear infinite}
.ds-band:hover .ds-band__spoor{animation-play-state:paused}
.ds-band__set{display:flex;align-items:center;gap:44px;padding:16px 22px}
.ds-band__item{font-size:clamp(20px,2.4vw,30px);font-weight:800;letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap}
.ds-band__dot{width:10px;height:10px;border-radius:50%;background:#fff;opacity:.55;flex:0 0 auto}
@keyframes ds-band{to{transform:translateX(-50%)}}
/* 6. producten: altijd vrijstaand op wit */
.product__media{background:#fff}
.product__media img{object-fit:contain;filter:none;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.product:hover .product__media img{transform:scale(1.05) translateY(-4px)}
/* 7. blokken openen als gordijn bij scrollen */
.js-reveal .ds-reveal{opacity:0;transform:translateY(32px);transition:opacity .9s ease,transform 1s cubic-bezier(.16,1,.3,1)}
.js-reveal .ds-reveal.ds-gordijn{opacity:1;transform:none;clip-path:inset(100% 0 0 0);transition:clip-path 1.1s cubic-bezier(.77,0,.18,1)}
.js-reveal .ds-reveal.is-in{opacity:1;transform:none;clip-path:inset(0)}
@media (prefers-reduced-motion:reduce){
  .hero__bg,.campagne__bg,.hero__in > *,.ds-band__spoor{animation:none}
  .js-reveal .ds-reveal,.js-reveal .ds-reveal.ds-gordijn{opacity:1;transform:none;clip-path:none;transition:none}
}

/* ── correctie v3: rustiger, professioneler ── */
/* gidsen: geen overlay over de kaart, tekst gewoon zwart op wit; overlay alleen op de foto zelf niet nodig */
.gids::after{content:none}
.gids{isolation:auto}
.gids img{filter:none}
.gids:hover img{transform:scale(1.04);filter:none}
/* tegels: geen lichtvlek, geen kleurwissel; alleen een kleine, trage zoom */
.cat-tegel::before,.doelgroep::before{content:none}
.cat-tegel:hover img,.doelgroep:hover img{transform:scale(1.04);filter:saturate(.82) contrast(1.08)}
.cat-tegel:hover::after,.doelgroep:hover::after{opacity:1}
.cat-tegel h3,.doelgroep h3,.cat-tegel__titel,.doelgroep__titel{background:none;padding-bottom:0}
/* overlay: alleen donker onderin voor leesbaarheid, geen oranje gloed */
.cat-tegel::after,.doelgroep::after,.hero::after,.campagne::after{background:linear-gradient(180deg,rgba(18,15,12,0) 45%,rgba(18,15,12,.7) 100%)}
/* merkenband: dun en neutraal */
.ds-band{background:#fff;color:var(--c-sub,#6b6b66);border-block:1px solid var(--c-line,#e6e6e2)}
.ds-band__set{gap:36px;padding:11px 18px}
.ds-band__item{font-size:13px;font-weight:700;letter-spacing:.12em}
.ds-band__dot{width:4px;height:4px;background:currentColor;opacity:.4}
.ds-band__spoor{animation-duration:60s}

/* ── usp-strook v2 ── */
.usps{background:#fff;border-bottom:1px solid var(--c-line)}
.usps__lijst{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.usps__item{display:flex;align-items:center;gap:14px;padding:20px 22px;border:0;border-left:1px solid var(--c-line);text-transform:none;letter-spacing:0;justify-content:flex-start;text-align:left}
.usps__item:first-child{border-left:0;padding-left:0}
.usps__ico{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:#f4f4f2;color:var(--c-ink);display:flex;align-items:center;justify-content:center}
.usps__tekst{min-width:0;display:flex;flex-direction:column;gap:1px}
.usps__titel{font-size:14.5px;font-weight:700;line-height:1.3;color:var(--c-ink)}
.usps__sub{font-size:13px;line-height:1.35;color:var(--c-sub)}
@media (max-width:900px){.usps__lijst{grid-template-columns:repeat(2,minmax(0,1fr))}.usps__item{padding:16px 14px}.usps__item:nth-child(odd){border-left:0;padding-left:0}.usps__item:nth-child(n+3){border-top:1px solid var(--c-line)}}
@media (max-width:520px){.usps__lijst{grid-template-columns:1fr}.usps__item{border-left:0;padding-left:0}.usps__item+.usps__item{border-top:1px solid var(--c-line)}}

/* ── merken v2 ── */
.merken{background:#f7f7f5;border:0;padding:64px 0}
.merken__in{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:56px;align-items:center}
.merken__kop{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.merken__titel{margin:0;font-size:clamp(26px,3vw,34px);line-height:1.1;font-weight:800;letter-spacing:-.02em;text-transform:uppercase;color:var(--c-ink)}
.merken__sub{margin:0;font-size:15.5px;line-height:1.55;color:var(--c-sub);text-wrap:pretty}
.merken__alle{margin-top:6px;font-size:14px;font-weight:700;color:var(--c-ink);text-decoration:none;border-bottom:2px solid var(--c-primary);padding-bottom:2px}
.merken__alle:hover{color:var(--c-ink);border-bottom-color:var(--c-ink)}
.merken__lijst{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;background:var(--c-line);border:1px solid var(--c-line);border-radius:10px;overflow:hidden;width:auto}
.merken__lijst li{background:#fff}
.merken__lijst a{display:flex;align-items:center;justify-content:center;height:108px;padding:0 22px;transition:background .3s ease}
.merken__lijst img{display:block;width:100%;max-width:150px;height:auto;max-height:34px;object-fit:contain;opacity:.55;filter:grayscale(1);transition:opacity .3s ease,filter .3s ease}
.merken__lijst a:hover{background:#fbfbfa}
.merken__lijst a:hover img,.merken__lijst a:focus-visible img{opacity:1;filter:none}
@media (max-width:1000px){.merken__in{grid-template-columns:1fr;gap:28px}}
@media (max-width:620px){.merken{padding:44px 0}.merken__lijst{grid-template-columns:repeat(2,minmax(0,1fr))}.merken__lijst a{height:88px}}
.merken__lijst a,.merken__lijst a:hover{opacity:1;filter:none}
.merken__lijst img{opacity:.7}

/* ── usp-strook v3: compact, in de huisstijl (zoals menu en topbar) ── */
.usps{background:#fff;border-bottom:1px solid var(--c-line)}
.usps__lijst{grid-template-columns:repeat(4,minmax(0,1fr))}
.usps__item{justify-content:center;gap:10px;padding:0 14px;height:58px;border-left:1px solid var(--c-line)}
.usps__item:first-child{padding-left:14px;border-left:0}
.usps__ico{flex:0 0 auto;width:auto;height:auto;border-radius:0;background:none;color:var(--c-primary)}
.usps__ico svg{width:19px;height:19px;stroke-width:2}
.usps__titel{font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.usps__sub{display:none}
.usps__tekst{overflow:hidden}
@media (max-width:1100px){.usps__titel{font-size:11.5px;letter-spacing:.04em}}
@media (max-width:900px){.usps__lijst{grid-template-columns:repeat(2,minmax(0,1fr))}.usps__item{height:50px;justify-content:flex-start;padding:0 12px}.usps__item:nth-child(odd){padding-left:12px}}
@media (max-width:520px){.usps__lijst{grid-template-columns:1fr}.usps__item{height:46px}}

/* hero-teller: geen witte doos, dunne voortgangsstreepjes op het beeld */
.hero__teller{background:none;border:0;box-shadow:none;border-radius:0;padding:0;gap:14px;color:#fff;display:flex;align-items:center}
.hero__teller button{background:none;border:0;color:#fff;opacity:.75;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer}
.hero__teller button:hover{opacity:1}
.hero__teller > span,.hero__teller [data-teller]{font-size:12.5px;font-weight:700;letter-spacing:.14em;color:#fff;border:0;padding:0;background:none}

.hero__teller button .ico,.hero__teller button svg{width:18px;height:18px;stroke:#fff}
.hero__teller > span{min-width:44px;text-align:center;border-left:0;border-right:0}
.hero__teller > button{border-left:0!important;border-right:0!important}
.usps__titel{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.25;text-wrap:balance}
.usps__tekst{overflow:visible}
.usps__item{height:auto;min-height:58px;padding-top:8px;padding-bottom:8px}
@media (max-width:1300px){.usps__titel{font-size:12px;letter-spacing:.03em}}
@media (max-width:1100px){.usps__titel{font-size:11.5px;letter-spacing:.02em}.usps__item{gap:8px;padding-left:10px;padding-right:10px}}
@media (max-width:900px){.usps__item{min-height:50px}}

/* ── categoriekop v2: rustige titel, subcategorieën als chips die afbreken (nooit afgesneden) ── */
.cat-kop{padding:22px 0 8px}
.cat-kop .kruimel{font-size:13px;color:var(--c-sub)}
.cat-kop h1,.woocommerce-products-header__title{margin:6px 0 0;font-size:clamp(26px,2.8vw,34px);line-height:1.15;font-weight:800;letter-spacing:-.01em;text-transform:none}
.cat-kop h1 small,.woocommerce-products-header__title small{font-size:15px;font-weight:500;color:var(--c-sub);margin-left:8px;letter-spacing:0}
.subcats{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding:0 0 18px;overflow:visible;border-bottom:1px solid var(--c-line);max-height:none}
.subcats a{flex:0 0 auto;height:38px;padding:0 14px;border:1px solid var(--c-line);border-bottom:1px solid var(--c-line);border-radius:999px;background:#fff;color:var(--c-ink);font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;gap:6px}
.subcats a:hover{border-color:var(--c-ink);color:var(--c-ink)}
.subcats a.is-actief{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.subcats a span{display:inline;font-weight:500;font-size:12.5px;color:var(--c-sub);opacity:1}
.subcats a.is-actief span{color:rgba(255,255,255,.7)}
/* lange lijsten (shop-overzicht): eerst 2 rijen, daarna "Alle categorieën" */
.subcats.is-ingeklapt{max-height:102px;overflow:hidden;padding-bottom:0;border-bottom:0}
.subcats__meer{display:none;margin:10px 0 18px;padding:0;border:0;background:none;font-size:14px;font-weight:700;color:var(--c-ink);border-bottom:2px solid var(--c-primary);cursor:pointer}
.subcats.is-ingeklapt + .subcats__meer,.subcats.is-uitgeklapt + .subcats__meer{display:inline-block}
.subcats.is-uitgeklapt{padding-bottom:0;border-bottom:0}
@media (max-width:720px){.subcats{flex-wrap:nowrap;overflow-x:auto;margin-left:calc(var(--gutter,16px)*-1);margin-right:calc(var(--gutter,16px)*-1);padding-left:var(--gutter,16px);padding-right:var(--gutter,16px);scroll-padding-left:var(--gutter,16px)}.subcats.is-ingeklapt{max-height:none;overflow-x:auto}.subcats__meer{display:none!important}}

/* ── kleurfilter v2: naam + aantal, 6 zichtbaar, rest achter "Alle kleuren" ── */
.filter__kleurlijst{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.filter__kleurlijst li.is-extra{display:none}
.filter__kleurlijst.is-open li.is-extra{display:block}
.filter__kleurlijst label{display:flex;align-items:center;gap:10px;min-height:34px;font-size:14.5px;color:var(--c-ink);cursor:pointer}
.filter__kleurlijst input{position:absolute;opacity:0;width:1px;height:1px}
.filter__kleurlijst .filter__kleur{flex:0 0 22px;width:22px;height:22px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}
.filter__kleurlijst input:checked + .filter__kleur{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--c-ink)}
.filter__kleurlijst input:focus-visible + .filter__kleur{outline:2px solid var(--c-primary);outline-offset:3px}
.filter__kleurnaam{flex:1;min-width:0}
.filter__kleurlijst input:checked ~ .filter__kleurnaam{font-weight:700}
.filter__n{font-size:12.5px;color:var(--c-sub)}
.filter__meer{margin-top:8px;padding:0;border:0;background:none;font-size:13.5px;font-weight:700;color:var(--c-ink);border-bottom:2px solid var(--c-primary);cursor:pointer}
/* losse bolletjes (ook live, andere filterplugins): altijd een rand, zodat wit zichtbaar is */
.filter__kleur,.product__swatches li{box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}

/* ── productkaart: vaste opbouw, prijs en knop altijd op dezelfde hoogte ── */
ul.products li.product{display:flex;flex-direction:column;height:100%}
ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto;text-decoration:none}
ul.products li.product .product__media{aspect-ratio:1/1;background:#fff}
ul.products li.product .product__media img{width:100%;height:100%;object-fit:contain}
ul.products li.product .product__brand{display:block;min-height:18px;margin-top:14px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-sub)}
ul.products li.product .woocommerce-loop-product__title{margin:4px 0 0;font-size:15px;line-height:1.35;font-weight:600;color:var(--c-ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.35em * 2)}
ul.products li.product .price{display:block;margin-top:auto;padding-top:10px;font-size:17px;font-weight:800;color:var(--c-ink)}
ul.products li.product .product__meta{min-height:22px;margin-top:6px}
ul.products li.product .button,ul.products li.product .add_to_cart_button{display:flex;align-items:center;justify-content:center;width:100%;height:46px;margin-top:12px;padding:0 14px;border:1.5px solid var(--c-ink);border-radius:var(--radius-sm);background:#fff;color:var(--c-ink);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
ul.products li.product .button:hover{background:var(--c-ink);color:#fff}
/* labels (sale, laatste stuks, direct leverbaar): klein, op de foto, één stijl */
ul.products li.product .badges,ul.products li.product .product__labels{position:absolute;left:10px;top:10px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0}
ul.products li.product .onsale,ul.products li.product .badges > span,ul.products li.product .stock{position:static;display:inline-block;min-height:0;min-width:0;padding:3px 8px;border-radius:4px;background:#fff;color:var(--c-ink);font-size:11.5px;font-weight:700;line-height:1.4;letter-spacing:.02em;box-shadow:0 0 0 1px var(--c-line)}
ul.products li.product .onsale{background:var(--c-label,var(--c-primary));color:var(--c-on-label,#fff);box-shadow:none}
ul.products li.product .stock.out-of-stock,ul.products li.product .is-laatste{color:#a14a14}
ul.products li.product{position:relative}

/* ── aanpassingen aan de markup van het thema ── */
@media (max-width:1100px){.topbar__usps li{display:none}.topbar__usps li.is-actief{display:flex}.topbar__rechts .topbar__links{display:none}}
.topbar__rechts .topbar__links{margin:0;padding:0;list-style:none;display:flex;gap:18px}
.topbar__rechts .topbar__links a{font-size:13px;letter-spacing:0}
.topbar__usps li > span:not(.ico){overflow:hidden;text-overflow:ellipsis}
.topbar__score .ico svg{width:13px;height:13px}
.site-footer__merken .ds-pay__label{display:none}
.site-footer__merken .ds-pay__list{gap:8px}
.site-footer__merken .ds-pay__chip{min-width:38px;height:38px}
.site-footer__onder .betaalmerken img{border-radius:6px;background:#fff}
.site-footer__kolom > summary .ico svg{width:18px;height:18px}
.sf-merk .site-footer__logo-link{display:inline-block}
.reviews__verdeling{list-style:none;margin:0;padding:0}
.reviews__verdeling span:last-child{text-align:right}
.reviews__verdeling b.w-0{width:0%}.reviews__verdeling b.w-1{width:1%}.reviews__verdeling b.w-2{width:2%}.reviews__verdeling b.w-3{width:3%}.reviews__verdeling b.w-4{width:4%}.reviews__verdeling b.w-5{width:5%}.reviews__verdeling b.w-6{width:6%}.reviews__verdeling b.w-7{width:7%}.reviews__verdeling b.w-8{width:8%}.reviews__verdeling b.w-9{width:9%}.reviews__verdeling b.w-10{width:10%}.reviews__verdeling b.w-11{width:11%}.reviews__verdeling b.w-12{width:12%}.reviews__verdeling b.w-13{width:13%}.reviews__verdeling b.w-14{width:14%}.reviews__verdeling b.w-15{width:15%}.reviews__verdeling b.w-16{width:16%}.reviews__verdeling b.w-17{width:17%}.reviews__verdeling b.w-18{width:18%}.reviews__verdeling b.w-19{width:19%}.reviews__verdeling b.w-20{width:20%}.reviews__verdeling b.w-21{width:21%}.reviews__verdeling b.w-22{width:22%}.reviews__verdeling b.w-23{width:23%}.reviews__verdeling b.w-24{width:24%}.reviews__verdeling b.w-25{width:25%}.reviews__verdeling b.w-26{width:26%}.reviews__verdeling b.w-27{width:27%}.reviews__verdeling b.w-28{width:28%}.reviews__verdeling b.w-29{width:29%}.reviews__verdeling b.w-30{width:30%}.reviews__verdeling b.w-31{width:31%}.reviews__verdeling b.w-32{width:32%}.reviews__verdeling b.w-33{width:33%}.reviews__verdeling b.w-34{width:34%}.reviews__verdeling b.w-35{width:35%}.reviews__verdeling b.w-36{width:36%}.reviews__verdeling b.w-37{width:37%}.reviews__verdeling b.w-38{width:38%}.reviews__verdeling b.w-39{width:39%}.reviews__verdeling b.w-40{width:40%}.reviews__verdeling b.w-41{width:41%}.reviews__verdeling b.w-42{width:42%}.reviews__verdeling b.w-43{width:43%}.reviews__verdeling b.w-44{width:44%}.reviews__verdeling b.w-45{width:45%}.reviews__verdeling b.w-46{width:46%}.reviews__verdeling b.w-47{width:47%}.reviews__verdeling b.w-48{width:48%}.reviews__verdeling b.w-49{width:49%}.reviews__verdeling b.w-50{width:50%}.reviews__verdeling b.w-51{width:51%}.reviews__verdeling b.w-52{width:52%}.reviews__verdeling b.w-53{width:53%}.reviews__verdeling b.w-54{width:54%}.reviews__verdeling b.w-55{width:55%}.reviews__verdeling b.w-56{width:56%}.reviews__verdeling b.w-57{width:57%}.reviews__verdeling b.w-58{width:58%}.reviews__verdeling b.w-59{width:59%}.reviews__verdeling b.w-60{width:60%}.reviews__verdeling b.w-61{width:61%}.reviews__verdeling b.w-62{width:62%}.reviews__verdeling b.w-63{width:63%}.reviews__verdeling b.w-64{width:64%}.reviews__verdeling b.w-65{width:65%}.reviews__verdeling b.w-66{width:66%}.reviews__verdeling b.w-67{width:67%}.reviews__verdeling b.w-68{width:68%}.reviews__verdeling b.w-69{width:69%}.reviews__verdeling b.w-70{width:70%}.reviews__verdeling b.w-71{width:71%}.reviews__verdeling b.w-72{width:72%}.reviews__verdeling b.w-73{width:73%}.reviews__verdeling b.w-74{width:74%}.reviews__verdeling b.w-75{width:75%}.reviews__verdeling b.w-76{width:76%}.reviews__verdeling b.w-77{width:77%}.reviews__verdeling b.w-78{width:78%}.reviews__verdeling b.w-79{width:79%}.reviews__verdeling b.w-80{width:80%}.reviews__verdeling b.w-81{width:81%}.reviews__verdeling b.w-82{width:82%}.reviews__verdeling b.w-83{width:83%}.reviews__verdeling b.w-84{width:84%}.reviews__verdeling b.w-85{width:85%}.reviews__verdeling b.w-86{width:86%}.reviews__verdeling b.w-87{width:87%}.reviews__verdeling b.w-88{width:88%}.reviews__verdeling b.w-89{width:89%}.reviews__verdeling b.w-90{width:90%}.reviews__verdeling b.w-91{width:91%}.reviews__verdeling b.w-92{width:92%}.reviews__verdeling b.w-93{width:93%}.reviews__verdeling b.w-94{width:94%}.reviews__verdeling b.w-95{width:95%}.reviews__verdeling b.w-96{width:96%}.reviews__verdeling b.w-97{width:97%}.reviews__verdeling b.w-98{width:98%}.reviews__verdeling b.w-99{width:99%}.reviews__verdeling b.w-100{width:100%}
.reviews__sterren{display:inline-flex;gap:2px}
.reviews__sterren .ico svg{fill:currentColor;stroke:none}
.cat-kop h1 > span,.cat-kop__title > span{font-size:15px;font-weight:500;color:var(--c-sub);margin-left:8px;letter-spacing:0}
.filter__kleurlijst a{display:flex;align-items:center;gap:10px;min-height:34px;font-size:14.5px;color:var(--c-ink);text-decoration:none}
.filter__kleurlijst a:hover .filter__kleurnaam{text-decoration:underline;text-underline-offset:3px}
.filter__kleurlijst a.is-aan .filter__kleur{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--c-ink)}
.filter__kleurlijst a.is-aan .filter__kleurnaam{font-weight:700}
.filter__kleurlijst a.is-leeg{opacity:.45}
.filter__kleurlijst a:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px;border-radius:4px}
.filter__kleurlijst li.is-extra{display:none}
.filter__kleurlijst.is-open li.is-extra{display:block}
.zijblok--onder{margin-top:22px;padding-top:22px;border-top:1px solid var(--c-line);border-bottom:0;margin-bottom:0}
.zijblok .mini__foto img{object-fit:contain;background:#fff}
@media (max-width:900px){.filters .zijblok--onder{display:none}}
.subcats__meer[hidden]{display:none!important}
.hero-slider .hero-slide__beeld img{display:block}
.hero-slider{border-top:0}
.nieuwsbrief__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.merken__kop .merken__alle span{border:0}
.usps__ico .ico svg{width:19px;height:19px}
/* Het grote beeld en de tekst bovenaan zijn direct zichtbaar (Largest Contentful Paint, Speed Index):
   de tekst schuift alleen kort op zijn plek, zonder te verschijnen; de trage camera loopt door. */
.hero__bg{animation:ds-camera 24s ease-in-out infinite alternate}
.hero__in > *,.hero__in > *:nth-child(n){animation:ds-schuif .5s cubic-bezier(.16,1,.3,1) both;animation-delay:0s}
@keyframes ds-schuif{from{transform:translateY(14px)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.hero__bg,.hero__in > *,.hero__in > *:nth-child(n){animation:none}}


/* ==========================================================================
   Ontwerp deel 2 (8B): zoeken, winkelwagen-paneel, bewaard en vergelijken.
   Overgenomen uit shop.css van het ontwerp; aanpassingen onderaan dit blok.
   ========================================================================== */
/* ==========================================================================
   11 · ZOEKEN — overlay, telefoonstart, geen resultaten, zoekassistent
   Gedrag: de overlay opent zodra het zoekveld focus krijgt (recent + populair)
   en vult rechts live na 2 tekens (debounce 200 ms). Escape of klik buiten de
   overlay sluit. Resultaten laden door met infinite scroll: bij 600 px van de
   onderkant komt de volgende pagina (24 stuks), .zoek-laden draait zolang.
   Telefoon: tik op het zoekicoon opent .zoek-start full-screen met autofocus.
   ========================================================================== */
.zoek-overlay__in{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;padding-top:28px;padding-bottom:28px}
.zoek-groep{display:flex;flex-direction:column;gap:12px}
.zoek-groep + .zoek-groep{margin-top:26px}
.zoek-kop{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub)}
.zoek-recent{display:flex;flex-direction:column}
.zoek-recent li{display:flex;align-items:center;gap:10px;min-height:40px;border-bottom:1px solid var(--c-line)}
.zoek-recent a{flex:1;display:flex;align-items:center;gap:10px;color:var(--c-ink);font-size:15px}
.zoek-recent a:hover{color:var(--c-primary-2)}
.zoek-recent .ico{color:var(--c-sub)}
.zoek-recent .ico svg{width:16px;height:16px}
.zoek-recent button{border:0;background:none;color:var(--c-sub);padding:6px}
.zoek-resultaten__kop{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin-bottom:16px}
.zoek-resultaten__titel{font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.zoek-resultaten__titel mark{background:none;color:var(--c-primary-2)}
.zoek-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.zoek-kaart{display:flex;flex-direction:column;gap:6px;min-width:0;color:var(--c-ink)}
.zoek-kaart:hover{color:var(--c-ink)}
.zoek-kaart:hover .zoek-kaart__naam{text-decoration:underline}
.zoek-kaart__foto{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--c-surface);overflow:hidden}
.zoek-kaart__foto img{width:100%;height:100%;object-fit:cover}
.zoek-kaart__merk{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--c-sub)}
.zoek-kaart__naam{font-size:15px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ds-card__why{display:flex;gap:6px;font-size:13px;line-height:1.4;color:var(--c-primary-2)}
.ds-card__why::before{content:"";flex:0 0 auto;width:4px;margin:3px 0;border-radius:2px;background:var(--c-primary)}
.zoek-kaart__prijs{font-size:16px;font-weight:700}
.zoek-meer{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:26px}
.zoek-laden{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;color:var(--c-sub)}
.zoek-laden::before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid var(--c-line);border-top-color:var(--c-primary);animation:zoek-draai .8s linear infinite}
@keyframes zoek-draai{to{transform:rotate(360deg)}}

.zoek-start{display:flex;flex-direction:column;gap:14px;padding:18px 16px}
.zoek-start__kop{display:flex;align-items:center;justify-content:space-between}
.zoek-start__titel{font-size:24px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.zoek-start .zoekveld{max-width:none}
.zoek-start .btn{width:100%}
.zoek-sugg{display:flex;flex-direction:column}
.zoek-sugg li{padding:10px 0;border-bottom:1px solid var(--c-line)}
.zoek-sugg li:last-child{border-bottom:0}
.zoek-sugg .mini__naam mark{background:none;font-weight:800;color:var(--c-ink)}

.zoek-leeg{display:flex;flex-direction:column;gap:18px;max-width:780px}
.zoek-leeg__titel{font-size:22px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.zoek-leeg__alt{font-size:16px}
.zoek-leeg__alt a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.zoek-leeg__cats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.zoek-cat{display:flex;flex-direction:column;gap:8px;color:var(--c-ink);font-weight:700}
.zoek-cat img{aspect-ratio:4/3;width:100%;object-fit:cover;border-radius:var(--radius-sm);background:var(--c-surface)}

.zoek-assist__vraag{align-self:flex-end;max-width:85%;padding:11px 15px;border-radius:14px 14px 4px 14px;background:var(--c-ink);color:#fff;font-size:15px}
.zoek-assist__intro{font-size:15px;line-height:1.55}
.zoek-weer{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-sm);background:var(--c-surface)}
.zoek-weer .ico svg{width:30px;height:30px;color:var(--c-ink)}
.zoek-weer__temp{font-size:22px;font-weight:800}
.zoek-weer__plaats{display:block;font-size:13px;color:var(--c-sub)}
.zoek-pakket{display:flex;flex-direction:column;gap:12px}
.zoek-pakket__item{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--c-line);border-radius:var(--radius)}
.zoek-pakket__kop{display:flex;align-items:center;justify-content:space-between;gap:10px}
.zoek-pakket__tag{display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:4px;background:var(--c-ink);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.zoek-pakket__wissel{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:4px 0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink)}
.zoek-pakket__wissel:hover{color:var(--c-primary-2)}
.zoek-pakket__wissel .ico svg{width:15px;height:15px}
.zoek-totaal{display:flex;justify-content:space-between;align-items:baseline;font-size:15px}
.zoek-totaal b{font-size:20px}
@media (max-width:1100px){.zoek-raster{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.zoek-overlay__in{grid-template-columns:1fr;gap:24px}.zoek-raster{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media (max-width:560px){.zoek-leeg__cats{grid-template-columns:1fr 1fr}.zoek-leeg__cats .zoek-cat:nth-child(3){display:none}}

/* ==========================================================================
   12 · WINKELWAGEN-PANEEL, TOEVOEGMELDING, LEGE WAGEN
   De minicart is .widget_shopping_cart_content binnen een .paneel. Na
   "In winkelwagen" opent hetzelfde paneel met .wagen-ok bovenaan; op
   telefoon als bottom-sheet. Aantal +/- werkt via wc-ajax en ververst de
   fragmenten; de knoppen zijn tijdens het laden disabled.
   ========================================================================== */
.wagen-ok{display:grid;grid-template-columns:auto 56px minmax(0,1fr);gap:4px 12px;align-items:center;padding:12px 14px;border-radius:var(--radius);background:#edf7ee;border:1px solid #cfe8d1}
.wagen-ok > .ico{grid-row:1/3;width:28px;height:28px;border-radius:50%;background:var(--c-success);color:#fff}
.wagen-ok > .ico svg{width:15px;height:15px;stroke-width:3}
.wagen-ok__foto{grid-row:1/3;width:56px;height:56px;border-radius:var(--radius-sm);background:#fff;overflow:hidden}
.wagen-ok__titel{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1f5e23}
.wagen-ok__naam{font-size:15px;font-weight:600;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wagen-lijst{display:flex;flex-direction:column}
.wagen-regel{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:6px 14px;padding:14px 0;border-bottom:1px solid var(--c-line)}
.wagen-regel:first-child{padding-top:0}
.wagen-regel__foto{grid-row:1/4;width:72px;height:72px;border-radius:var(--radius-sm);background:var(--c-surface);overflow:hidden}
.wagen-regel__naam{font-size:15px;font-weight:600;line-height:1.3;color:var(--c-ink)}
.wagen-regel__var{display:flex;flex-wrap:wrap;gap:6px}
.wagen-regel__prijs{grid-column:3;grid-row:1;font-weight:700;white-space:nowrap}
.wagen-regel__acties{grid-column:2/4;display:flex;align-items:center;justify-content:space-between;gap:10px}
.wagen-weg{display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:6px 0;font-size:13px;color:var(--c-sub)}
.wagen-weg:hover{color:#8a1f16}
.wagen-weg .ico svg{width:16px;height:16px}
.wagen-gratis{display:flex;flex-direction:column;gap:8px}
.wagen-gratis__tekst{display:flex;align-items:center;gap:8px;font-size:14.5px}
.wagen-gratis__tekst .ico svg{width:18px;height:18px}
.wagen-gratis__lijn{height:6px;border-radius:3px;background:#ececE8;overflow:hidden}
.wagen-gratis__lijn i{display:block;height:100%;border-radius:3px;background:var(--c-primary)}
.wagen-gratis.is-klaar .wagen-gratis__tekst{color:#1f5e23;font-weight:600}
.wagen-gratis.is-klaar .wagen-gratis__lijn i{background:var(--c-success)}
.wagen-combi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.wagen-combi__kaart{display:flex;flex-direction:column;gap:6px;min-width:0}
.wagen-combi__kaart img{aspect-ratio:1;width:100%;object-fit:cover;border-radius:var(--radius-sm);background:var(--c-surface)}
.wagen-combi__naam{font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wagen-combi__rij{display:flex;align-items:center;justify-content:space-between;gap:8px}
.wagen-plus{width:36px;height:36px;border:1px solid var(--c-ink);border-radius:var(--radius-sm);background:#fff;display:flex;align-items:center;justify-content:center}
.wagen-plus:hover{background:var(--c-ink);color:#fff}
.wagen-plus .ico svg{width:16px;height:16px}
.wagen-sub{display:flex;justify-content:space-between;align-items:baseline;font-size:15px}
.wagen-sub b{font-size:20px;font-weight:800}
.wagen-sub small{display:block;font-size:12.5px;color:var(--c-sub)}
.wagen-usp{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;font-size:12.5px;color:var(--c-sub);text-align:center}
.wagen-usp span{display:inline-flex;align-items:center;gap:5px}
.wagen-usp .ico svg{width:14px;height:14px;color:var(--c-success)}
.wagen-leeg{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px 4px 8px;text-align:center}
.wagen-leeg__icoon{width:64px;height:64px;border-radius:50%;background:var(--c-surface);display:flex;align-items:center;justify-content:center;color:var(--c-sub)}
.wagen-leeg__icoon svg{width:28px;height:28px}
.wagen-leeg__titel{font-size:20px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}
.wagen-leeg__tekst{color:var(--c-sub);font-size:15px}
.wagen-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin-top:6px}
.wagen-cat{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--c-line);border-radius:var(--radius-sm);color:var(--c-ink);font-weight:700;font-size:14px;text-align:left}
.wagen-cat:hover{border-color:var(--c-ink);color:var(--c-ink)}
.wagen-cat img{width:44px;height:44px;border-radius:3px;object-fit:cover;background:var(--c-surface)}

/* ==========================================================================
   15 · VERLANGLIJST EN VERGELIJKEN
   Launcher verschijnt zodra er ≥ 1 product bewaard is; de teller springt
   kort op bij elk hartje. Vergelijk werkt met 2 tot 4 producten; daarboven
   wordt de knop disabled met de uitleg "Kies er maximaal 4".
   ========================================================================== */
.bewaard-launcher{position:fixed;right:24px;bottom:24px;z-index:70;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px 0 14px;border:1px solid var(--c-line);border-radius:99px;background:#fff;color:var(--c-ink);font-size:14.5px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.16)}
.bewaard-launcher .ico{color:var(--c-primary)}
.bewaard-launcher .ico svg{fill:currentColor}
.bewaard-launcher b{min-width:24px;height:24px;padding:0 7px;border-radius:12px;background:var(--c-ink);color:#fff;font-size:12.5px;display:inline-flex;align-items:center;justify-content:center}
.bewaard-lijst{display:flex;flex-direction:column}
.bewaard-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--c-line)}
.bewaard-item input{width:20px;height:20px;accent-color:var(--c-ink)}
.bewaard-item__acties{grid-column:2;display:flex;gap:14px}
.bewaard-item__acties a,.bewaard-item__acties button{border:0;background:none;padding:0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink)}
.bewaard-item__acties button{color:var(--c-sub)}

@media (max-width:720px){.bewaard-launcher{right:14px;bottom:14px}}

.wagen-gratis__lijn i.w-0{width:0%}.wagen-gratis__lijn i.w-5{width:5%}.wagen-gratis__lijn i.w-10{width:10%}.wagen-gratis__lijn i.w-15{width:15%}.wagen-gratis__lijn i.w-20{width:20%}.wagen-gratis__lijn i.w-25{width:25%}.wagen-gratis__lijn i.w-30{width:30%}.wagen-gratis__lijn i.w-35{width:35%}.wagen-gratis__lijn i.w-40{width:40%}.wagen-gratis__lijn i.w-45{width:45%}.wagen-gratis__lijn i.w-50{width:50%}.wagen-gratis__lijn i.w-55{width:55%}.wagen-gratis__lijn i.w-60{width:60%}.wagen-gratis__lijn i.w-65{width:65%}.wagen-gratis__lijn i.w-70{width:70%}.wagen-gratis__lijn i.w-75{width:75%}.wagen-gratis__lijn i.w-80{width:80%}.wagen-gratis__lijn i.w-85{width:85%}.wagen-gratis__lijn i.w-90{width:90%}.wagen-gratis__lijn i.w-95{width:95%}.wagen-gratis__lijn i.w-100{width:100%}

/* ── aanpassingen aan de markup van het thema (8B) ── */
/* zoekpaneel: het paneel zelf is .zoekpaneel, de donkere laag eronder .zoekpaneel__dim */
.zoek-overlay{display:none}
.zoekpaneel__dim{position:fixed;inset:0;z-index:30;background:rgba(14,14,14,.45)}
.zoekpaneel__in.zoek-overlay__in{grid-template-columns:300px minmax(0,1fr);gap:40px;padding-top:28px;padding-bottom:28px}
@media (min-width:901px){
  .zoekpaneel{max-height:calc(100vh - 150px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 18px 40px rgba(0,0,0,.12)}
  .zoekpaneel__mobkop,.zoekpaneel__mob,.zoekpaneel__start-knop{display:none!important}
}
.zoek-links,.zoek-rechts{min-width:0}
.zoek-links .chip .ico svg{width:15px;height:15px;color:var(--c-sub)}
.zoek-startblok{display:flex;flex-direction:column;gap:12px}
.zoek-startblok .zoek-leeg__cats{grid-template-columns:repeat(3,minmax(0,1fr))}
.zoek-cat__leeg{display:block;aspect-ratio:4/3;border-radius:var(--radius-sm);background:var(--c-surface)}
.zoek-raster:empty{display:none}
.zoek-kaart.is-actief .zoek-kaart__naam,.zoek-sugg .mini__naam.is-actief{text-decoration:underline}
.zoek-kaart__foto img{object-fit:contain;background:#fff}
.zoek-kaart__prijs del{color:var(--c-sub);font-weight:500;margin-right:4px}
.zoek-kaart__prijs ins{text-decoration:none}
.voorraad--uit{color:var(--c-sub)}
.voorraad--uit::before{background:#b9b9b4}
.zoek-sugg{list-style:none;margin:0;padding:0}
.zoek-sugg .mini__prijs del{display:none}
.zoek-sugg .mini__prijs ins{text-decoration:none}
.zoekveld__wis{border:0;background:transparent;color:var(--c-sub);width:40px}
@media (max-width:900px){
  .zoekpaneel__in.zoek-overlay__in{grid-template-columns:1fr;gap:18px;padding-top:14px}
  .zoekpaneel__mobkop{display:flex;align-items:center;justify-content:space-between}
  .zoekpaneel__mob{flex-wrap:wrap;gap:10px}
  .zoekpaneel__mob input{flex:1 1 auto}
  .zoekpaneel__start-knop{margin:12px 0 4px}
  .zoek-startblok,.zoek-groep--tax{display:none}
  .zoekpaneel.heeft-query .zoek-links{display:none}
  .zoekpaneel.heeft-query .zoekpaneel__start-knop{display:none}
  .zoek-resultaten__kop .section__link{display:none}
  .zoek-meer .btn{width:100%}
}
/* winkelwagen-paneel */
.paneel.drawer{width:min(460px,100%)}
.paneel--wagen > .widget_shopping_cart_content{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.paneel--wagen .paneel__body{flex:1;min-height:0}
.paneel__titel small .drawer__aantal{display:inline;min-width:0;height:auto;padding:0;border-radius:0;background:none;color:inherit;font:inherit}
.wagen-regel{position:static;padding-right:0}
.wagen-regel.is-bezig{opacity:.55}
.wagen-regel__foto img{width:100%;height:100%;object-fit:contain;background:#fff}
.wagen-regel__prijs del{display:block;font-size:12.5px;color:var(--c-sub);font-weight:500}
.wagen-regel__prijs ins{text-decoration:none}
.wagen-regel .wagen-weg{position:static;width:auto;height:auto;border-radius:0;font-size:13px}
.wagen-regel .wagen-weg:hover{background:none}
.aantal--vast{padding:0 12px}
.wagen-combi__kaart > a{display:block}
.wagen-combi__naam{color:var(--c-ink)}
.wagen-combi__rij b{font-size:15px}
.wagen-combi__rij b del{display:none}
.wagen-combi__rij b ins{text-decoration:none}
a.wagen-plus{color:var(--c-ink)}
a.wagen-plus:hover{color:#fff}
.wagen-plus.loading{opacity:.5}
.wagen-plus.added{display:none}
.wagen-combi .added_to_cart{display:none}
.wagen-ok{animation:wagen-in .35s ease-out}
@keyframes wagen-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.wagen-cat__leeg{width:44px;height:44px;border-radius:3px;background:var(--c-surface)}
@media (max-width:720px){
  .drawer.paneel{transform:translateY(105%)}
  .drawer.paneel.is-open{transform:none}
  .paneel.drawer{width:100%}
}
@media (prefers-reduced-motion:reduce){.wagen-ok{animation:none}}
/* bewaard en vergelijken */
.bewaard-launcher.is-bump b{animation:bewaard-bump .4s ease}
@keyframes bewaard-bump{50%{transform:scale(1.3)}}
body:has(.bestelbalk.is-zichtbaar) .bewaard-launcher{bottom:96px}
html.is-locked .bewaard-launcher{display:none}
.bewaard-item .mini{grid-template-columns:56px minmax(0,1fr) auto}
.bewaard-item .mini__foto{width:56px;height:56px}
.bewaard-item .mini__foto img{object-fit:contain;background:#fff}
.bewaard-item__acties .add_to_cart_button{border:0;background:none;padding:0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-ink);cursor:pointer}
.bewaard-item__acties .add_to_cart_button.loading{opacity:.5}
.bewaard-item__acties .added_to_cart{display:none}
.bewaard-leeg{padding:24px 0;color:var(--c-sub);text-align:center}
[data-bewaard-vergelijk].is-uit{opacity:.45}
.assistent-noot{display:block;font-size:13px;color:var(--c-sub);text-align:center}
.assistent-noot.is-bump{animation:bewaard-bump .4s ease;color:var(--c-ink)}
.zoekpaneel__in.zoek-overlay__in > .zoek-rechts,.zoekpaneel__in.zoek-overlay__in > .zoek-links{display:block}
@media (max-width:900px){.zoekpaneel.heeft-query .zoekpaneel__in.zoek-overlay__in > .zoek-links{display:none}}
.wagen-lijst.woocommerce-mini-cart{flex:none;padding:0}
.wagen-leeg{color:var(--c-ink)}
.wagen-leeg .ico{color:var(--c-sub)}
.bewaard-item .bewaard-item__acties{grid-column:2/-1;white-space:nowrap}
input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:16px;height:16px;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666660' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M18 6 6 18M6 6l12 12'/%3E%3C/svg%3E") center/16px no-repeat}
.zoekpaneel__mob input[type=search]::-webkit-search-cancel-button{display:none}

/* links in meldingen van WooCommerce: inkt met onderstreping, oranje haalt het contrast niet op de lichte vlakken (8D) */
.woocommerce-info a:not(.btn):not(.button),.woocommerce-message a:not(.btn):not(.button),.woocommerce-error a:not(.btn):not(.button),.wc-backward:not(.btn){color:var(--c-ink);text-decoration:underline;text-underline-offset:3px}

/* Categoriekop: korte intro met een link naar de volledige tekst onder de producten. */
.cat-lees{margin-left:4px;color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.cat-banner__text .cat-lees{color:#fff}
.cat-lees:hover{color:var(--c-primary)}
#categorietekst{scroll-margin-top:140px}

/* Kleur zonder kleurcode: een neutraal mengbolletje in plaats van wit. */
.filter__kleur--mix{background:conic-gradient(from 45deg,#5b5e3a 0 25%,#a9875c 0 50%,#3a3a3a 0 75%,#c3b091 0)}

/* ==========================================================================
   MAATFILTER IN GROEPEN EN "WELKE MAAT HEB JE?" (inc/maten.php, theme.js LXS.maat)
   ========================================================================== */
.btn--sm{min-height:36px;padding:0 14px;font-size:13px}
.maatprofiel{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding:14px;border:1px solid var(--c-line);border-radius:var(--radius);background:var(--c-surface)}
.maatprofiel--account{margin:0;background:transparent;border:0;padding:0}
.maatprofiel__kop{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 10px}
.maatprofiel__titel{font-size:14px;font-weight:800}
.maatprofiel--account .maatprofiel__titel{display:none}
.maatprofiel__jouw{font-size:13px;font-weight:600;color:var(--c-sub)}
.maatprofiel__acties{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.maatprofiel__wijzig{border:0;background:none;padding:0;font-size:13px;font-weight:600;color:var(--c-ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.maatprofiel__hint{font-size:12.5px;color:var(--c-sub)}
.maatprofiel__form{display:flex;flex-direction:column;gap:12px}
.maatprofiel__rij{display:flex;flex-direction:column;gap:6px}
.maatprofiel__label{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-sub)}
.maatprofiel button.filter__maat{background:#fff;font:inherit;font-size:14px;font-weight:600}
.maatprofiel button.filter__maat[aria-pressed="true"]{background:var(--c-ink);border-color:var(--c-ink);color:#fff}
.maatprofiel--account .filter__maten{grid-template-columns:repeat(auto-fill,minmax(56px,1fr))}
.maatprofiel__knoppen{display:flex;flex-wrap:wrap;gap:8px}
.filter__maatgroep + .filter__maatgroep{margin-top:12px}
.filter__subtitel{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-sub);cursor:pointer;list-style:none}
.filter__subtitel::-webkit-details-marker{display:none}
.filter__subtitel::after{content:"";width:7px;height:7px;margin-left:auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.filter__maatgroep[open] > .filter__subtitel::after{transform:rotate(-135deg) translateY(-2px)}
.filter__subtitel span{font-weight:600;letter-spacing:0}
.filter__maat.is-jouw{box-shadow:inset 0 0 0 2px var(--c-primary)}
.zn-size.is-jouw::after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--c-primary)}
.zn-size{position:relative}

/* ==========================================================================
   2.5: TOPBALK, FOOTER-MERKEN, KAARTEN, CATEGORIE, ELEMENTOR-RESTEN
   ========================================================================== */
/* Topbalk rechts: klantenservice, telefoon, links en helemaal rechts de reviews */
.topbar__rechts{gap:0}
.topbar__rechts > *{display:inline-flex;align-items:center;padding:0 16px}
.topbar__rechts > :first-child{padding-left:0}
.topbar__rechts > :last-child{padding-right:0}
.topbar__rechts > * + *{border-left:1px solid var(--c-line)}
.topbar__rechts a.topbar__tel{gap:6px;color:var(--c-ink);font-weight:600}
.topbar__tel .ico svg{width:13px;height:13px}
.topbar__rechts .topbar__sep{display:none}
@media (max-width:1100px){.topbar__rechts a.topbar__tel{display:none}.topbar__rechts > a.topbar__score{border-left:0}}

/* Servicestrook in de footer: reviews tegen de rechterkant */
.sf-service{display:flex;flex-wrap:wrap}
.sf-service__cel{flex:0 1 auto}
.sf-service__cel--score{margin-left:auto;padding-right:0;border-left:0}
.sf-service__cel--score .sf-service__tekst{flex:0 1 auto}
@media (max-width:1100px){
  .sf-service{display:grid}
  .sf-service__cel--score{margin-left:0}
}

/* Betaal- en verzendmerken: gelijke tegels zonder wit eromheen, één regel */
.site-footer__onder{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.site-footer__merken{display:flex;align-items:center;gap:12px;min-width:0}
.site-footer__legal{margin-left:auto}
.betaalmerken .ds-pay__label{display:none}
.ds-pay__list{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.ds-pay__chip--icon{width:40px;min-width:40px;height:40px;padding:0;border:0;border-radius:8px;overflow:hidden;background:transparent}
.ds-pay__chip--icon img,.ds-pay__chip--icon svg{display:block;width:100%;max-width:none;height:100%;max-height:none;object-fit:cover}
.ds-pay--light .ds-pay__chip--icon{width:34px;min-width:34px;height:34px;border:0;border-radius:6px}
.ds-pay__chip--klarna{background:#ffb3c7;color:#0b051d}
.ds-pay__chip--gls{background:#061ab1;color:#fff;font-weight:800;letter-spacing:.02em}
.ds-pay__chip--ideal:not(.ds-pay__chip--icon){background:#cc0066;color:#fff}
@media (max-width:720px){
  .site-footer__onder{flex-direction:column;align-items:flex-start}
  .site-footer__legal{margin-left:0}
}
/* Past een belofte niet meer, dan valt hij weg in plaats van half afgekapt */
@media (min-width:1101px){.topbar__usps{flex-wrap:wrap;align-self:stretch;align-items:center;max-height:40px;overflow:hidden}.topbar__usps li{min-height:40px}}

/* Productkaart zoals de live site: kaart met rand, foto binnen het vak, voorraadregel, geen knop */
ul.products{gap:16px;grid-auto-flow:row dense}
ul.products li.product{position:relative;display:flex;flex-direction:column;min-width:0;padding:12px 12px 16px;border:1px solid var(--c-line);border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}
@media (hover:hover){ul.products li.product:hover{border-color:#c8c8c2;box-shadow:0 8px 22px rgba(17,17,17,.07)}}
ul.products li.product .product__beeld{position:relative;display:block}
ul.products li.product .product__media{aspect-ratio:1/1;border-radius:4px;background:#fff}
ul.products li.product .product__media img{inset:5%;width:90%;height:90%;object-fit:contain}
ul.products li.product .badges{left:0;top:0}
ul.products li.product .product__fav{top:16px;right:16px;width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--c-line)}
ul.products li.product .product__meta{min-height:20px;margin-top:10px}
ul.products li.product .product__sizes{display:none}
ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto;color:var(--c-ink);text-decoration:none}
ul.products li.product .product__brand{margin-top:8px}
ul.products li.product .woocommerce-loop-product__title{margin-top:2px;font-size:15px;font-weight:500;line-height:1.4;min-height:2.8em}
ul.products li.product .product__voorraad{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:13.5px;font-weight:500;color:var(--c-success,#2e7d32)}
ul.products li.product .product__voorraad .ico svg{width:15px;height:15px}
ul.products li.product .product__voorraad--na{color:var(--c-label,#b8540f)}
ul.products li.product .product__voorraad--uit{color:var(--c-sub)}
ul.products li.product .price{margin-top:auto;padding-top:6px;font-size:17px;font-weight:800}
ul.products li.product .woocommerce-LoopProduct-link .price{margin-top:auto}
ul.products li.product .product__voorraad + .price{margin-top:6px}
ul.products li.product .woocommerce-LoopProduct-link > .product__voorraad{margin-top:auto;padding-top:10px}
ul.products li.product .button{margin-top:12px}
.aanbevelingen ul.products,.section ul.products{gap:16px}
@media (max-width:720px){
  ul.products{gap:10px}
  ul.products li.product{padding:8px 8px 12px;border-radius:6px}
  ul.products li.product .product__fav{top:12px;right:12px;width:30px;height:30px}
  ul.products li.product .woocommerce-loop-product__title{font-size:14px}
  ul.products li.product .product__voorraad{font-size:12.5px}
  ul.products li.product .price{font-size:16px}
}

/* USP-strook tussen de producten */
ul.products > li.raster-usps{grid-column:1/-1;list-style:none;margin:4px 0}
.raster-usps ul{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 0;margin:0;padding:14px 18px;border:1px solid var(--c-line);border-radius:8px;background:var(--c-surface);list-style:none}
.raster-usps li{display:flex;align-items:center;gap:10px;padding:0 26px;font-size:14.5px;font-weight:500;color:var(--c-ink)}
.raster-usps li + li{border-left:1px solid var(--c-line)}
.raster-usps .ico{color:var(--c-primary)}
@media (max-width:720px){
  .raster-usps ul{justify-content:flex-start;padding:12px 14px;gap:8px}
  .raster-usps li{width:100%;padding:0;font-size:13.5px}
  .raster-usps li + li{border-left:0}
}

/* Tegel met foto of video tussen de producten */
ul.products > li.raster-tegel{position:relative;grid-column:span 2;min-height:340px;overflow:hidden;border-radius:8px;background:#1b1b1b;list-style:none}
ul.products > li.raster-tegel--smal{grid-column:span 1}
.raster-tegel__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.raster-tegel__knop{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1.5px solid #fff;border-radius:999px;background:rgba(17,17,17,.25);color:#fff;font-weight:700;text-align:center;text-decoration:none;transition:background .15s,color .15s}
.raster-tegel__knop:hover{background:#fff;color:var(--c-ink)}
.raster-tegel__link{position:absolute;inset:0;z-index:1}
.raster-tegel__speel{position:absolute;top:14px;right:14px;z-index:3;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1.5px solid #fff;border-radius:50%;background:rgba(17,17,17,.3);color:#fff;cursor:pointer}
.raster-tegel__speel .ico svg{width:16px;height:16px;fill:currentColor}
.raster-tegel__speel [data-lxs-icon="pause"],.raster-tegel.is-spelend .raster-tegel__speel [data-lxs-icon="play"]{display:none}
.raster-tegel.is-spelend .raster-tegel__speel [data-lxs-icon="pause"]{display:flex}
@media (max-width:720px){ul.products > li.raster-tegel{min-height:260px}ul.products > li.raster-tegel--smal{grid-column:span 2}}

/* Filterkolom: langer dan het scherm? Dan scrolt hij zelf, zodat ook de onderste maten bereikbaar zijn */
@media (min-width:901px){
  .filters{max-height:calc(100vh - 112px);overflow-y:auto;padding-right:10px;margin-right:-10px;scrollbar-width:thin;scrollbar-color:#cfcfca transparent}
  .filters::-webkit-scrollbar{width:6px}
  .filters::-webkit-scrollbar-thumb{border-radius:3px;background:#cfcfca}
}

/* Oude Elementor-pagina's, opnieuw opgebouwd in thema-opmaak (inc/elementor-rest.php) */
.content svg:not([width]):not([class]){width:1em;height:1em;fill:currentColor;vertical-align:-.125em}
.el-rest > :first-child{margin-top:0}
.el-rest h2,.el-rest h3,.el-rest h4{margin:1.6em 0 .5em}
.el-rij{display:grid;grid-template-columns:repeat(var(--el-n,2),minmax(0,1fr));gap:24px 28px;margin:1.2em 0}
.el-rij--3{--el-n:3}
.el-rij--4{--el-n:4}
.el-kolom > :first-child{margin-top:0}
.el-kolom > :last-child{margin-bottom:0}
.el-beeld{margin:1.2em 0}
.el-beeld img{display:block;max-width:100%;height:auto;border-radius:var(--radius)}
.el-beeld figcaption{margin-top:6px;font-size:13px;color:var(--c-sub)}
.el-galerij{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:1.2em 0;padding:0;list-style:none}
.el-galerij li{display:flex;align-items:center;justify-content:center;aspect-ratio:3/2;padding:14px;border:1px solid var(--c-line);border-radius:8px;background:#fff}
.el-galerij li a{display:flex;width:100%;height:100%;align-items:center;justify-content:center}
.el-galerij img{width:100%;height:100%;object-fit:contain}
.el-vragen{margin:1em 0}
.el-vraag__antwoord{padding:0 0 16px;color:var(--c-ink)}
.el-vraag__antwoord > :first-child{margin-top:0}
.el-lijst{display:flex;flex-direction:column;gap:8px;margin:1em 0;padding:0;list-style:none}
.el-lijst li{display:flex;align-items:flex-start;gap:10px}
.el-lijst .ico{margin-top:3px;color:var(--c-success,#2e7d32)}
.el-blok{padding:20px;border:1px solid var(--c-line);border-radius:8px;background:#fff}
.el-blok img{display:block;width:100%;height:auto;margin-bottom:12px;border-radius:4px}
.el-blok h3{margin:0 0 6px;font-size:17px}
.el-knop{margin:1.2em 0}
.el-lijn{margin:2em 0;border:0;border-top:1px solid var(--c-line)}
.el-video,.el-kaart{position:relative;margin:1.2em 0;aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:#111}
.el-video iframe,.el-video video,.el-kaart iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.el-citaat{margin:1.2em 0;padding:16px 20px;border-left:3px solid var(--c-primary);background:var(--c-surface)}
.el-citaat cite{display:block;margin-top:6px;font-style:normal;font-weight:700}
@media (max-width:720px){.el-rij,.el-rij--3,.el-rij--4{grid-template-columns:1fr}.el-galerij{grid-template-columns:repeat(2,minmax(0,1fr))}}
.content .el-galerij li,.content .el-lijst li{padding-left:0}
.content .el-galerij li + li,.content .el-lijst li + li{margin-top:0}
.content .el-galerij li::before,.content .el-lijst li::before{display:none}
.content .el-galerij li{padding:14px}

/* Zoekpaneel 2.5: rustige kaarten zoals in het raster, suggesties tijdens typen, populaire producten
   voordat je typt (geen grote categorietegels meer) */
.zoek-raster{gap:12px}
.zoek-kaart{gap:4px;padding:10px 10px 12px;border:1px solid var(--c-line);border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}
.zoek-kaart:hover,.zoek-kaart.is-actief{border-color:#c8c8c2;box-shadow:0 6px 18px rgba(17,17,17,.06)}
.zoek-kaart__foto{margin-bottom:6px;background:#fff}
.zoek-kaart__foto img{padding:4%}
.zoek-kaart__merk{font-size:11px}
.zoek-kaart__naam{font-size:14px;font-weight:500;min-height:2.6em}
.zoek-kaart .voorraad{font-size:12.5px;font-weight:500;color:var(--c-success,#2e7d32)}
.zoek-kaart .voorraad--uit{color:var(--c-sub)}
.zoek-kaart__prijs{margin-top:auto;padding-top:4px;font-size:15.5px;font-weight:800}
.zoek-startblok{gap:14px}
.zoek-startblok.is-leeg{display:none}
.zoek-startblok .zoek-resultaten__kop{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.zoek-raster--start:empty{display:grid;min-height:240px}
.zoek-suggesties{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}
.zoek-suggesties button{display:block;width:100%;padding:8px 0;border:0;border-bottom:1px solid var(--c-line);background:none;color:var(--c-ink);font:inherit;font-size:15px;text-align:left;cursor:pointer}
.zoek-suggesties button:hover{text-decoration:underline}
.zoek-suggesties b{font-weight:800}
.zoek-noot{margin:0 0 12px;font-size:14px;color:var(--c-sub)}
.zoek-leeg__chips{margin-top:12px}
@media (min-width:901px){.zoekpaneel.heeft-query .zoek-groep--populair,.zoekpaneel.heeft-query [data-zoek-recent]{display:none}}
/* Links in lopende tekst: donkerder oranje, leesbaar (4,9:1) */
.content a:not(.btn):not(.button){color:var(--c-label,#b8540f)}

/* Velden: grijs vlak bij focus, zodat je ziet waar je typt */
.form-row .input-text:focus,.form-row select:focus,.form-row textarea:focus,.input-text:focus,.woocommerce form .form-row .input-text:focus{background-color:#f1f1ee;border-color:var(--c-ink);outline:0;box-shadow:0 0 0 3px rgba(17,17,17,.07)}
.form-row.is-gevuld .input-text:focus{background-color:#f1f1ee;border-color:var(--c-ink)}

/* ==========================================================================
   2.6: HOOFDMENU ZOALS TRAVELBAGS (wit, compact, gewone letters), MEGA-MENU MET KOLOMMEN EN TEGELS,
   SERVICEBALK EN UITGELICHTE TEGELS OP DE CATEGORIEPAGINA
   ========================================================================== */
.hoofdmenu{background:#fff;color:var(--c-ink);border-top:1px solid var(--c-line);border-bottom:1px solid var(--c-line)}
.hoofdmenu__lijst{justify-content:center;gap:0}
.hoofdmenu__item:first-child .hoofdmenu__link{padding-left:16px}
.hoofdmenu__link{height:48px;padding:0 16px;color:var(--c-ink);font-size:15.5px;font-weight:600;letter-spacing:0;text-transform:none;border-bottom:2px solid transparent}
.hoofdmenu__link .ico{color:var(--c-sub)}
.hoofdmenu__link .ico svg{width:14px;height:14px}
.hoofdmenu__link:hover,.hoofdmenu__item.is-open > .hoofdmenu__link,.hoofdmenu__item:focus-within .hoofdmenu__link{color:var(--c-ink);border-bottom-color:var(--c-ink)}
.hoofdmenu__item.is-open > .hoofdmenu__link .ico{transform:rotate(180deg)}
.hoofdmenu__link--actie{color:var(--c-label,#b8540f)}
.mega{border-top:1px solid var(--c-line);box-shadow:0 18px 40px rgba(17,17,17,.10)}
.mega__in,.mega__in--zonder{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;padding:24px var(--gutter) 28px}
.mega__in--zonder{grid-template-columns:minmax(0,1fr)}
.mega__kolommen{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,220px));gap:22px 28px;align-content:start}
.mega__alle{grid-column:1 / -1;display:inline-flex;align-items:center;gap:6px;justify-self:start;font-size:15px;font-weight:700;color:var(--c-ink)}
.mega__alle:hover{text-decoration:underline;text-underline-offset:3px}
.mega__kop,a.mega__kop{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:15px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--c-ink)}
a.mega__kop:hover{color:var(--c-ink);text-decoration:underline;text-underline-offset:3px}
.mega__kopfoto{flex:0 0 40px;width:40px;height:40px;border-radius:8px;object-fit:cover;background:var(--c-surface)}
.mega__lijst{margin:0;padding:0;list-style:none}
.mega__lijst li + li{margin-top:5px}
.mega__lijst a{font-size:14.5px;color:#4a4a46}
.mega__lijst a:hover{color:var(--c-ink);text-decoration:underline;text-underline-offset:3px}
.mega__alles{margin-top:8px;font-size:14px;font-weight:600;color:var(--c-ink)}
.mega__tegels{display:grid;grid-template-columns:260px;gap:14px;align-content:start}
.mega__uitgelicht{display:flex;flex-direction:column;border:1px solid var(--c-line);border-radius:8px;background:#fff;color:var(--c-ink);overflow:hidden}
.mega__uitgelicht img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;opacity:1}
.mega__tegel-tekst{display:flex;flex-direction:column;gap:3px;padding:12px 14px 14px}
.mega__tegel-tekst b{font-size:15px;font-weight:700;line-height:1.25}
.mega__tegel-tekst small{font-size:13px;color:var(--c-sub);line-height:1.4}
.mega__uitgelicht:hover .mega__tegel-tekst b{text-decoration:underline;text-underline-offset:3px}
.mega__uitgelicht span.mega__tegel-tekst{position:static;font-size:inherit}
@media (max-width:1250px){.mega__tegels{grid-template-columns:220px}}

.servicebalk{background:var(--c-surface);border-bottom:1px solid var(--c-line)}
.servicebalk__lijst{display:flex;flex-wrap:wrap;justify-content:center;gap:0;margin:0;padding:0;list-style:none}
.servicebalk__lijst a{display:flex;align-items:center;gap:7px;height:38px;padding:0 18px;color:#3a3a37;font-size:14px;font-weight:500}
.servicebalk__lijst a:hover{color:var(--c-ink);text-decoration:underline;text-underline-offset:3px}
.servicebalk__lijst a.servicebalk__actie{color:var(--c-label,#b8540f);font-weight:700}
.servicebalk .ks-dot{width:8px;height:8px}
@media (max-width:1100px){.servicebalk{display:none}}

.cat-uitgelicht{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:12px;margin:0 0 22px;padding:0;list-style:none}
.cat-uitgelicht--1{--n:1}.cat-uitgelicht--2{--n:2}.cat-uitgelicht--4{--n:4}
.cat-uitgelicht--1 li{max-width:420px}
.cat-uitgelicht a{display:flex;flex-direction:column;height:100%;border:1px solid var(--c-line);border-radius:8px;background:#fff;overflow:hidden;color:var(--c-ink)}
.cat-uitgelicht img{display:block;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover}
.cat-uitgelicht__knop{align-self:flex-start;margin:14px 16px 16px;padding:9px 16px;border:1px solid #9a9a94;border-radius:4px;font-size:14.5px;font-weight:500;transition:border-color .15s,background .15s}
.cat-uitgelicht a:hover .cat-uitgelicht__knop{border-color:var(--c-ink);background:var(--c-surface)}
@media (max-width:720px){.cat-uitgelicht{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:calc(var(--gutter)*-1);scrollbar-width:none}.cat-uitgelicht li{flex:0 0 62%;scroll-snap-align:start}.cat-uitgelicht__knop{margin:10px 12px 12px;font-size:13.5px}}

/* ── 2.6.1: productinfo. Rustige labels; een attribuut met meer waarden (kleuren) als chips met
   kleurstip over de volle breedte in plaats van een lange opsomming. ── */
.productinfo__label{font-size:13px;font-weight:600;letter-spacing:0;text-transform:none}
.productinfo li.productinfo__rij--chips{grid-column:1/-1;gap:8px;border-left:0;padding-left:0}
.productinfo li.productinfo__rij--chips + li{border-left:0;padding-left:0}
.productinfo__waarde--chips{display:flex;flex-wrap:wrap;gap:6px}
.productinfo__chip{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:4px 11px;border:1px solid var(--c-line);border-radius:999px;background:#fff;font-size:13px;font-weight:600;line-height:1.2;color:var(--c-ink)}
.productinfo__chip:has(.productinfo__stip){padding-left:5px}
.productinfo__stip{flex:0 0 auto;width:20px;height:20px;border-radius:50%;background:var(--c-surface);box-shadow:inset 0 0 0 1px rgba(0,0,0,.14)}
@media (max-width:1200px){.productinfo li.productinfo__rij--chips{border-top:0}}

/* ── 2.6.1: tweede foto bij hover. Zelfde vak en marge als foto 1, geen zoom of verschuiving
   (die sneed modelfoto's aan de bovenkant af) en foto 1 verdwijnt, zodat er nooit twee foto's
   door elkaar staan. ── */
ul.products li.product .product__media img,.product__media img{transform:none}
@media (hover:hover){
  .product:hover .product__media img,ul.products li.product:hover .product__media img{transform:none}
  li.product:hover .product__media:has(.product__hover) img:not(.product__hover){opacity:0}
}
ul.products li.product .product__media .product__hover{background:#fff}

/* ── 2.6.1: gidskaarten altijd even hoog, met foto's van dezelfde maat (ook de kaarten uit
   oudere versies van de kenniscentrum-plugin). ── */
.dci-gidscards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;align-items:stretch}
.dci-gidscards .dci-gidscard{display:flex;flex-direction:column;height:100%;overflow:hidden}
.dci-gidscards .dci-gidscard__media{display:block;flex:0 0 auto;aspect-ratio:16/10;overflow:hidden;background:var(--c-surface)}
.dci-gidscards .dci-gidscard__media img{display:block;width:100%;height:100%;max-height:none;object-fit:cover}
.dci-gidscards .dci-gidscard--noimg::before{content:"";display:block;aspect-ratio:16/10;background:var(--c-surface)}
.dci-gidscards .dci-gidscard__body{flex:1 1 auto}
.dci-gidscards .dci-gidscard__title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.gids-raster{align-items:stretch}
.gids-kaart img,.gids-kaart__beeld{flex:0 0 auto;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.gids img,.gids__media img{height:auto;aspect-ratio:16/10;object-fit:cover}

/* ── 2.6.1: hoofdmenu zwart met witte tekst; het uitklapmenu en de servicebalk blijven licht ── */
.hoofdmenu{background:#111;color:#fff;border-top:0;border-bottom:0}
.hoofdmenu__link{color:#fff}
.hoofdmenu__link .ico{color:rgba(255,255,255,.7)}
.hoofdmenu__link:hover,.hoofdmenu__item.is-open > .hoofdmenu__link,.hoofdmenu__item:focus-within .hoofdmenu__link{color:#fff;border-bottom-color:var(--c-primary,#e8772e)}
.hoofdmenu__link--actie,.hoofdmenu__link--actie:hover{color:var(--c-primary,#e8772e)}
.hoofdmenu__link:focus-visible{outline:2px solid #fff;outline-offset:-4px}

/* ── 2.6.1: betaalmerken als gelijke vierkante tegels. Eigen merktegels vullen de tegel; een logo
   van de betaalplugin (elk met een eigen maat) past erin op wit, in plaats van bijgesneden te worden. ── */
.ds-pay__chip--icon,.ds-pay--light .ds-pay__chip--icon,.site-footer__merken .ds-pay__chip--icon{width:40px;min-width:40px;height:40px;padding:5px;border:1px solid var(--c-line);border-radius:8px;background:#fff;overflow:hidden}
.ds-pay__chip--icon img,.ds-pay__chip--icon svg{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.ds-pay__chip--icon.ds-pay__chip--eigen{padding:0}
.ds-pay__chip--icon.ds-pay__chip--eigen img{object-fit:cover}
.ds-pay__chip--icon.ds-pay__chip--klarna:not(.ds-pay__chip--eigen){border-color:#ffb3c7;background:#ffb3c7}
.ds-pay__list{gap:6px}
/* De tekstregel van de keurmerk-plugin onder de pagina: de footer toont de score al */
.webwinkelkeur-rich-snippet,.wwk-rich-snippet,.wwk--rich-snippet,div[itemtype*="data-vocabulary.org/Review-aggregate"]{display:none}

/* ── 2.6.1: menu-item met één of twee kolommen en zonder tegels: compact uitklapmenu direct onder
   het item (theme.js zet --mega-x), in plaats van een paneel over de volle breedte met links één
   smalle kolom ── */
@media (min-width:1101px){
  .mega.mega--klein{left:var(--mega-x,0);right:auto;width:max-content;min-width:240px;max-width:min(520px,calc(100vw - 32px));border:1px solid var(--c-line);border-top:0;border-radius:0 0 10px 10px}
  .mega--klein .mega__in,.mega--klein .mega__in--zonder{display:block;width:auto;max-width:none;margin:0;padding:18px 22px 20px}
  .mega--klein .mega__kolommen{grid-template-columns:minmax(200px,max-content);gap:16px 32px}
  .mega--klein-2 .mega__kolommen{grid-template-columns:repeat(2,minmax(180px,max-content))}
}
.dci-gidscards .dci-gidscard{border:1px solid var(--c-line);border-radius:10px;background:#fff;color:var(--c-ink);text-decoration:none}
.dci-gidscards .dci-gidscard__body{display:flex;flex-direction:column;gap:4px;padding:12px 14px 16px}
.dci-gidscards .dci-gidscard__type{font-size:12px;font-weight:700;color:var(--c-label,#b8540f)}
.dci-gidscards .dci-gidscard__title{font-size:15px;font-weight:600;line-height:1.35;color:var(--c-ink)}

/* ── 2.6.1: kruimelpad op telefoons op één regel: de huidige pagina valt weg (die staat als titel
   eronder), de rest veegt horizontaal en staat naar rechts gescrold, zodat de bovenliggende
   categorie altijd in beeld is ── */
@media (max-width:720px){
  .kruimel{flex-wrap:nowrap;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;padding-top:10px;font-size:13.5px}
  .kruimel.is-afgekapt{-webkit-mask-image:linear-gradient(to right,transparent 0,#000 24px);mask-image:linear-gradient(to right,transparent 0,#000 24px)}
  .kruimel::-webkit-scrollbar{display:none}
  .kruimel a{flex:0 0 auto;color:var(--c-ink);font-weight:500}
  .kruimel .kruimel__nu,.kruimel .kruimel__nu + .kruimel__sep,.kruimel .kruimel__sep:has(+ .kruimel__nu){display:none}
  .kruimel a:last-of-type{font-weight:700;text-decoration:underline;text-underline-offset:3px}
  .product-pagina .woocommerce-breadcrumb{margin-top:6px}
}

/* ── 2.6.1: zoekpaneel. Koppen in gewone letters zonder aanhalingstekens; op telefoons eerst de
   categorieën en merken die passen als regels met pijl, zodat je direct naar een categoriepagina gaat ── */
.zoek-resultaten__titel{font-size:16px;font-weight:800;letter-spacing:0;text-transform:none}
.zoek-resultaten__titel mark{background:none;color:var(--c-ink)}
.zoek-cats{display:none}
@media (max-width:900px){
  .zoek-cats:not([hidden]){display:block;margin:4px 0 14px}
  .zoek-cats .zoek-resultaten__titel{margin:0 0 6px;font-size:14px;color:var(--c-sub)}
  .zoek-cats ul{margin:0;padding:0;list-style:none;border:1px solid var(--c-line);border-radius:10px;overflow:hidden}
  .zoek-cats li + li{border-top:1px solid var(--c-line)}
  .zoek-cats a{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 14px;color:var(--c-ink);font-size:15px;font-weight:600;background:#fff}
  .zoek-cats a span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .zoek-cats a small{font-size:13px;font-weight:500;color:var(--c-sub)}
  .zoek-cats a::after{content:"";flex:0 0 8px;width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);margin-right:2px;opacity:.6}
  .zoek-cats a:active{background:var(--c-surface)}
}

/* ── 2.6.1: groter logo op desktop ── */
@media (min-width:1101px){.site-header__logo img{width:230px}}

/* ── 2.7: verder kijken in verwante categorieën, onderaan de pagina. Kaarten zoals de productkaarten:
   witte kaart met rand, foto in het vak, naam en een pijl; de huidige categorie heeft een oranje rand. ── */
.cat-verder{padding-top:8px}
.cat-nav{position:relative}
.cat-nav__baan{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}
.cat-nav__tegel{display:flex;flex-direction:column;min-width:0;border:1px solid var(--c-line);border-radius:8px;background:#fff;color:var(--c-ink);text-decoration:none;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.cat-nav__foto{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;overflow:hidden;background:#fff;border-bottom:1px solid var(--c-line)}
.cat-nav__img{position:absolute;inset:10%;width:80%;height:80%;object-fit:contain}
.cat-nav__letter{font-size:32px;font-weight:800;color:#a3a39d}
.cat-nav__tegel--alle .cat-nav__foto{background:var(--c-surface);color:var(--c-ink)}
.cat-nav__naam{flex:1;padding:12px 14px 4px;font-size:15px;font-weight:700;line-height:1.3}
.cat-nav__tegel > .ico{align-self:flex-start;margin:0 14px 12px;color:var(--c-sub);transition:transform .15s,color .15s}
.cat-nav__tegel.is-actief{border-color:var(--c-primary,#e8772e);box-shadow:inset 0 0 0 1px var(--c-primary,#e8772e)}
@media (hover:hover){
  .cat-nav__tegel:hover{border-color:#c8c8c2;box-shadow:0 8px 22px rgba(17,17,17,.07)}
  .cat-nav__tegel:hover > .ico{transform:translateX(3px);color:var(--c-ink)}
}
.cat-nav__tegel:focus-visible{outline:2px solid var(--c-ink);outline-offset:2px}
.cat-nav__pijl{display:none}
@media (max-width:720px){
  .cat-nav__baan{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:calc(var(--gutter)*-1);padding-right:var(--gutter);scrollbar-width:none}
  .cat-nav__baan::-webkit-scrollbar{display:none}
  .cat-nav__tegel{flex:0 0 42%;scroll-snap-align:start}
  .cat-nav__naam{font-size:14px}
}

/* ── 2.7: Direct leverbaar met de levertijd eronder ── */
.filter__optie .filter__tekst{display:flex;flex-direction:column;flex:1;min-width:0;margin-left:0;font-size:inherit;line-height:1.3;color:inherit}
.filter__sub{margin-top:2px;font-size:12px;font-weight:600;color:#2e7d32}

/* ── 2.7.6: merken. Merknaam als het merk nog geen logo heeft; op de merkpagina het logo in een
   rond wit vlak naast de merknaam, ook over het sfeerbeeld in de banner. ── */
.merken__naam{font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-sub);text-align:center;line-height:1.2}
.merken__lijst a:hover .merken__naam{color:var(--c-ink)}
.merk-kop{display:flex;align-items:center;gap:18px}
.merk-kop .cat-kop__title,.merk-kop .cat-banner__title{margin:0}
.merk-rond{display:flex;flex:0 0 auto;align-items:center;justify-content:center;width:88px;height:88px;padding:10px;border:1px solid var(--c-line);border-radius:50%;background:#fff;box-sizing:border-box;overflow:hidden}
.merk-rond__img{display:block;width:100%;height:100%;object-fit:contain}
.merk-kop--banner .merk-rond{width:112px;height:112px;padding:14px;border:0;box-shadow:0 10px 30px rgba(0,0,0,.35)}
@media (max-width:720px){
  .merk-kop{gap:12px}
  .merk-rond{width:60px;height:60px;padding:9px}
  .merk-kop--banner .merk-rond{width:72px;height:72px;padding:11px}
}

/* ── 2.7.6: achtergrond van productfoto's (instelling foto_achtergrond). Het vlak achter de foto
   wordt lichtgrijs en de foto mengt erin (multiply): wit in de foto wordt het grijs van het vlak,
   het product zelf blijft gelijk. ── */
body.foto-bg--lichtgrijs{--foto-bg:#f3f3f2}
body.foto-bg--warmgrijs{--foto-bg:#f2f0ec}
body.foto-bg .product__media,
body.foto-bg ul.products li.product .product__media,
body.foto-bg .wagen-regel__foto,
body.foto-bg .bestelbalk img{background:var(--foto-bg)}
body.foto-bg .product__media img,
body.foto-bg ul.products li.product .product__media img,
body.foto-bg ul.products li.product .product__media .product__hover,
body.foto-bg .wagen-regel__foto img{background:transparent;mix-blend-mode:multiply}
body.foto-bg .bestelbalk img{mix-blend-mode:multiply}

/* ── 2.7.8: sterkte van de donkere laag over de doelgroepblokken (instelling doelgroepen_overlay).
   Normaal is de bestaande laag; de andere standen passen de helderheid van de foto en de verloop aan. ── */
.doelgroepen-sectie--overlay-zwak .doelgroep img{opacity:1}
.doelgroepen-sectie--overlay-zwak .doelgroep::after{background:linear-gradient(180deg,rgba(18,15,12,0) 55%,rgba(18,15,12,.45) 100%)}
.doelgroepen-sectie--overlay-licht .doelgroep img{opacity:.92}
.doelgroepen-sectie--overlay-licht .doelgroep::after{background:linear-gradient(180deg,rgba(18,15,12,0) 50%,rgba(18,15,12,.58) 100%)}
.doelgroepen-sectie--overlay-sterk .doelgroep img{opacity:.68}
.doelgroepen-sectie--overlay-sterk .doelgroep::after{background:linear-gradient(180deg,rgba(18,15,12,.08) 25%,rgba(18,15,12,.82) 100%)}
.doelgroepen-sectie--overlay-extra .doelgroep img{opacity:.52}
.doelgroepen-sectie--overlay-extra .doelgroep::after{background:linear-gradient(180deg,rgba(18,15,12,.2) 0%,rgba(18,15,12,.9) 100%)}
.doelgroepen-sectie--overlay-zwak .doelgroep__title,.doelgroepen-sectie--overlay-licht .doelgroep__title{text-shadow:0 1px 12px rgba(0,0,0,.45)}

/* ── 2.7.11: logo's in het merkenblok groter (was 150 × 34). ── */
.merken__lijst img{max-width:190px;max-height:48px}
@media (max-width:620px){.merken__lijst img{max-width:120px;max-height:36px}}

/* ── "Verder kijken in ..." onderaan de productpagina en de categoriepagina: index zonder foto's en aantallen
   (Claude Design, Darkshop kenniscentrum ontwerp 2, verder-kijken.css). ── */
.cat-verder--product{margin-top:8px;padding:64px 0 72px;background:#fff;border-top:1.5px solid var(--c-line,#e3e3df)}
.cat-verder--product:not(:has(.cat-nav__tegel:nth-child(2))){display:none}
.cat-verder--product .section__head{margin-bottom:26px}
.cat-verder--product .cat-nav__baan{counter-reset:catnr;display:grid;grid-template-columns:1fr;gap:0 48px;margin:0;padding:0;overflow:visible;border-bottom:1.5px solid var(--c-line,#e3e3df)}
.cat-verder--product .cat-nav__baan:has(> :nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:1100px){.cat-verder--product .cat-nav__baan:has(> :nth-child(9)){grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}}
.cat-verder--product .cat-nav__tegel{counter-increment:catnr;position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:0 16px;
  height:104px;min-height:104px;padding:0;margin:0;box-sizing:border-box;border:0;border-top:1.5px solid var(--c-line,#e3e3df);border-radius:0;background:transparent;box-shadow:none;color:var(--c-ink,#141414);text-decoration:none;overflow:visible}
.cat-verder--product .cat-nav__tegel::before{content:counter(catnr,decimal-leading-zero);font-size:13px;font-weight:700;letter-spacing:.08em;color:#a3a39d;transition:color .3s ease}
.cat-verder--product .cat-nav__tegel::after{content:"";position:absolute;left:0;right:0;bottom:-1.5px;height:2px;background:var(--c-ink,#141414);transform:scaleX(0);transform-origin:left;transition:transform .55s cubic-bezier(.77,0,.18,1);z-index:1}
.cat-verder--product .cat-nav__foto,.cat-verder--product .cat-nav__n{display:none}
.cat-verder--product .cat-nav__naam{min-width:0;padding:0;font-size:clamp(22px,2.3vw,30px);font-weight:800;line-height:1.1;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cat-verder--product .cat-nav__naam small{display:block;margin-top:5px;font-size:12.5px;font-weight:600;letter-spacing:.01em;color:var(--c-label,#b8540f)}
.cat-verder--product .cat-nav__tegel>.ico{display:flex;align-self:center;justify-self:end;align-items:center;justify-content:center;width:44px;height:44px;margin:0;border:1.5px solid var(--c-line,#e3e3df);border-radius:50%;color:var(--c-ink,#141414);
  transition:background .3s ease,border-color .3s ease,color .3s ease,transform .5s cubic-bezier(.34,1.56,.64,1)}
.cat-verder--product .cat-nav__tegel>.ico svg{width:17px;height:17px}
.cat-verder--product .cat-nav__tegel.is-actief::before{color:var(--c-primary,#e8772e)}
.cat-verder--product .cat-nav__tegel--alle{counter-increment:none}
.cat-verder--product .cat-nav__tegel--alle::before{content:"";justify-self:start;width:10px;height:10px;border-radius:50%;background:var(--c-primary,#e8772e)}
.cat-verder--product .cat-nav__tegel--alle>.ico{background:var(--c-ink,#141414);border-color:var(--c-ink,#141414);color:#fff}
@media(hover:hover){
  .cat-verder--product .cat-nav__tegel:hover{background:transparent;color:var(--c-ink,#141414);box-shadow:none}
  .cat-verder--product .cat-nav__tegel:hover::after{transform:scaleX(1)}
  .cat-verder--product .cat-nav__tegel:hover::before{color:var(--c-primary,#e8772e)}
  .cat-verder--product .cat-nav__tegel:hover>.ico{background:var(--c-primary,#e8772e);border-color:var(--c-primary,#e8772e);color:#fff;transform:rotate(-45deg)}
}
.cat-verder--product .cat-nav__tegel:focus-visible{outline:2px solid var(--c-primary,#e8772e);outline-offset:4px}
.cat-verder--product .cat-nav__tegel:focus-visible::after{transform:scaleX(1)}
@media(max-width:720px){
  .cat-verder--product{padding:44px 0 52px}
  .cat-verder--product .cat-nav__baan,.cat-verder--product .cat-nav__baan:has(> :nth-child(4)){grid-template-columns:1fr}
  .cat-verder--product .cat-nav__tegel{height:80px;min-height:80px;grid-template-columns:32px minmax(0,1fr) 40px;gap:0 12px}
  .cat-verder--product .cat-nav__naam{font-size:20px}
  .cat-verder--product .cat-nav__tegel>.ico{width:40px;height:40px}
}
@media(prefers-reduced-motion:reduce){.cat-verder--product .cat-nav__tegel::after,.cat-verder--product .cat-nav__tegel>.ico{transition:none}}

/* ── Klantenservice: vraagformulier in stappen (parts/klantvraag.php, klantvraag.js) ── */
.kv{margin:44px 0 8px;scroll-margin-top:110px}
.kv__in{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}
.kv__kaart{min-width:0;padding:32px 36px 30px;border:1.5px solid var(--c-line);border-radius:14px;background:#fff;scroll-margin-top:110px}
.kv__titel{margin:0;font-size:clamp(26px,2.6vw,34px);font-weight:800;letter-spacing:-.02em;line-height:1.1}
.kv__intro{margin:8px 0 0;max-width:620px;font-size:16px;line-height:1.55;color:var(--c-sub)}
.kv__voortgang{display:flex;align-items:center;gap:14px;margin-top:20px}
.kv__balk{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:6px;width:min(240px,50%)}
.kv__balk span{height:5px;border-radius:3px;background:var(--c-line);transition:background .25s ease}
.kv__balk span.is-klaar{background:var(--c-ink)}
.kv__balk span.is-nu{background:var(--c-primary)}
.kv__staplabel{font-size:13.5px;font-weight:600;color:var(--c-sub);font-variant-numeric:tabular-nums}
.kv__keuzes{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.kv__keuze{display:inline-flex;align-items:baseline;gap:7px;max-width:100%;padding:7px 13px;border:1px solid var(--c-line);border-radius:999px;background:var(--c-surface);color:var(--c-ink);font:inherit;font-size:14px;cursor:pointer;transition:border-color .15s}
.kv__keuze:hover,.kv__keuze:focus-visible{border-color:var(--c-ink)}
.kv__keuzelabel{color:var(--c-sub)}
.kv__keuzewaarde{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.kv__form{margin-top:24px}
.kv__val{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kv__stap{min-width:0;margin:0 0 30px;padding:0;border:0}
.kv.is-js .kv__stap,.kv__kaart.is-js .kv__stap{display:none;margin:0}
.kv__kaart.is-js .kv__stap.is-actief{display:block;animation:kv-in .25s ease}
@keyframes kv-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.kv__vraag{display:block;margin:0 0 16px;padding:0;font-size:21px;font-weight:800;letter-spacing:-.01em;color:var(--c-ink)}
.kv__vraag:focus{outline:none}
.kv__hint{display:block;margin:0 0 12px;font-size:14px;line-height:1.5;color:var(--c-sub)}
.kv__tegels{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.kv__tegel,.kv__keus{position:relative;display:flex;align-items:center;gap:14px;padding:16px 44px 16px 16px;border:1.5px solid var(--c-line);border-radius:12px;background:#fff;color:var(--c-ink);cursor:pointer;transition:border-color .15s,background .15s}
.kv__tegel:hover,.kv__keus:hover{border-color:#bdbdb7}
.kv__tegel input,.kv__keus input{position:absolute;opacity:0;pointer-events:none}
.kv__tegel:has(input:checked),.kv__keus:has(input:checked){border-color:var(--c-ink);background:rgba(var(--c-primary-rgb),.05)}
.kv__tegel:has(input:focus-visible),.kv__keus:has(input:focus-visible){outline:2px solid var(--c-primary);outline-offset:2px}
.kv__ico{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:11px;background:rgba(var(--c-primary-rgb),.1);color:var(--c-label,var(--c-primary))}
.kv__tegeltekst{display:flex;flex-direction:column;gap:2px;min-width:0}
.kv__tegeltitel{font-size:16px;font-weight:700;line-height:1.25}
.kv__tegelsub{font-size:13.5px;line-height:1.4;color:var(--c-sub)}
.kv__vink{position:absolute;top:50%;right:14px;display:grid;place-items:center;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--c-primary);color:#fff;opacity:0;transform:scale(.6);transition:opacity .15s,transform .15s}
.kv__tegel:has(input:checked) .kv__vink{opacity:1;transform:none}
.kv__jaNee{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kv__keus{padding:16px 16px 16px 48px;font-size:15.5px;font-weight:600}
.kv__keus::before{content:"";position:absolute;left:16px;top:50%;width:18px;height:18px;margin-top:-9px;border:1.5px solid #bdbdb7;border-radius:50%;background:#fff;transition:border-color .15s,box-shadow .15s}
.kv__keus:has(input:checked)::before{border-color:var(--c-ink);box-shadow:inset 0 0 0 4px #fff;background:var(--c-ink)}
.kv__orders{display:grid;gap:8px;margin-bottom:18px}
.kv__order{display:flex;align-items:center;gap:14px;width:100%;padding:13px 16px;border:1.5px solid var(--c-line);border-radius:10px;background:#fff;color:var(--c-ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s}
.kv__order:hover,.kv__order:focus-visible{border-color:var(--c-ink)}
.kv__ordernr{font-weight:700;font-variant-numeric:tabular-nums}
.kv__ordersub{flex:1;min-width:0;font-size:14px;color:var(--c-sub)}
.kv__order .ico{color:var(--c-sub)}
.kv__velden{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.kv__veld{display:flex;flex-direction:column;gap:7px;min-width:0}
.kv__veld--order{margin-top:16px;max-width:360px}
.kv__veld--order .kv__hint{margin:0}
.kv__label{font-size:14px;font-weight:600;color:var(--c-ink)}
.kv__label small{font-weight:400;color:var(--c-sub)}
.kv__veld input,.kv__veld textarea{width:100%;box-sizing:border-box;border:1.5px solid #d6d6d1;border-radius:10px;background:#fff;color:var(--c-ink);font:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}
.kv__veld input{height:50px;padding:0 14px}
.kv__veld textarea{min-height:160px;padding:14px;line-height:1.55;resize:vertical}
.kv__veld input:focus,.kv__veld textarea:focus{outline:none;border-color:var(--c-ink);box-shadow:0 0 0 3px rgba(var(--c-primary-rgb),.2)}
.kv__veld textarea::placeholder,.kv__veld input::placeholder{color:#9a9a94}
.kv__verstuur{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:16px}
.kv__knop{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:0 26px;font-size:16px}
.kv__knop.is-bezig{opacity:.75;pointer-events:none}
.kv__privacy{font-size:13px;color:var(--c-sub)}
.kv__fout{margin:14px 0 0;padding:11px 14px;border:1px solid #f0c6c6;border-radius:10px;background:#fdf2f2;color:#a12626;font-size:14.5px;line-height:1.45}
.kv__nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}
.kv__nav.is-alleen-terug{justify-content:flex-start}
.kv__terug{display:inline-flex;align-items:center;gap:7px;padding:8px 2px;border:0;background:none;color:var(--c-ink);font:inherit;font-size:15px;font-weight:600;cursor:pointer}
.kv__terug:hover span{text-decoration:underline;text-underline-offset:3px}
.kv__verder{min-height:48px;padding:0 26px}
.kv__klaar{padding:10px 0 4px}
.kv__klaar:focus{outline:none}
.kv__klaarvink{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--c-success);color:#fff}
.kv__klaar.is-net .kv__klaarvink{animation:kv-pop .45s cubic-bezier(.2,1.4,.4,1)}
@keyframes kv-pop{from{transform:scale(.5);opacity:0}to{transform:none;opacity:1}}
.kv__klaartitel{margin:18px 0 8px;font-size:clamp(24px,2.4vw,30px);font-weight:800;letter-spacing:-.02em}
.kv__klaarnr{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:16.5px;color:#3a3a37}
.kv__klaartekst{max-width:580px;margin:0 0 22px;font-size:16.5px;line-height:1.6;color:#3a3a37}
.kv__ref{padding:4px 10px;border:1px solid var(--c-line);border-radius:7px;background:var(--c-surface);color:var(--c-ink);font-size:17px;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.kv__zij{position:sticky;top:100px;display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:14px;background:var(--c-dark);color:#fff}
.kv__zijtitel{font-size:20px;font-weight:700}
.kv__zijtitel--klein{margin-top:8px;padding-top:18px;border-top:1px solid var(--c-dark-line);font-size:15.5px}
.kv__status{display:flex;align-items:center;gap:9px;font-size:14px;color:#cfcfca}
.kv__status.is-aan{color:#fff}
.kv__kanaal{display:flex;align-items:flex-start;gap:12px;color:#fff}
.kv__kanaal .ico{margin-top:3px;color:var(--c-primary)}
.kv__kanaal strong{display:block;font-size:16.5px;font-weight:700}
.kv__kanaal small{display:block;margin-top:2px;font-size:13px;color:#a9a9a3}
.kv__kanaal:hover strong{text-decoration:underline;text-underline-offset:3px}
.kv__hoe{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;counter-reset:kv}
.kv__hoe li{position:relative;padding-left:38px;font-size:14.5px;line-height:1.5;color:#d8d8d2;counter-increment:kv}
.kv__hoe li::before{content:counter(kv);position:absolute;left:0;top:-2px;display:grid;place-items:center;width:26px;height:26px;border:1.5px solid var(--c-dark-line);border-radius:50%;color:#fff;font-size:13px;font-weight:700}
@media (max-width:1100px){.kv__in{grid-template-columns:minmax(0,1fr) 300px}}
@media (max-width:900px){
  .kv{margin-top:28px}
  .kv__in{grid-template-columns:1fr;gap:18px}
  .kv__kaart{padding:24px 18px 22px;border-radius:12px}
  .kv__zij{position:static}
  .kv__tegels{grid-template-columns:1fr;gap:10px}
  .kv__tegel{padding:13px 44px 13px 13px}
  .kv__ico{flex-basis:40px;width:40px;height:40px}
  .kv__jaNee,.kv__velden{grid-template-columns:1fr}
  .kv__knop{width:100%;justify-content:center}
  .kv__balk{width:min(200px,55%)}
}
@media (prefers-reduced-motion:reduce){.kv__kaart.is-js .kv__stap.is-actief,.kv__klaar.is-net .kv__klaarvink{animation:none}}
