/*
Theme Name: BekerVriend 2026
Theme URI: https://bekervriend.nl
Author: BekerVriend
Description: Modern thema voor bekervriend.nl: homepage, alle pagina's, webshop (WooCommerce), formulieren (Gravity Forms, Contact Form 7) en TrackerSack-koppeling.
Version: 2.21.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: bekervriend
*/

:root{
  --bv-green:#3aaa35; --bv-green-dark:#2a7b26; --bv-forest:#0f2a18; --bv-forest-2:#16381f;
  --bv-ink:#141814; --bv-ink-soft:#555b55; --bv-muted:#8a8f89;
  --bv-paper:#f5f6f2; --bv-line:#e3e5df; --bv-line-dark:rgba(255,255,255,.14);
  --bv-font:"DM Sans",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --bv-max:1240px;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--bv-ink);font:400 16px/1.7 var(--bv-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-weight:500;letter-spacing:-.025em;line-height:1.05;margin:0;text-wrap:balance}
p{margin:0}
:focus-visible{outline:2px solid var(--bv-green);outline-offset:3px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.bv-wrap{max-width:var(--bv-max);margin:0 auto;padding-inline:32px}
@media (max-width:600px){.bv-wrap{padding-inline:20px}}

.bv-eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--bv-green-dark)}
.bv-eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
.bv-link{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;text-decoration:none;color:var(--bv-ink);padding-bottom:4px;border-bottom:1px solid currentColor;transition:gap .25s,color .2s}
.bv-link:hover{gap:16px;color:var(--bv-green-dark)}
.bv-btn{display:inline-flex;align-items:center;gap:12px;padding:17px 30px;border-radius:999px;background:var(--bv-forest);color:#fff;font:600 15px/1 var(--bv-font);text-decoration:none;border:0;cursor:pointer;transition:background .25s,gap .25s}
.bv-btn:hover{background:var(--bv-green-dark);gap:18px;color:#fff}
.bv-btn--light{background:#fff;color:var(--bv-forest)}
.bv-btn--light:hover{background:var(--bv-green);color:#fff}

/* ---------- Header ---------- */
.bv-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--bv-line)}
.admin-bar .bv-header{top:32px}
@media (max-width:782px){.admin-bar .bv-header{top:0}}
.bv-header__row{display:flex;align-items:center;gap:40px;height:84px}
.bv-logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none}
.bv-logo img,.custom-logo{height:46px;width:auto;mix-blend-mode:multiply}
.bv-nav{margin-left:auto}
.bv-nav ul{display:flex;gap:34px;list-style:none;margin:0;padding:0}
.bv-nav a{position:relative;font-size:14px;font-weight:500;text-decoration:none;color:var(--bv-ink);white-space:nowrap;padding:6px 0}
.bv-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--bv-green);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.bv-nav a:hover::after,.bv-nav .current-menu-item>a::after,.bv-nav a[aria-current]::after{transform:scaleX(1)}
.bv-nav .sub-menu{display:none}
.bv-header__icons{display:flex;align-items:center;gap:4px;padding-left:28px;border-left:1px solid var(--bv-line)}
.bv-icon{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:var(--bv-ink);background:none;border:0;cursor:pointer;text-decoration:none;transition:background .2s}
.bv-icon:hover{background:var(--bv-paper)}
.bv-icon svg{width:20px;height:20px}
.bv-icon__count[hidden]{display:none}
.bv-icon__count{position:absolute;top:4px;right:3px;min-width:16px;height:16px;border-radius:8px;background:var(--bv-green);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;padding:0 4px}
.bv-burger{display:none}
@media (max-width:980px){
  .bv-header__row{height:70px;position:relative}
  .bv-logo img,.custom-logo{height:38px}
  .bv-burger{display:grid}
  .bv-header__icons{margin-left:auto;border:0;padding:0}
  .bv-nav{display:none;position:absolute;left:0;right:0;top:70px;background:#fff;border-bottom:1px solid var(--bv-line);padding:12px 20px 24px;margin:0}
  .bv-nav.is-open{display:block}
  .bv-nav ul{flex-direction:column;gap:0}
  .bv-nav a{display:block;padding:14px 0;font-size:20px;border-bottom:1px solid var(--bv-line)}
  .bv-nav a::after{display:none}
}

/* ---------- Hero ---------- */
.bv-hero{display:grid;grid-template-columns:1fr 1fr;background:var(--bv-paper)}
.bv-hero__text{display:flex;flex-direction:column;justify-content:center;padding:64px 72px 64px max(32px,calc((100vw - var(--bv-max))/2 + 32px))}
.bv-hero__title{font-size:clamp(46px,5.6vw,84px);line-height:1;letter-spacing:-.035em;margin:28px 0 28px}
.bv-hero__title em{font-style:normal;color:var(--bv-green-dark)}
.bv-hero__lead{font-size:19px;line-height:1.65;color:var(--bv-ink-soft);max-width:34em}
.bv-hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:32px;margin-top:44px}
.bv-hero__usp{display:flex;align-items:center;gap:10px;margin-top:28px;font-size:15px;font-weight:500;color:var(--bv-ink-soft)}
.bv-hero__usp span{color:var(--bv-green-dark);font-weight:700}
.bv-hero__media{position:relative;overflow:hidden;background:var(--bv-paper)}
.bv-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (max-width:900px){
  .bv-hero{grid-template-columns:1fr;min-height:0}
  .bv-hero__text{padding:56px 20px 48px}
  .bv-hero__media{aspect-ratio:4/3}
}

/* TrackerSack-kiloblok rechts in de hero */
.bv-hero__media{display:flex;align-items:center;justify-content:center;padding:40px max(32px,calc((100vw - var(--bv-max))/2 + 32px)) 40px 40px}
.bv-ts{position:relative;z-index:1;width:min(400px,100%);background:#fff;border:1px solid var(--bv-line);border-radius:6px;padding:30px 32px 32px;box-shadow:0 24px 48px rgba(15,42,24,.08)}
.bv-ts__top{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--bv-line)}
.bv-ts__brand{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--bv-green-dark)}
.bv-ts__brand::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--bv-green);box-shadow:0 0 0 4px rgba(58,170,53,.18)}
.bv-ts__tag{font-size:11px;font-weight:600;padding:3px 10px;border-radius:99px;background:var(--bv-paper);color:var(--bv-ink-soft)}
.bv-ts__who{font-size:14px;color:var(--bv-ink-soft);margin-bottom:6px}
.bv-ts__big{font-size:56px;font-weight:500;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.bv-ts__big span{font-size:22px;letter-spacing:0;color:var(--bv-ink-soft)}
.bv-ts__label{font-size:14px;color:var(--bv-ink-soft);margin-top:6px}
.bv-ts__rows{margin:22px 0 24px;display:grid}
.bv-ts__rows div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--bv-line);font-size:14px}
.bv-ts__rows dt{color:var(--bv-ink-soft)}
.bv-ts__rows dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}
.bv-ts__title{font-size:26px;font-weight:500;letter-spacing:-.02em;line-height:1.15;margin-bottom:12px}
.bv-ts__text{font-size:14px;line-height:1.7;color:var(--bv-ink-soft);margin-bottom:24px}
.bv-ts__actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.bv-ts__btn{padding:14px 24px;font-size:14px}
/* Niet ingelogd: vergrendelde weergave */
.bv-ts__locked{filter:blur(1.5px);opacity:.55;user-select:none;pointer-events:none}
.bv-ts__locked .bv-ts__big{display:flex;align-items:baseline;gap:10px}
.bv-ts__locked .bv-ts__rows{margin-bottom:0}
.bv-ts__bar{display:inline-block;height:12px;border-radius:6px;background:linear-gradient(90deg,#dfe3dc,#eef0ec,#dfe3dc);background-size:200% 100%;vertical-align:middle;animation:bv-shine 2.4s ease-in-out infinite}
.bv-ts__bar--big{width:150px;height:44px;border-radius:8px}
@keyframes bv-shine{0%{background-position:100% 0}100%{background-position:-100% 0}}
.bv-ts__gate{position:relative;margin-top:-6px;padding-top:22px;border-top:1px solid var(--bv-line)}
.bv-ts__lock{position:absolute;top:-21px;left:50%;transform:translateX(-50%);width:42px;height:42px;border-radius:50%;background:var(--bv-forest);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 6px rgba(255,255,255,.96)}
.bv-ts__lock svg{width:18px;height:18px}
.bv-ts__gate .bv-ts__title{font-size:22px;margin:14px 0 10px}
.bv-ts__gate .bv-ts__text{margin-bottom:20px}
@media (prefers-reduced-motion:reduce){.bv-ts__bar{animation:none}}
@media (max-width:900px){.bv-hero__media{aspect-ratio:auto;min-height:0;padding:0 20px 56px;justify-content:center}.bv-ts{width:100%;max-width:420px}}

/* ---------- Secties ---------- */
.bv-section{padding:128px 0}
.bv-section--paper{background:var(--bv-paper)}
.bv-section--first{padding-top:72px}
.bv-section--first .bv-head{margin-bottom:48px}
@media (max-width:760px){.bv-section--first{padding-top:48px}}
.bv-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:32px;margin-bottom:72px}
.bv-head__title{font-size:clamp(36px,4.2vw,60px);margin-top:22px;max-width:15em}
@media (max-width:760px){.bv-section{padding:80px 0}.bv-head{grid-template-columns:1fr;margin-bottom:48px}}

/* ---------- Stappen ---------- */
.bv-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:40px;counter-reset:bv}
.bv-step{border-top:1px solid var(--bv-ink);padding-top:28px;display:flex;flex-direction:column}
.bv-step__num{font-size:13px;font-weight:600;color:var(--bv-green-dark);letter-spacing:.08em;margin-bottom:40px;font-variant-numeric:tabular-nums}
.bv-step h3{font-size:24px;letter-spacing:-.02em;margin-bottom:16px}
.bv-step p{font-size:15px;line-height:1.75;color:var(--bv-ink-soft)}
.bv-step .bv-link{align-self:flex-start;margin-top:24px;font-size:13px}
@media (max-width:1000px){.bv-steps{grid-template-columns:1fr 1fr;gap:56px 40px}}
@media (max-width:560px){.bv-steps{grid-template-columns:1fr;gap:48px}.bv-step__num{margin-bottom:20px}}


/* ---------- Producten ---------- */
.bv-products{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.bv-product{display:flex;flex-direction:column}
.bv-product__img{aspect-ratio:4/5;background:#fff;border-radius:4px;overflow:hidden;display:grid;place-items:center;margin-bottom:24px}
.bv-product__img img{width:100%;height:100%;object-fit:contain;padding:28px;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.bv-product:hover .bv-product__img img{transform:scale(1.04)}
.bv-product__img img.bv-zoom{padding:0;transform:scale(1.35)}
.bv-product:hover .bv-product__img img.bv-zoom{transform:scale(1.4)}
.bv-product h3{font-size:20px;margin-bottom:10px}
.bv-product p,.bv-product li{font-size:14px;line-height:1.7;color:var(--bv-ink-soft)}
.bv-product ul{list-style:none;margin:0;padding:0}
.bv-product li{padding-left:16px;position:relative}
.bv-product li::before{content:"";position:absolute;left:0;top:.8em;width:6px;height:1px;background:var(--bv-green-dark)}
.bv-product .bv-link{align-self:flex-start;margin-top:16px;font-size:13px;word-break:break-all}
.bv-designs{display:flex;gap:18px;margin-top:12px;font-size:13px;color:var(--bv-ink)}
.bv-designs span{display:flex;align-items:center;gap:7px}
.bv-designs i{width:12px;height:12px;border-radius:50%;display:block}
@media (max-width:1000px){.bv-products{grid-template-columns:1fr 1fr;gap:48px 24px}}

/* ---------- BekerVrienden ---------- */
.bv-friends{background:var(--bv-forest);color:#fff}
.bv-friends .bv-eyebrow{color:#8fd48b}
.bv-friends .bv-link{color:#fff}
.bv-friends__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.bv-friend__img{aspect-ratio:3/4;overflow:hidden;border-radius:4px;background:var(--bv-forest-2);margin-bottom:22px}
.bv-friend__img img{width:100%;height:100%;object-fit:cover;filter:saturate(.9);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.bv-friend:hover .bv-friend__img img{transform:scale(1.05)}
.bv-friend__img img.bv-crop{transform:scale(1.2)}
.bv-friend:hover .bv-friend__img img.bv-crop{transform:scale(1.25)}
.bv-friend h3{font-size:22px;margin-bottom:8px}
.bv-friend p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.72)}
.bv-friend p strong{color:#fff;font-weight:500}
.bv-friends__foot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:80px;padding-top:32px;border-top:1px solid var(--bv-line-dark);font-size:15px;color:rgba(255,255,255,.72)}
@media (max-width:1000px){.bv-friends__grid{grid-template-columns:1fr 1fr;gap:48px 24px}}

/* ---------- Contact ---------- */
.bv-contact{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:start}
.bv-contact__title{font-size:clamp(38px,4.4vw,64px);margin:22px 0 48px}
.bv-contact dl{margin:0;display:grid;grid-template-columns:140px 1fr;border-top:1px solid var(--bv-line)}
.bv-contact dt,.bv-contact dd{padding:18px 0;border-bottom:1px solid var(--bv-line);margin:0}
.bv-contact dt{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bv-muted);padding-top:21px}
.bv-contact dd{font-size:16px}
.bv-contact dd a{text-decoration:none;border-bottom:1px solid var(--bv-line)}
.bv-contact dd a:hover{border-color:var(--bv-green)}
.bv-form{background:var(--bv-paper);padding:52px;border-radius:4px}
.bv-form__title{font-size:28px;margin-bottom:32px}
.bv-field{position:relative;margin-bottom:22px}
.bv-field label{display:block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bv-ink-soft);margin-bottom:8px}
.bv-form input:not([type=checkbox]),.bv-form textarea,.wpcf7 input:not([type=checkbox]):not([type=submit]),.wpcf7 textarea{width:100%;font:inherit;font-size:16px;color:var(--bv-ink);background:transparent;border:0;border-bottom:1px solid #c9ccc5;border-radius:0;padding:10px 0;transition:border-color .2s}
.bv-form input:focus,.bv-form textarea:focus{outline:none;border-color:var(--bv-forest)}
.bv-form textarea{min-height:110px;resize:vertical}
.bv-form__row{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.bv-consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--bv-ink-soft);margin:8px 0 32px;cursor:pointer}
.bv-consent input{accent-color:var(--bv-forest);width:17px;height:17px;margin-top:3px;flex:none}
.wpcf7 input[type=submit]{background:var(--bv-forest);color:#fff;border:0;border-radius:999px;padding:17px 30px;font:600 15px var(--bv-font);cursor:pointer}
.bv-form__msg{font-size:14px;font-weight:600;color:var(--bv-green-dark);margin-top:16px}
@media (max-width:900px){.bv-contact{grid-template-columns:1fr;gap:56px}}
@media (max-width:520px){.bv-form{padding:32px 22px}.bv-form__row{grid-template-columns:1fr}.bv-contact dl{grid-template-columns:110px 1fr}}

/* ---------- Footer ---------- */
.bv-footer{background:var(--bv-forest);color:rgba(255,255,255,.7);padding:96px 0 36px;font-size:14px}
.bv-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px}
.bv-footer__brand{font-size:30px;font-weight:500;letter-spacing:-.03em;color:#fff;margin-bottom:20px}
.bv-footer__brand span{color:#8fd48b}
.bv-footer h4{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:0 0 20px}
.bv-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.bv-footer a{color:rgba(255,255,255,.7);text-decoration:none;transition:color .2s}
.bv-footer a:hover{color:#fff}
.bv-footer__bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:80px;padding-top:28px;border-top:1px solid var(--bv-line-dark);font-size:13px}
@media (max-width:760px){.bv-footer{padding-top:72px}.bv-footer__grid{grid-template-columns:1fr 1fr}.bv-footer__grid>div:first-child{grid-column:1/-1}}

/* ---------- Cookie ---------- */
.bv-cookie{position:fixed;left:24px;bottom:24px;z-index:60;width:min(360px,calc(100% - 48px));background:#fff;border:1px solid var(--bv-line);box-shadow:0 20px 50px rgba(15,42,24,.12);padding:22px 24px;border-radius:4px;display:flex;flex-direction:column;gap:16px}
.bv-cookie p{font-size:13px;line-height:1.6;color:var(--bv-ink-soft)}
.bv-cookie .bv-btn{align-self:flex-start;padding:12px 26px;font-size:14px}
.bv-cookie[hidden]{display:none}

/* ---------- Paginakop ---------- */
.bv-pagehead{background:var(--bv-paper);border-bottom:1px solid var(--bv-line);padding:72px 0 64px}
.bv-pagehead__title{font-size:clamp(38px,4.8vw,68px);letter-spacing:-.035em;line-height:1.02;margin-top:22px;max-width:16em}
.bv-pagehead__intro{margin-top:20px;max-width:40em;font-size:18px;line-height:1.65;color:var(--bv-ink-soft)}
.bv-pagehead__intro p{margin:0}
.bv-pagehead--center{text-align:center}
.bv-pagehead--center .bv-eyebrow{justify-content:center}
.bv-pagehead--center .bv-pagehead__title,.bv-pagehead--center .bv-pagehead__intro{margin-left:auto;margin-right:auto}
.bv-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.bv-chip{padding:10px 18px;border-radius:999px;border:1px solid var(--bv-line);background:#fff;font-size:14px;font-weight:500;text-decoration:none;color:var(--bv-ink);transition:border-color .2s,background .2s}
.bv-chip:hover{border-color:var(--bv-ink)}
.bv-chip.is-current{background:var(--bv-forest);border-color:var(--bv-forest);color:#fff}
@media (max-width:760px){.bv-pagehead{padding:48px 0 40px}}

/* ---------- Pagina-inhoud ---------- */
.bv-page-body{padding:72px 0 112px}
.bv-page-body--form{padding-top:0}
.bv-content{max-width:760px;font-size:17px;line-height:1.8;color:var(--bv-ink-soft)}
.bv-content--wide{max-width:none}
.bv-content::after,.bv-content .wpb_row::after,.bv-content .vc_row::after{content:"";display:table;clear:both}
.bv-content>*:first-child{margin-top:0}
.bv-content h1,.bv-content h2,.bv-content h3,.bv-content h4{color:var(--bv-ink);font-weight:500}
.bv-content h1{font-size:clamp(34px,4vw,54px);letter-spacing:-.035em;margin:0 0 .5em}
.bv-content h2{font-size:clamp(28px,3vw,40px);margin:1.8em 0 .5em}
.bv-content h3{font-size:24px;margin:1.6em 0 .5em;line-height:1.2}
.bv-content h4{font-size:19px;margin:1.4em 0 .4em}
.bv-content p,.bv-content ul,.bv-content ol,.bv-content table,.bv-content blockquote{margin:0 0 1.2em}
.bv-content ul,.bv-content ol{padding-left:1.2em}
.bv-content li{margin-bottom:.4em}
.bv-content li::marker{color:var(--bv-green-dark)}
.bv-content strong,.bv-content b{color:var(--bv-ink);font-weight:600}
.bv-content a:not(.bv-btn):not(.button){color:var(--bv-green-dark);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.bv-content a:not(.bv-btn):not(.button):hover{color:var(--bv-forest)}
.bv-content img{border-radius:4px;height:auto}
.bv-content hr,.bv-divider{border:0;border-top:1px solid var(--bv-line);margin:32px 0}
.bv-content table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}
.bv-content th,.bv-content td{padding:12px 14px;border-bottom:1px solid var(--bv-line);text-align:left;vertical-align:top}
.bv-content th{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--bv-muted);background:var(--bv-paper)}
.bv-content blockquote,.bv-quote{border-left:2px solid var(--bv-green);padding:4px 0 4px 24px;color:var(--bv-ink);font-size:19px}
.bv-content cite{display:block;font-size:14px;color:var(--bv-muted);font-style:normal;margin-top:8px}
.bv-headline{color:var(--bv-ink)}
.bv-content h1.bv-headline:not(:first-child){margin-top:1.6em}
.bv-content h2.bv-headline:empty,.bv-content h3.bv-headline:empty{display:none}
.bv-sc-btn{margin:8px 0 24px}
.bv-mark{background:#e3f3e1;color:var(--bv-ink);padding:0 4px}
.bv-callout,.bv-notice,.bv-iconbox{background:var(--bv-paper);border-radius:4px;padding:28px 32px;margin:0 0 24px}
.bv-callout{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border-left:3px solid var(--bv-green)}
.bv-callout p{margin:0}
.bv-callout h3,.bv-iconbox h3{margin-top:0}
.bv-notice{border-left:3px solid var(--bv-green)}
.bv-toggle{border-top:1px solid var(--bv-line);padding:4px 0}
.bv-toggle summary{cursor:pointer;padding:14px 0;font-weight:500;color:var(--bv-ink);list-style:none;display:flex;justify-content:space-between}
.bv-toggle summary::after{content:"+";color:var(--bv-green-dark);font-size:22px;line-height:1}
.bv-toggle[open] summary::after{content:"–"}
.bv-col{margin-bottom:24px}
.bv-row{margin:0 0 8px}
.bv-content .bv-col{float:none;width:auto;padding:0}
@media (min-width:760px){
.bv-content .bv-col--one_half,.bv-content .bv-col--one_third,.bv-content .bv-col--two_third,.bv-content .bv-col--one_fourth,.bv-content .bv-col--three_fourth{float:left;padding-right:32px}
.bv-col--one_half{width:50%}.bv-col--one_third{width:33.33%}.bv-col--two_third{width:66.66%}.bv-col--one_fourth{width:25%}.bv-col--three_fourth{width:75%}}

/* Pagina's gebouwd met WPBakery: rijen als rustige blokken */
.bv-content--wide .vc_row{margin-left:-20px;margin-right:-20px}
.bv-content--wide .vc_column_container>.vc_column-inner{padding-left:20px;padding-right:20px}
.bv-content--wide .wpb_text_column{max-width:760px}
.bv-content--wide .vc_col-sm-4 .wpb_text_column,.bv-content--wide .vc_col-sm-6 .wpb_text_column{max-width:none}
.bv-content .wpb_content_element{margin-bottom:28px}
.bv-content .wpb_single_image img{border-radius:4px}
.bv-content .vc_separator{margin:40px 0}

/* Tekstpagina met zijkolom */
.bv-textpage{display:grid;grid-template-columns:minmax(0,760px) 320px;justify-content:space-between;gap:64px;align-items:start}
.bv-aside{position:sticky;top:110px;display:grid;gap:20px}
.bv-aside__card{background:var(--bv-forest);color:#fff;border-radius:6px;padding:32px}
.bv-aside__card .bv-eyebrow{color:#8fd48b}
.bv-aside__title{font-size:26px;font-weight:500;letter-spacing:-.02em;line-height:1.15;margin:16px 0 10px}
.bv-aside__text{font-size:15px;line-height:1.65;color:rgba(255,255,255,.75);margin-bottom:24px}
.bv-aside__card .bv-btn{background:#fff;color:var(--bv-forest);padding:14px 22px;font-size:14px}
.bv-aside__card .bv-btn:hover{background:var(--bv-green);color:#fff}
.bv-aside__contact{border:1px solid var(--bv-line);border-radius:6px;padding:24px 28px;font-size:15px;line-height:1.8;color:var(--bv-ink-soft)}
.bv-aside__contact a{color:var(--bv-ink);text-decoration:none}
.bv-aside__label{font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--bv-muted);margin-bottom:6px}
@media (max-width:1000px){.bv-textpage{grid-template-columns:1fr;gap:48px}.bv-aside{position:static}}

/* Oude Unicon-opmaak in WPBakery-rijen neutraliseren (geen felgroene vlakken) */
.bv-content--wide .wpb_row[style*="background"],.bv-content--wide .vc_column_container[style*="background"]{background:none!important}
.bv-content--wide .bv-headline[style*="color"]{color:var(--bv-ink)!important}

/* ---------- Formulierpagina (inloggen, account, afhaling) ---------- */
.bv-formcard{max-width:640px;margin:-32px auto 0;background:#fff;border:1px solid var(--bv-line);border-radius:6px;padding:48px;box-shadow:0 24px 48px rgba(15,42,24,.06);position:relative}
.bv-formcard__help{max-width:640px;margin:24px auto 0;text-align:center;font-size:14px;color:var(--bv-muted)}
.bv-formcard__help a{color:var(--bv-ink)}
@media (max-width:600px){.bv-formcard{padding:28px 20px;margin-top:-20px}}

/* ---------- Formulieren: Gravity Forms, Contact Form 7, Ultimate Member ---------- */
.bv-content .gform_wrapper,.bv-content .gform_wrapper.gravity-theme,.bv-content .gform-theme--foundation{
  --gf-color-primary:var(--bv-forest);--gf-color-primary-rgb:15,42,24;--gf-color-primary-contrast:#fff;--gf-color-primary-darker:var(--bv-green-dark);
  --gf-ctrl-border-color:#c9ccc5;--gf-ctrl-border-color-focus:var(--bv-forest);--gf-ctrl-radius:6px;--gf-ctrl-size-md:46px;
  --gf-ctrl-label-color-primary:var(--bv-ink);--gf-ctrl-btn-radius:999px;--gf-font-family-base:var(--bv-font);--gf-radius:6px;
  font-family:var(--bv-font)}
.bv-content .gform_title,.bv-content .gform_heading .gform_title{font-size:26px;font-weight:500;letter-spacing:-.02em;color:var(--bv-ink);margin:0 0 16px}
.bv-content .gfield_label,.bv-content .gform-field-label,.wpcf7 label,.um .um-field-label label{font-size:13px!important;font-weight:600!important;letter-spacing:.04em;color:var(--bv-ink)!important}
.bv-content .gfield_required{color:var(--bv-green-dark)!important;font-weight:500}
.bv-content .gform_wrapper input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]),
.bv-content .gform_wrapper select,.bv-content .gform_wrapper textarea,
.wpcf7 input:not([type=checkbox]):not([type=radio]):not([type=submit]),.wpcf7 select,.wpcf7 textarea,
.um input[type=text],.um input[type=password],.um input[type=email],.um select,.um textarea,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .quantity .qty,.woocommerce div.product form.cart .variations select,
.woocommerce-cart table.cart td.actions .coupon .input-text{
  width:100%;min-height:48px;font:inherit!important;font-size:16px!important;color:var(--bv-ink)!important;background:#fff!important;border:1px solid #c9ccc5!important;border-radius:6px!important;padding:11px 14px!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s}
.bv-content .gform_wrapper input:focus,.bv-content .gform_wrapper select:focus,.bv-content .gform_wrapper textarea:focus,.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus,.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row select:focus,.woocommerce div.product form.cart .variations select:focus{outline:none!important;border-color:var(--bv-forest)!important;box-shadow:0 0 0 3px rgba(58,170,53,.18)!important}
.wpcf7 textarea,.bv-content .gform_wrapper textarea{min-height:130px}
.wpcf7 p{margin:0 0 18px}
.wpcf7 label{display:block}
.bv-content .gform_wrapper .gform_button,.bv-content .gform_wrapper .gform_next_button,.bv-content .gform_wrapper input[type=submit],.bv-content .gform_wrapper button[type=submit],
.wpcf7 input[type=submit],.um .um-button,.um input[type=submit].um-button{
  background:var(--bv-forest)!important;color:#fff!important;border:0!important;border-radius:999px!important;padding:16px 30px!important;min-height:0!important;font:600 15px/1 var(--bv-font)!important;cursor:pointer;box-shadow:none!important;width:auto;transition:background .25s}
.bv-content .gform_wrapper .gform_button:hover,.wpcf7 input[type=submit]:hover,.um .um-button:hover{background:var(--bv-green-dark)!important}
.bv-content .gform_wrapper .gform_previous_button{background:transparent!important;color:var(--bv-ink)!important;border:1px solid var(--bv-line)!important;border-radius:999px!important;padding:15px 26px!important}
.bv-content .gf_progressbar_wrapper .gf_progressbar_title{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bv-muted)}
.bv-content .gf_progressbar{background:var(--bv-paper)!important;border-radius:99px!important}
.bv-content .gf_progressbar_percentage{background:var(--bv-green)!important;border-radius:99px!important}
.bv-content .gform_wrapper .gfield_description{font-size:13px;color:var(--bv-muted)}
.bv-content .gform_wrapper .validation_message,.bv-content .gform_wrapper .gfield_validation_message,.wpcf7-not-valid-tip{font-size:13px!important;color:#b32d2e!important;background:none!important;border:0!important;padding:4px 0 0!important}
.bv-content .gform_wrapper .gform_validation_errors{border-radius:6px!important;box-shadow:none!important}
.bv-content .gform_confirmation_message,.wpcf7 form.sent .wpcf7-response-output{background:#e8f5e6;border:0!important;border-radius:6px;padding:16px 20px!important;color:var(--bv-forest);margin:16px 0 0!important}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output{border:0!important;border-radius:6px;background:#fbeaea;color:#8a1f1f;padding:16px 20px!important;margin:16px 0 0!important}
.bv-content .gform_login_form .gform_footer,.bv-content .gform_wrapper .gform_footer{padding-top:8px}
.bv-content .gform_wrapper a{color:var(--bv-green-dark)}
.um{max-width:none!important}

/* ---------- Webshop ---------- */
.woocommerce .woocommerce-result-count{font-size:14px;color:var(--bv-muted);margin:0 0 24px}
.woocommerce .woocommerce-ordering{margin:0 0 32px}
.woocommerce .woocommerce-ordering select{border:1px solid var(--bv-line);border-radius:999px;padding:10px 38px 10px 16px;font:inherit;font-size:14px;background:#fff}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px;margin:0!important;clear:both}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;display:flex;flex-direction:column}
.woocommerce ul.products li.product a img{aspect-ratio:1;object-fit:contain;background:var(--bv-paper);border-radius:4px;padding:24px;margin:0 0 20px!important;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.woocommerce ul.products li.product:hover a img{transform:translateY(-4px)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:19px!important;font-weight:500;letter-spacing:-.015em;color:var(--bv-ink);padding:0!important;margin:0 0 8px!important;line-height:1.3}
.woocommerce ul.products li.product .price{font-size:15px!important;color:var(--bv-ink)!important;font-weight:600;margin-bottom:18px!important}
.woocommerce ul.products li.product .price del{color:var(--bv-muted)!important;font-weight:400}
.woocommerce ul.products li.product .button{margin-top:auto!important;align-self:flex-start}
.woocommerce ul.products li.product .added_to_cart{font-size:13px;margin-top:8px}
@media (max-width:980px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 20px}}
@media (max-width:420px){.woocommerce ul.products li.product a img{padding:14px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px!important}}

.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,.woocommerce .wc-block-components-button:not(.is-link){
  background:var(--bv-forest)!important;color:#fff!important;border:0!important;border-radius:999px!important;font:600 14px/1 var(--bv-font)!important;padding:15px 26px!important;transition:background .25s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:var(--bv-green-dark)!important}
.woocommerce button.button:disabled,.woocommerce button.button.disabled{opacity:.45!important}
.woocommerce span.onsale{background:var(--bv-green)!important;border-radius:99px!important;min-height:0!important;line-height:1!important;padding:8px 12px!important;font-size:12px!important}

.bv-breadcrumb{font-size:13px;color:var(--bv-muted);margin:0 0 32px}
.bv-breadcrumb a{color:var(--bv-ink-soft);text-decoration:none}
.bv-breadcrumb a:hover{color:var(--bv-green-dark)}

/* Productpagina */
.bv-product-page{padding-top:40px}
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.woocommerce div.product>*{grid-column:1/-1}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product div.images{grid-column:1}
.woocommerce div.product div.summary{grid-column:2;position:sticky;top:110px}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper,.woocommerce div.product div.images img{background:var(--bv-paper);border-radius:4px}
.woocommerce div.product div.images img{padding:32px;aspect-ratio:1;object-fit:contain}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:10px;margin-top:10px!important}
.woocommerce div.product div.images .flex-control-thumbs li{width:72px!important}
.woocommerce div.product div.images .flex-control-thumbs img{padding:6px}
.woocommerce div.product .product_title{font-size:clamp(32px,3.6vw,48px);letter-spacing:-.03em;line-height:1.05;margin:0 0 16px}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-size:22px!important;color:var(--bv-ink)!important;font-weight:600;margin:0 0 24px}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--bv-ink-soft);margin-bottom:24px}
.woocommerce div.product form.cart{margin:0 0 24px!important;padding:24px 0;border-top:1px solid var(--bv-line);border-bottom:1px solid var(--bv-line)}
.woocommerce div.product form.cart .variations{margin-bottom:16px!important;border:0}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{display:block;padding:0!important;text-align:left;border:0;background:none!important;line-height:1.5}
.woocommerce div.product form.cart .variations label{font-size:13px;font-weight:600;color:var(--bv-ink)}
.woocommerce div.product form.cart .variations tr{display:block;margin-bottom:16px}
.woocommerce div.product form.cart .reset_variations{font-size:13px;color:var(--bv-muted)}
.woocommerce div.product form.cart .quantity{margin-right:12px!important}
.woocommerce div.product form.cart .quantity .qty{width:84px!important;text-align:center}
.woocommerce div.product form.cart .gform_wrapper,.woocommerce div.product form.cart .gspc__form{margin:16px 0}
.woocommerce div.product .product_meta{font-size:13px;color:var(--bv-muted)}
.woocommerce div.product .product_meta a{color:var(--bv-ink-soft)}
.woocommerce div.product .woocommerce-tabs{margin-top:72px;padding-top:0}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 32px!important;border-bottom:1px solid var(--bv-line);display:flex;gap:32px}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none!important;border:0!important;margin:0!important;padding:0!important;border-radius:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:0 0 14px!important;font-weight:500!important;color:var(--bv-muted)!important;border-bottom:2px solid transparent}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--bv-ink)!important;border-color:var(--bv-green)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:760px;color:var(--bv-ink-soft);font-size:16px;line-height:1.8}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:24px;color:var(--bv-ink);margin:0 0 16px}
.woocommerce div.product .woocommerce-tabs table.shop_attributes th,.woocommerce div.product .woocommerce-tabs table.shop_attributes td{padding:12px!important;border-color:var(--bv-line)!important;font-style:normal}
.woocommerce .related,.woocommerce .upsells{margin-top:96px}
.woocommerce .related>h2,.woocommerce .upsells>h2{font-size:32px;margin-bottom:32px}
@media (max-width:900px){.woocommerce div.product{grid-template-columns:1fr;gap:32px}.woocommerce div.product div.images,.woocommerce div.product div.summary{grid-column:1;position:static}}

/* Meldingen */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-notice{border:0!important;border-radius:6px!important;background:var(--bv-paper)!important;color:var(--bv-ink)!important;padding:18px 24px 18px 56px!important;font-size:15px}
.woocommerce-message{background:#e8f5e6!important}
.woocommerce-error{background:#fbeaea!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--bv-green-dark)!important;top:18px!important}
.woocommerce-message .button,.woocommerce-info .button{padding:10px 18px!important}

/* Winkelwagen */
.woocommerce table.shop_table{border:1px solid var(--bv-line)!important;border-radius:6px!important;border-collapse:separate!important;overflow:hidden}
.woocommerce table.shop_table th{font-size:12px;font-weight:600!important;letter-spacing:.1em;text-transform:uppercase;color:var(--bv-muted);background:var(--bv-paper);padding:14px 16px!important}
.woocommerce table.shop_table td{padding:16px!important;border-top:1px solid var(--bv-line)!important}
.woocommerce table.shop_table img{width:72px!important;background:var(--bv-paper);border-radius:4px;padding:6px}
.woocommerce table.shop_table td.product-name a{color:var(--bv-ink);text-decoration:none;font-weight:500}
.woocommerce a.remove{color:var(--bv-muted)!important;border:1px solid var(--bv-line);font-weight:400!important}
.woocommerce a.remove:hover{background:#b32d2e!important;color:#fff!important;border-color:#b32d2e}
.woocommerce-cart .cart-collaterals .cart_totals{float:none!important;width:100%!important;max-width:460px;margin-left:auto;background:var(--bv-paper);border-radius:6px;padding:32px}
.woocommerce-cart .cart-collaterals .cart_totals h2{font-size:24px;margin:0 0 16px}
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table{border:0!important;background:transparent}
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th{background:transparent;padding-left:0!important}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;text-align:center;font-size:16px!important;padding:18px!important}
.woocommerce-cart table.cart td.actions .coupon .input-text{width:180px!important;margin-right:8px!important}

/* Afrekenen */
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{width:100%!important;float:none!important}
@media (min-width:1000px){
  .woocommerce-checkout form.checkout{display:grid;grid-template-columns:1.25fr 1fr;gap:0 64px;align-items:start}
  .woocommerce-checkout form.checkout>*{grid-column:1}
  .woocommerce-checkout form.checkout #order_review_heading,.woocommerce-checkout form.checkout #order_review{grid-column:2}
  .woocommerce-checkout form.checkout #order_review_heading{grid-row:1;margin-top:0}
  .woocommerce-checkout form.checkout #order_review{grid-row:2 / span 4;position:sticky;top:110px}
}
.woocommerce-checkout h3,#order_review_heading{font-size:24px;margin:0 0 20px}
.woocommerce-checkout #order_review{background:var(--bv-paper);border-radius:6px;padding:28px}
.woocommerce-checkout #order_review table.shop_table{background:#fff}
.woocommerce form .form-row{margin:0 0 16px!important;padding:0!important}
.woocommerce form .form-row label{font-size:13px;font-weight:600;color:var(--bv-ink);margin-bottom:6px}
.woocommerce form .form-row .required{color:var(--bv-green-dark);text-decoration:none}
.woocommerce-checkout #payment{background:#fff!important;border-radius:6px!important}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--bv-line)!important;padding:20px!important}
.woocommerce-checkout #payment div.payment_box{background:var(--bv-paper)!important;border-radius:6px}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--bv-paper)!important}
.woocommerce-checkout #payment #place_order{width:100%;font-size:16px!important;padding:18px!important;float:none!important}
.select2-container--default .select2-selection--single{height:48px!important;border:1px solid #c9ccc5!important;border-radius:6px!important}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px!important;padding-left:14px!important}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px!important}

/* Mijn account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start}
.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1;grid-row:1}
.woocommerce-account .woocommerce>.woocommerce-MyAccount-navigation{grid-column:1;grid-row:2}
.woocommerce-account .woocommerce>.woocommerce-MyAccount-content{grid-column:2;grid-row:2}
@media (max-width:900px){.woocommerce-account .woocommerce>.woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce>.woocommerce-MyAccount-content{grid-column:1}.woocommerce-account .woocommerce>.woocommerce-MyAccount-content{grid-row:3}}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:auto!important;float:none!important}
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--bv-line)}
.woocommerce-account .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--bv-line);margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:14px 0;color:var(--bv-ink-soft);text-decoration:none!important;font-size:15px}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{color:var(--bv-ink);font-weight:600;box-shadow:inset 3px 0 0 var(--bv-green);padding-left:14px}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{color:var(--bv-green-dark)}
.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.woocommerce-account:not(.logged-in) .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.woocommerce-account:not(.logged-in) .u-columns .u-column1,.woocommerce-account:not(.logged-in) .u-columns .u-column2{width:auto!important;float:none!important;background:#fff;border:1px solid var(--bv-line);border-radius:6px;padding:36px}
.woocommerce form.login,.woocommerce form.register{border:0!important;padding:0!important;margin:0!important}
.woocommerce-account .woocommerce-Addresses .woocommerce-Address{background:var(--bv-paper);border-radius:6px;padding:24px}
@media (max-width:900px){.woocommerce-account .woocommerce{grid-template-columns:1fr;gap:32px}.woocommerce-account:not(.logged-in) .u-columns{grid-template-columns:1fr}}

/* ---------- Berichten ---------- */
.bv-page{padding:96px 0 128px}
.bv-page__title{font-size:clamp(40px,5vw,72px);letter-spacing:-.035em;margin-bottom:48px}
.bv-posts{display:grid;gap:32px}
.bv-post{padding-bottom:32px;border-bottom:1px solid var(--bv-line)}
.bv-post h2{font-size:30px;margin:0 0 10px}
.bv-post h2 a{color:var(--bv-ink);text-decoration:none}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ---------- Dashboard Mijn kilo's ---------- */
.bv-dash{max-width:1120px;margin:0 auto;padding:0 24px 72px}
.bv-dash__head{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-end;justify-content:space-between;padding:8px 0 26px;border-bottom:1px solid var(--bv-line)}
.bv-dash__eyebrow{margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bv-green-dark)}
.bv-dash__title{margin:0;font-size:clamp(28px,4vw,42px);line-height:1.08;letter-spacing:-.02em}
.bv-dash__sub{margin:10px 0 0;color:var(--bv-ink-soft);font-size:15px;max-width:52ch}
.bv-dash__export{align-self:center;font-size:14px;font-weight:600;color:var(--bv-ink);text-decoration:none;border:1px solid var(--bv-line);border-radius:99px;padding:10px 18px;background:#fff;white-space:nowrap}
.bv-dash__export:hover{border-color:var(--bv-green);color:var(--bv-green-dark)}
.bv-dash__periode{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:24px 0 28px}
.bv-dash__pill{font-size:14px;font-weight:600;text-decoration:none;color:var(--bv-ink-soft);border:1px solid var(--bv-line);background:#fff;border-radius:99px;padding:9px 18px}
.bv-dash__pill:hover{border-color:var(--bv-green);color:var(--bv-green-dark)}
.bv-dash__pill.is-actief{background:var(--bv-forest);border-color:var(--bv-forest);color:#fff}
.bv-dash__eigen{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-left:auto;font-size:13px;color:var(--bv-ink-soft)}
.bv-dash__eigen label{display:flex;gap:6px;align-items:center}
.bv-dash__eigen input{font:inherit;padding:7px 10px;border:1px solid var(--bv-line);border-radius:10px;background:#fff;color:var(--bv-ink)}
.bv-dash__eigen button{font:inherit;font-weight:600;padding:8px 16px;border:1px solid var(--bv-line);border-radius:99px;background:#fff;cursor:pointer;color:var(--bv-ink)}
.bv-dash__eigen button:hover{border-color:var(--bv-green);color:var(--bv-green-dark)}
.bv-dash__kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.bv-dash__kpi{background:#fff;border:1px solid var(--bv-line);border-radius:18px;padding:22px 24px}
.bv-dash__kpi--groot{grid-column:span 1;background:var(--bv-forest);border-color:var(--bv-forest)}
.bv-dash__kpi--groot .bv-dash__kpi-label{color:#9dc9a0}
.bv-dash__kpi--groot .bv-dash__kpi-waarde{color:#fff}
.bv-dash__kpi-label{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--bv-ink-soft)}
.bv-dash__kpi-waarde{margin:0;font-size:34px;font-weight:700;letter-spacing:-.03em;line-height:1}
.bv-dash__kpi-waarde span{font-size:16px;font-weight:600;letter-spacing:0}
.bv-dash__blok{margin-top:40px}
.bv-dash__blok h3{margin:0 0 18px;font-size:19px;letter-spacing:-.01em}
.bv-dash__hint{font-weight:500;color:var(--bv-ink-soft);font-size:14px}
.bv-dash__chart{position:relative;display:flex;gap:14px;background:#fff;border:1px solid var(--bv-line);border-radius:18px;padding:20px 22px}
.bv-dash__yaxis{display:flex;flex-direction:column;justify-content:space-between;padding:14px 0 30px;font-size:12px;color:var(--bv-ink-soft);white-space:nowrap}
.bv-dash__svg{flex:1;width:100%;height:280px}
.bv-dash__grid{stroke:var(--bv-line);stroke-width:1}
.bv-dash__bar{fill:var(--bv-green)}
.bv-dash__bar:hover{fill:var(--bv-green-dark)}
.bv-dash__xlabel{font-size:13px;fill:#7b8480;font-family:inherit}
.bv-dash__tabel{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--bv-line);border-radius:18px;overflow:hidden;font-size:15px}
.bv-dash__tabel th,.bv-dash__tabel td{padding:13px 20px;text-align:left;border-bottom:1px solid var(--bv-line)}
.bv-dash__tabel th{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bv-ink-soft);background:var(--bv-paper)}
.bv-dash__tabel tr:last-child td{border-bottom:0}
.bv-dash__tabel .r{text-align:right;font-variant-numeric:tabular-nums}
.bv-dash__toon{margin-top:14px;font:inherit;font-size:14px;font-weight:600;color:var(--bv-green-dark);background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:underline}
.bv-dash__leeg{margin:0;padding:28px;background:#fff;border:1px solid var(--bv-line);border-radius:18px;color:var(--bv-ink-soft)}
.bv-dash__voet{margin:36px 0 0;font-size:13px;color:var(--bv-ink-soft);max-width:70ch}
.bv-dash--gast,.bv-dash--leeg{padding-top:24px}
@media(max-width:900px){
	.bv-dash__kpis{grid-template-columns:repeat(2,1fr)}
	.bv-dash__eigen{margin-left:0;width:100%}
}
@media(max-width:560px){
	.bv-dash{padding:0 16px 56px}
	.bv-dash__kpis{grid-template-columns:1fr}
	.bv-dash__svg{height:220px}
	.bv-dash__tabel th,.bv-dash__tabel td{padding:11px 13px;font-size:14px}
}
.bv-dash__wrap{padding:44px 0 0}
body.bv-kilos .bv-dash__wrap{background:var(--bv-paper)}

/* Maar één "Opnieuw bestellen" op de besteldetailpagina */
.woocommerce-order-details p.order-again{display:none}

/* Dashboardtabellen niet als blok renderen (die regel is voor brede tabellen op oude paginas) */
.bv-content table.bv-dash__tabel{display:table;overflow:visible}

/* ---------- CO2-monitor ---------- */
.bv-co2__grid{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:stretch}
.bv-co2__kpi{background:var(--bv-forest);border-radius:18px;padding:24px 26px;display:flex;flex-direction:column;justify-content:center}
.bv-co2__kpi .bv-dash__kpi-label{color:#9dc9a0}
.bv-co2__kpi .bv-dash__kpi-waarde{color:#fff;font-size:38px}
.bv-co2__kpi .bv-dash__kpi-waarde span{font-size:15px;display:block;margin-top:6px;color:#9dc9a0}
.bv-co2__uitleg{background:#fff;border:1px solid var(--bv-line);border-radius:18px;padding:22px 24px;font-size:15px;line-height:1.6}
.bv-co2__uitleg p{margin:0 0 12px}
.bv-co2__uitleg p:last-child{margin-bottom:0}
.bv-co2__bron{font-size:13px;color:var(--bv-ink-soft);line-height:1.55}
.bv-co2__bron a{color:var(--bv-green-dark)}
.bv-co2__aannames{margin-top:16px;background:#fff;border:1px solid var(--bv-line);border-radius:18px;padding:0 22px}
.bv-co2__aannames summary{cursor:pointer;padding:16px 0;font-weight:600;font-size:15px;list-style:none}
.bv-co2__aannames summary::-webkit-details-marker{display:none}
.bv-co2__aannames summary::before{content:"+";display:inline-block;width:20px;color:var(--bv-green-dark);font-weight:700}
.bv-co2__aannames[open] summary::before{content:"–"}
.bv-co2__aannames form{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;padding:0 0 22px}
.bv-co2__aannames label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--bv-ink-soft)}
.bv-co2__aannames input{font:inherit;font-size:15px;padding:9px 12px;border:1px solid var(--bv-line);border-radius:10px;width:170px;color:var(--bv-ink)}
.bv-co2__aannames button{font:inherit;font-weight:600;padding:10px 20px;border:1px solid var(--bv-forest);background:var(--bv-forest);color:#fff;border-radius:99px;cursor:pointer}
.bv-co2__aannames button:hover{background:var(--bv-green-dark);border-color:var(--bv-green-dark)}
@media(max-width:900px){.bv-co2__grid{grid-template-columns:1fr}}

/* Bekercalculator-band op de homepage */
.bv-calcband{background:var(--bv-forest);color:#fff}
.bv-calcband__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px 40px}
.bv-calcband__tekst{flex:1 1 460px;min-width:0}
.bv-calcband .bv-head__title{color:#fff;margin:0 0 14px}
.bv-calcband p{color:rgba(255,255,255,.82);margin:0 0 10px;max-width:62ch}
.bv-calcband__na{color:#fff !important;font-weight:600;margin:0 !important}
.bv-eyebrow--light{color:var(--bv-green)}
.bv-calcband__actie{flex:0 0 auto}
@media(max-width:700px){.bv-calcband__actie .bv-btn{width:100%;justify-content:center}}

/* ===========================================================================
   Oude builder-pagina's in de stijl van de homepage
   Alleen opmaak: de inhoud van de pagina's blijft ongewijzigd.
   ======================================================================== */

/* Ritme: elke rij wordt een sectie met lucht eromheen */
.bv-content--wide>.bv-row{margin:0;padding:56px 0;border-top:1px solid var(--bv-line)}
.bv-content--wide>.bv-row:first-child{padding-top:8px;border-top:0}
.bv-content--wide>.bv-row:last-child{padding-bottom:8px}
@media(max-width:760px){.bv-content--wide>.bv-row{padding:40px 0}}

/* Kolommen naast elkaar, zonder floats */
.bv-content--wide>.bv-row{display:grid;gap:40px 48px;align-items:start}
.bv-content--wide>.bv-row>.bv-col{float:none;width:auto;padding:0;margin:0;min-width:0}
@media(min-width:900px){
	.bv-content--wide>.bv-row.bv-row--2{grid-template-columns:1fr 1fr}
	.bv-content--wide>.bv-row.bv-row--3{grid-template-columns:repeat(3,1fr)}
	.bv-content--wide>.bv-row.bv-row--4{grid-template-columns:repeat(4,1fr)}
}

/* Tekstbreedte: prettig leesbaar, net als op de homepage */
.bv-content--wide>.bv-row--1 .bv-col{max-width:820px}

/* Koppen in de themastijl, met het groene streepje van de homepage */
.bv-content--wide .bv-row h2,
.bv-content--wide .bv-row h3{position:relative;color:var(--bv-ink);font-weight:500;letter-spacing:-.03em;line-height:1.1}
.bv-content--wide .bv-row h2{font-size:clamp(28px,3.4vw,44px);margin:0 0 .45em}
.bv-content--wide .bv-row h3{font-size:clamp(23px,2.4vw,32px);margin:0 0 .45em}
.bv-content--wide .bv-row>.bv-col>h2:first-child::before,
.bv-content--wide .bv-row>.bv-col>h3:first-child::before{
	content:"";display:block;width:34px;height:3px;border-radius:2px;
	background:var(--bv-green);margin-bottom:18px}

/* De eerste alinea van een sectie iets groter: leest als een intro */
.bv-content--wide .bv-row>.bv-col>h2+p,
.bv-content--wide .bv-row>.bv-col>h3+p{font-size:19px;line-height:1.7;color:var(--bv-ink-soft)}

/* Afbeeldingen als kaart */
.bv-content--wide .bv-row img{border-radius:16px;box-shadow:0 18px 40px -28px rgba(15,42,24,.45);display:block}

/* Nadrukblokken (oude callouts) */
.bv-content--wide .bv-callout,
.bv-content--wide .bv-notice{background:var(--bv-paper);border:0;border-left:4px solid var(--bv-green);
	border-radius:14px;padding:26px 30px;font-size:18px;color:var(--bv-ink)}

/* Lijsten met een groen bolletje in plaats van een standaardpunt */
.bv-content--wide .bv-row ul{list-style:none;padding-left:0}
.bv-content--wide .bv-row ul>li{position:relative;padding-left:28px;margin-bottom:.6em}
.bv-content--wide .bv-row ul>li::before{content:"";position:absolute;left:4px;top:.62em;
	width:8px;height:8px;border-radius:50%;background:var(--bv-green)}

/* Genummerde lijsten als stappen, zoals de vier stappen op de homepage */
.bv-content--wide .bv-row ol{list-style:none;padding-left:0;counter-reset:bvstap}
.bv-content--wide .bv-row ol>li{counter-increment:bvstap;position:relative;padding-left:56px;margin-bottom:1.1em;min-height:36px}
.bv-content--wide .bv-row ol>li::before{content:counter(bvstap);position:absolute;left:0;top:-2px;
	width:36px;height:36px;border-radius:50%;background:var(--bv-forest);color:#fff;
	font:600 16px/36px var(--bv-font);text-align:center}

/* Tabellen als kaart */
.bv-content--wide .bv-row table{display:table;overflow:visible;border:1px solid var(--bv-line);
	border-radius:14px;border-collapse:separate;border-spacing:0;overflow:hidden}
.bv-content--wide .bv-row th{background:var(--bv-paper)}
.bv-content--wide .bv-row td,.bv-content--wide .bv-row th{border-bottom:1px solid var(--bv-line)}
.bv-content--wide .bv-row tr:last-child td{border-bottom:0}

/* Stappenplannen uit losse regels, in de stijl van de vier stappen op de homepage */
.bv-content .bv-stappen{list-style:none;padding:0;margin:8px 0 28px;counter-reset:bvstap;
	display:grid;gap:14px}
.bv-content .bv-stappen>li{counter-increment:bvstap;position:relative;
	background:var(--bv-paper);border-radius:14px;padding:18px 22px 18px 48px;
	margin:0;font-size:16px;line-height:1.65;color:var(--bv-ink-soft)}
.bv-content .bv-stappen>li::before{content:"";position:absolute;left:24px;top:26px;
	width:9px;height:9px;border-radius:50%;background:var(--bv-green)}
.bv-content .bv-stappen--genummerd>li{padding-left:68px}
.bv-content .bv-stappen--genummerd>li::before{content:counter(bvstap);left:20px;top:16px;
	width:32px;height:32px;border-radius:50%;background:var(--bv-forest);color:#fff;
	font:600 15px/32px var(--bv-font);text-align:center}
.bv-content .bv-stappen>li::marker{content:""}
.bv-stap__label{display:block;color:var(--bv-ink);font-weight:600;margin-bottom:2px}
@media(max-width:600px){
	.bv-content .bv-stappen>li{padding:16px 18px 16px 18px}
	.bv-content .bv-stappen>li::before{position:static;display:block;margin-bottom:10px}
}

/* Verwijzing naar het aanmeldformulier onder het inlogformulier */
.bv-registreren{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
	gap:18px 32px;background:var(--bv-paper);border-radius:16px;border-left:5px solid var(--bv-green);
	padding:28px 32px;margin:32px 0 0}
.bv-registreren__tekst{flex:1 1 320px;min-width:0}
.bv-registreren h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.03em;margin:0 0 8px;color:var(--bv-ink);font-weight:500}
.bv-registreren p{margin:0;color:var(--bv-ink-soft);font-size:16px;line-height:1.65;max-width:58ch}
.bv-registreren .bv-btn{flex:0 0 auto}
@media(max-width:620px){.bv-registreren{padding:22px}.bv-registreren .bv-btn{width:100%;justify-content:center}}

/* Afgeschermd product: uitleg in plaats van een 404 */
.bv-toegang{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 40px;
	background:var(--bv-paper);border-radius:18px;border-left:5px solid var(--bv-green);padding:34px 38px}
.bv-toegang__tekst{flex:1 1 380px;min-width:0}
.bv-toegang h2{font-size:clamp(23px,2.6vw,34px);letter-spacing:-.03em;margin:0 0 10px;color:var(--bv-ink);font-weight:500;line-height:1.15}
.bv-toegang p{margin:0;color:var(--bv-ink-soft);font-size:17px;line-height:1.7;max-width:60ch}
.bv-toegang__knoppen{flex:0 0 auto;display:flex;flex-direction:column;gap:12px}
.bv-toegang__terug{margin:24px 0 0;font-size:15px}
.bv-toegang__terug a{color:var(--bv-green-dark);text-decoration:none;font-weight:600}
.bv-toegang__terug a:hover{color:var(--bv-forest)}
@media(max-width:700px){.bv-toegang{padding:26px 22px}.bv-toegang__knoppen{width:100%}.bv-toegang__knoppen .bv-btn{justify-content:center}}

/* Koppen in het BekerVrienden-blok altijd wit, ook als een andere stylesheet later laadt */
.bv-friends h2,.bv-friends h3,.bv-friends .bv-head__title,.bv-friends .bv-friend h3{color:#fff!important}
.bv-friends .bv-eyebrow{color:#8fd48b!important}
.bv-friends .bv-friend p{color:rgba(255,255,255,.72)!important}
.bv-friends .bv-friend p strong{color:#fff!important}

/* Contactpagina: adres, telefoon en e-mail staan in de oude opmaak als h3 — normaal tekstformaat */
.page-id-15297 .bv-content h3:not(.bv-headline){font-size:17px;font-weight:400;line-height:1.75;margin:0 0 14px;letter-spacing:0}
