/* ===========================================================================
   AEV 2026 - Eigen design system (van nul, naar de referentie). Forced light,
   mobile-first. Laadt geïsoleerd: geen Storefront/av2/snippet-CSS op deze pagina's.
   =========================================================================== */

/* ---- reset ---- */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; color-scheme:light; overflow-x:clip; }
body.aev2026{ margin:0; background:#fff; color:var(--ink); overflow-x:clip; max-width:100%;
  font-family:var(--font); font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased; }
/* Grid-/flex-kinderen mogen krimpen (voorkomt horizontale overflow door brede inhoud). */
body.aev2026 .aev-prodgrid>*,body.aev2026 .aevc-grid>*,body.aev2026 .aevkb-grid>*,body.aev2026 .aevp-crossgrid>*,body.aev2026 .aevart-relgrid>*{ min-width:0; }
body.aev2026 img,body.aev2026 svg{ max-width:100%; display:block; }
body.aev2026 a{ color:inherit; text-decoration:none; }
body.aev2026 h1,body.aev2026 h2,body.aev2026 h3,body.aev2026 h4,body.aev2026 p,body.aev2026 ul,body.aev2026 figure{ margin:0; }
body.aev2026 ul{ list-style:none; padding:0; }
body.aev2026 button{ font:inherit; cursor:pointer; }
body.aev2026 :focus-visible{ outline:3px solid rgba(232,96,10,.55); outline-offset:2px; }

/* ---- tokens ---- */
:root{
  --navy:#1B3A5C; --navy-800:#15304b; --navy-900:#0f2338;
  --orange:#E8600A; --orange-600:#cf5305;
  --ink:#17233b; --muted:#5C6675; --line:#e4e9f0; --soft:#f4f6f9;
  --ok:#1a8a3c;
  --radius:12px; --radius-sm:8px;
  --container:1320px;
  --shadow-sm:0 2px 10px rgba(19,34,59,.06);
  --shadow-md:0 10px 30px rgba(19,34,59,.12);
  --font:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --font-head:'Poppins','Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}

/* ---- layout utils ---- */
.aev-container{ width:100%; max-width:var(--container); margin-inline:auto; padding-inline:20px; }
.aev-full{ width:100%; }
.aev-sec{ padding:40px 0; }
.aev-sec__head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:22px; flex-wrap:wrap; }
.aev-sec__head h2{ font-size:clamp(23px,3.4vw,32px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.12; text-wrap:balance; }
h1,h2,h3{ text-wrap:balance; overflow-wrap:break-word; hyphens:none; }
.aev-sec__link{ color:var(--orange); font-weight:700; font-size:.95rem; white-space:nowrap; }
.aev-sec__link:hover{ text-decoration:underline; }
.aev-kicker{ font-size:.75rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--orange); margin-bottom:.55rem; }
.aev-kicker--navy{ color:var(--navy); }
.aev-accent{ color:var(--orange); }

/* ---- buttons ---- */
.aev-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5rem; min-height:48px; padding:0 1.5rem;
  border:2px solid transparent; border-radius:var(--radius-sm); font-weight:700; font-size:.97rem; line-height:1; text-align:center; }
.aev-btn--primary{ background:var(--orange); color:#fff; }
.aev-btn--primary:hover{ background:var(--orange-600); }
.aev-btn--navy{ background:var(--navy); color:#fff; }
.aev-btn--navy:hover{ background:var(--navy-800); }
.aev-btn--ghost{ background:#fff; color:var(--navy); border-color:var(--line); }
.aev-btn--ghost:hover{ border-color:var(--navy); }

/* ---- icons (mask) ---- */
.aev-ic,.aevh-ic,.aev-usp-ic{ display:inline-block; width:1.15em; height:1.15em; flex:none; background:currentColor;
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain; vertical-align:-.18em; }
.aev-usp-ic{ width:26px; height:26px; }
[data-ic=truck]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h11v9H3zm11 3h4l3 3v3h-7zM7 18a2 2 0 1 0 .1 0zm11 0a2 2 0 1 0 .1 0z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 5h11v9H3zm11 3h4l3 3v3h-7zM7 18a2 2 0 1 0 .1 0zm11 0a2 2 0 1 0 .1 0z'/%3E%3C/svg%3E"); }
[data-ic=box]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 3 6.5V17l9 5 9-5V6.5zM5 8l7 3.8L19 8v8l-7 3.9L5 16z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 3 6.5V17l9 5 9-5V6.5zM5 8l7 3.8L19 8v8l-7 3.9L5 16z'/%3E%3C/svg%3E"); }
[data-ic=team]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm7 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM2 19c0-3 3.5-5 7-5s7 2 7 5v1H2zm14.5-4.7c2 .8 3.5 2.3 3.5 4.7v1h-3v-1c0-1.7-.7-3.2-1.8-4.3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 11a3 3 0 1 0 0-6 3 3 0 0 0 0 6zm7 0a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM2 19c0-3 3.5-5 7-5s7 2 7 5v1H2zm14.5-4.7c2 .8 3.5 2.3 3.5 4.7v1h-3v-1c0-1.7-.7-3.2-1.8-4.3z'/%3E%3C/svg%3E"); }
[data-ic=cart]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4H5L4 6H2v2h2l3 8h9l3-6H8.5M7 20a1.5 1.5 0 1 0 .1 0zm9 0a1.5 1.5 0 1 0 .1 0z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 4H5L4 6H2v2h2l3 8h9l3-6H8.5M7 20a1.5 1.5 0 1 0 .1 0zm9 0a1.5 1.5 0 1 0 .1 0z'/%3E%3C/svg%3E"); }
[data-ic=star]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m12 2 3 6.9 7.5.6-5.7 4.9 1.8 7.3L12 17.8 5.4 21.7l1.8-7.3L1.5 9.5 9 8.9z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='m12 2 3 6.9 7.5.6-5.7 4.9 1.8 7.3L12 17.8 5.4 21.7l1.8-7.3L1.5 9.5 9 8.9z'/%3E%3C/svg%3E"); }
[data-ic=return]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5V2L7 6l5 4V7a5 5 0 1 1-5 5H5a7 7 0 1 0 7-7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5V2L7 6l5 4V7a5 5 0 1 1-5 5H5a7 7 0 1 0 7-7z'/%3E%3C/svg%3E"); }
[data-ic=shield]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 4 5v6c0 5 3.4 8.5 8 10 4.6-1.5 8-5 8-10V5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2 4 5v6c0 5 3.4 8.5 8 10 4.6-1.5 8-5 8-10V5z'/%3E%3C/svg%3E"); }
[data-ic=chat],[data-ic=wa]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16v12H7l-3 3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M4 4h16v12H7l-3 3z'/%3E%3C/svg%3E"); }
[data-ic=search]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 4a6 6 0 1 0 3.7 10.7l4.8 4.8 1.4-1.4-4.8-4.8A6 6 0 0 0 10 4zm0 2a4 4 0 1 1 0 8 4 4 0 0 1 0-8z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M10 4a6 6 0 1 0 3.7 10.7l4.8 4.8 1.4-1.4-4.8-4.8A6 6 0 0 0 10 4zm0 2a4 4 0 1 1 0 8 4 4 0 0 1 0-8z'/%3E%3C/svg%3E"); }
[data-ic=user]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 2c-4 0-7 2-7 5v1h14v-1c0-3-3-5-7-5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm0 2c-4 0-7 2-7 5v1h14v-1c0-3-3-5-7-5z'/%3E%3C/svg%3E"); }
[data-ic=in],[data-ic=yt],[data-ic=ig],[data-ic=fb]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='3' width='18' height='18' rx='4' fill='black'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='3' width='18' height='18' rx='4' fill='black'/%3E%3C/svg%3E"); }

/* ============================ HEADER ============================ */
.aevh{ position:relative; z-index:20; }
.aevh-top{ background:var(--navy); color:#fff; font-size:13px; }
.aevh-top__in{ display:flex; align-items:center; justify-content:space-between; min-height:40px; gap:12px; }
/* Desktop: alle boodschappen naast elkaar (statisch, Elektranu-stijl). */
.aevh-rotator{ display:flex; align-items:center; gap:24px; flex:1 1 auto; min-width:0; }
.aevh-rot{ display:flex; align-items:center; gap:7px; color:rgba(255,255,255,.92); white-space:nowrap; }
.aevh-rot .aevh-ic{ color:var(--orange); flex:none; width:18px; height:18px; }
.aevh-toplinks{ display:flex; gap:20px; }
.aevh-toplinks a{ color:rgba(255,255,255,.85); }
.aevh-toplinks a:hover{ color:#fff; }

.aevh-main{ background:#fff; border-bottom:1px solid var(--line); }
.aevh-main__in{ display:flex; align-items:center; gap:20px; min-height:94px; padding-block:10px; }
.aevh-logo{ flex:none; display:flex; align-items:center; margin-right:14px; }
.aevh-logo img{ height:54px; width:auto; }
.aevh-search{ flex:1 1 auto; display:flex; max-width:480px; margin-inline:auto; border:1.5px solid var(--line); border-radius:var(--radius-sm); overflow:hidden; background:#fff; }
.aevh-search input{ flex:1; border:0; outline:0; padding:0 14px; height:44px; font-size:14.5px; min-width:0; color:var(--ink); background:transparent; }
.aevh-search button{ flex:none; width:50px; border:0; background:var(--orange); color:#fff; display:grid; place-items:center; }
.aevh-search button:hover{ background:var(--orange-600); }
.aevh-search .aevh-ic{ width:22px; height:22px; }
.aevh-actions{ flex:none; display:flex; align-items:center; gap:6px; }
.aevh-act{ display:flex; align-items:center; gap:8px; padding:8px 10px; border-radius:var(--radius-sm); color:var(--navy); font-weight:600; font-size:.9rem; }
.aevh-act:hover{ background:var(--soft); }
.aevh-act .aevh-ic{ width:24px; height:24px; color:var(--navy); }
.aevh-cart{ position:relative; }
.aevh-cart__n{ position:absolute; top:2px; left:26px; min-width:17px; height:17px; padding:0 4px; border-radius:9px; background:var(--orange); color:#fff; font-size:11px; font-weight:800; display:grid; place-items:center; }
.aevh-burger{ display:none; width:44px; height:44px; border:1px solid var(--line); border-radius:var(--radius-sm); background:#fff; flex-direction:column; gap:4px; align-items:center; justify-content:center; }
.aevh-burger span{ width:20px; height:2px; background:var(--navy); border-radius:2px; }

.aevh-nav{ background:#fff; border-bottom:1px solid var(--line); }
.aevh-nav__in{ display:flex; }
.aevh-menu{ display:flex; gap:2px; }
.aevh-menu>li>a{ display:block; padding:15px 18px; font-size:15px; font-weight:700; letter-spacing:-.005em; color:var(--navy); border-bottom:3px solid transparent; transition:color .15s ease,border-color .15s ease; }
.aevh-menu>li>a:hover,.aevh-menu>li>a:focus-visible,.aevh-menu>li>a[aria-current]{ color:var(--orange); border-bottom-color:var(--orange); }
.aevh-menu>li>a.is-accent{ color:var(--orange); }
.aevh-menu>li>a.is-accent:hover{ border-bottom-color:var(--orange); }

/* mobiele drawer */
.aevh-drawer{ position:fixed; inset:0; z-index:80; background:rgba(15,35,56,.5); opacity:0; transition:opacity .25s ease; }
.aevh-drawer.open{ opacity:1; }
.aevh-drawer__panel{ position:absolute; top:0; left:0; bottom:0; width:min(82vw,340px); background:#fff; padding:20px; transform:translateX(-102%); transition:transform .26s ease; overflow:auto; }
.aevh-drawer.open .aevh-drawer__panel{ transform:none; }
.aevh-drawer__x{ position:absolute; top:10px; right:12px; border:0; background:none; font-size:30px; line-height:1; color:var(--navy); }
.aevh-drawer__search{ display:flex; margin:34px 0 6px; border:1.5px solid var(--line); border-radius:var(--radius-sm); overflow:hidden; }
.aevh-drawer__search input{ flex:1; border:0; outline:0; height:46px; padding:0 14px; font-size:15px; min-width:0; color:var(--ink); background:transparent; }
.aevh-drawer__search button{ flex:none; width:50px; border:0; background:var(--orange); color:#fff; display:grid; place-items:center; }
.aevh-drawer__search .aevh-ic{ width:22px; height:22px; }

/* ============================ HERO ============================ */
.aev-hero{ position:relative; overflow:hidden; background:var(--navy); color:#fff; }
.aev-hero--ph{ background:linear-gradient(120deg,var(--navy),var(--navy-900)); }
.aev-hero__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:74% 30%; z-index:0; }
.aev-hero::after{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(15,35,56,.92),rgba(15,35,56,.62) 55%,rgba(15,35,56,.5)); }
.aev-hero__grid{ position:relative; z-index:2; display:grid; gap:24px; padding-top:40px; padding-bottom:44px; }
.aev-hero__copy{ display:flex; flex-direction:column; align-items:flex-start; gap:18px; min-width:0; max-width:100%; }
.aev-hero__copy>*{ margin:0; }
.aev-hero__title{ font-size:clamp(31px,7vw,52px); line-height:1.05; font-weight:800; letter-spacing:-.025em; color:#fff; margin-bottom:14px; }
.aev-hero__lead{ color:rgba(255,255,255,.9); font-size:1.05rem; line-height:1.5; max-width:44ch; margin-bottom:20px; }
.aev-herosearch{ display:flex; gap:0; background:#fff; border-radius:var(--radius-sm); padding:6px; max-width:600px; box-shadow:var(--shadow-md); }
.aev-herosearch input{ flex:1; border:0; outline:0; padding:0 14px; font-size:1rem; min-width:0; background:transparent; color:var(--ink); }
.aev-herosearch .aev-btn{ flex:none; min-height:46px; }
.aev-veel{ display:flex; flex-wrap:nowrap; gap:8px; align-items:center; font-size:.9rem; color:rgba(255,255,255,.85); overflow-x:auto; overflow-y:hidden; scrollbar-width:none; -ms-overflow-style:none; padding-bottom:2px; max-width:100%; }
.aev-veel::-webkit-scrollbar{ display:none; }
.aev-veel>span{ font-weight:700; flex:none; white-space:nowrap; }
.aev-veel a{ flex:none; white-space:nowrap; color:#fff; background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.42); padding:5px 12px; border-radius:999px; font-size:.8rem; font-weight:600; }
.aev-veel a:hover{ background:var(--orange); border-color:var(--orange); }
.aev-hero__usps{ display:grid; gap:16px; }
.aev-hero__usps li{ display:flex; gap:12px; align-items:center; }
.aev-hero__usps .aev-usp-ic{ color:var(--orange); width:30px; height:30px; }
.aev-hero__usps b{ display:block; font-size:1rem; }
.aev-hero__usps span{ font-size:.85rem; color:rgba(255,255,255,.78); }

/* ============================ CATEGORIEEN ============================ */
.aev-catgrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.aev-cat{ position:relative; display:flex; flex-direction:column; height:100%; border-radius:var(--radius); overflow:hidden; background:#fff; box-shadow:var(--shadow-sm); transition:transform .18s ease,box-shadow .18s ease; }
.aev-cat:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md); }
.aev-cat__bar{ margin-top:auto; }
.aev-cat__img{ position:relative; display:block; aspect-ratio:4/3; overflow:hidden; background:#dfe5ec; }
.aev-cat__img img{ width:100%; height:100%; object-fit:cover; }
.aev-cat__img::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:48%; background:linear-gradient(to top,rgba(15,35,56,.5),transparent); }
.aev-cat--ph .aev-cat__img{ background:repeating-linear-gradient(135deg,#e7ecf2,#e7ecf2 12px,#dfe5ec 12px,#dfe5ec 24px); }
.aev-cat__bar{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:17px 20px; background:var(--navy); color:#fff; }
.aev-cat__t b{ display:block; font-size:1.2rem; font-weight:700; line-height:1.2; }
.aev-cat__t em{ display:block; font-style:normal; font-size:.9rem; color:rgba(255,255,255,.74); margin-top:3px; }
.aev-cat__arw{ color:var(--orange); font-size:2rem; line-height:1; font-weight:700; }

/* ============================ MERKEN ============================ */
.aev-merken{ background:var(--soft); }
.aev-merkrow{ display:flex; flex-wrap:wrap; gap:16px 24px; align-items:center; justify-content:center; }
.aev-merkrow li{ color:#8a94a3; font-weight:800; font-size:1.2rem; letter-spacing:.01em; }
@media(min-width:720px){ .aev-merkrow{ justify-content:space-between; } }

/* ============================ MONTAGE ============================ */
.aev-montage{ background:#eaf1fa; }
.aev-montage__in{ display:grid; gap:22px; }
.aev-montage__copy h2{ font-size:clamp(22px,4vw,32px); font-weight:800; color:var(--navy); margin:.25rem 0 .6rem; line-height:1.14; }
.aev-montage__copy p{ color:var(--ink); max-width:52ch; margin-bottom:18px; }
.aev-montage__pts{ display:grid; gap:11px; }
.aev-montage__pts li{ position:relative; padding-left:30px; font-weight:600; }
.aev-montage__pts li::before{ content:""; position:absolute; left:0; top:2px; width:20px; height:20px; background:var(--orange);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat; }

/* ============================ SEIZOEN ============================ */
.aev-seizoen{ position:relative; background:var(--navy); background-size:cover; background-position:center; color:#fff; }
.aev-seizoen--ph{ background:linear-gradient(120deg,#22415f,var(--navy)); }
.aev-seizoen__copy{ max-width:52ch; }
.aev-seizoen__copy h2{ font-size:clamp(23px,4vw,34px); font-weight:800; margin:.25rem 0 .5rem; }
.aev-seizoen__copy p{ color:rgba(255,255,255,.9); margin-bottom:18px; }

/* ============================ HARDLOPERS ============================ */
.aev-prodgrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.aev-pcard{ height:100%; display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:16px; transition:box-shadow .18s ease,transform .18s ease; }
.aev-pcard:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md); }
.aev-pcard__img{ display:block; aspect-ratio:1/1; }
.aev-pcard__img img{ width:100%; height:100%; object-fit:contain; }
.aev-pcard__name{ display:block; margin:14px 0 8px; color:var(--ink); font-weight:600; font-size:1.02rem; line-height:1.35; min-height:2.7em; }
.aev-pcard__stock{ display:flex; align-items:center; gap:7px; font-size:.85rem; font-weight:700; color:var(--ok); margin-bottom:12px; }
.aev-pcard__stock::before{ content:""; width:9px; height:9px; border-radius:50%; background:var(--ok); }
.aev-pcard__stock.out{ color:#b26a00; } .aev-pcard__stock.out::before{ background:#b26a00; }
.aev-pcard__foot{ margin-top:auto; display:flex; align-items:flex-end; justify-content:space-between; gap:10px; }
.aev-pcard__price b{ display:block; font-size:1.4rem; font-weight:800; color:var(--navy); line-height:1.1; }
.aev-pcard__price span{ font-size:.8rem; color:var(--muted); }
.aev-pcard__cart{ flex:none; width:52px; height:52px; border-radius:var(--radius-sm); background:var(--orange); color:#fff; display:grid; place-items:center; }
.aev-pcard__cart:hover{ background:var(--orange-600); }
.aev-pcard__cart .aev-usp-ic{ width:24px; height:24px; }

/* ============================ TRUST ============================ */
.aev-trust{ background:var(--soft); border-top:1px solid var(--line); }
.aev-trustrow{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.aev-trust__i{ display:flex; gap:12px; align-items:center; color:var(--ink); }
.aev-trust__i .aev-usp-ic{ color:var(--navy); width:34px; height:34px; }
.aev-trust__wa .aev-usp-ic{ color:#25D366; }
.aev-trust__i b{ display:block; font-size:1.05rem; color:var(--navy); }
.aev-trust__i span{ font-size:.85rem; color:var(--muted); }

/* ============================ FOOTER ============================ */
.aevf{ background:var(--navy); color:rgba(255,255,255,.82); font-size:.98rem; }
.aevf__top{ display:grid; grid-template-columns:1fr; gap:30px; padding:44px 20px; }
.aevf__logo{ display:inline-block; background:#fff; padding:9px 13px; border-radius:10px; }
.aevf__logo img{ height:36px; width:auto; display:block; }
.aevf__brand p{ margin:12px 0 16px; max-width:40ch; line-height:1.6; }
.aevf__wa{ display:inline-flex; align-items:center; gap:8px; color:#fff; font-weight:700; }
.aevf__wa .aevh-ic{ color:#25D366; }
.aevf__col h3{ color:#fff; font-size:1.08rem; font-weight:800; margin-bottom:14px; }
.aevf__col ul{ display:grid; gap:9px; }
.aevf__col a:hover{ color:#fff; text-decoration:underline; }
.aevf__news p{ margin-bottom:12px; }
.aevf__form{ display:flex; gap:8px; margin-bottom:16px; }
.aevf__form input{ flex:1; min-width:0; height:46px; border:0; border-radius:var(--radius-sm); padding:0 14px; font-size:15px; }
.aevf__social{ display:flex; gap:10px; }
.aevf__social a{ width:38px; height:38px; border-radius:var(--radius-sm); background:rgba(255,255,255,.1); display:grid; place-items:center; color:#fff; }
.aevf__social a:hover{ background:var(--orange); }
.aevf__social .aevh-ic{ width:20px; height:20px; }
.aevf__bar{ border-top:1px solid rgba(255,255,255,.12); }
.aevf__bar__in{ display:flex; flex-direction:column; gap:10px; padding:16px 20px; font-size:.82rem; }
.aevf__bar a:hover{ color:#fff; text-decoration:underline; }
.aevf__pay{ display:flex; flex-wrap:wrap; gap:8px; }
.aevf__pay li{ background:#fff; color:var(--navy); font-weight:800; font-size:.68rem; letter-spacing:.02em; padding:5px 9px; border-radius:5px; }

/* ============================ RESPONSIVE ============================ */
@media(max-width:900px){
  /* Topbalk blijft zichtbaar op mobiel = 1 roterende regel (gecentreerd), toplinks weg. */
  .aevh-toplinks{ display:none; }
  .aevh-top__in{ justify-content:center; min-height:36px; }
  /* Mobiel: één roterende boodschap (gestapeld + fade). */
  .aevh-rotator{ position:relative; display:block; flex:1 1 100%; width:100%; height:20px; overflow:hidden; }
  .aevh-rot{ position:absolute; inset:0; justify-content:center; font-size:12px; opacity:0; transform:translateY(6px); transition:opacity .45s ease,transform .45s ease; }
  .aevh-rot.is-active{ opacity:1; transform:none; }

  .aevh-nav{ display:none; }
  .aevh-act__t{ display:none; }
  /* Eén strakke rij via grid (wrapt nooit): hamburger links · logo (midden) · account+winkelwagen rechts. */
  .aevh-main__in{ display:grid; grid-template-columns:auto 1fr auto; grid-template-areas:"burger logo actions" "search search search"; align-items:center; column-gap:8px; row-gap:8px; min-height:76px; padding-block:10px; }
  .aevh-burger{ display:flex; grid-area:burger; }
  .aevh-logo{ grid-area:logo; justify-self:center; margin:0; min-width:0; }
  .aevh-logo img{ height:34px; max-width:100%; }
  .aevh-actions{ grid-area:actions; }
  /* Zoekbalk = volle-breedte regel eronder op binnenpagina's; op de homepage is de hero de ingang. */
  .aevh-search{ grid-area:search; width:100%; max-width:none; margin:0 0 2px; }
  .aevh--home .aevh-search{ display:none; }
}
@media(min-width:720px){
  .aev-sec{ padding:56px 0; }
  .aev-catgrid{ grid-template-columns:repeat(3,1fr); gap:18px; }
  .aev-prodgrid{ grid-template-columns:repeat(3,1fr); gap:18px; }
  .aev-montage__in{ grid-template-columns:1.4fr 1fr; align-items:center; gap:36px; }
  .aev-montage__pts{ grid-template-columns:1fr 1fr; }
  .aev-trustrow{ grid-template-columns:repeat(4,1fr); }
  .aevf__top{ grid-template-columns:1.5fr 1fr 1fr 1.3fr; }
  .aevf__brand{ grid-column:1; }
  .aevf__bar__in{ flex-direction:row; align-items:center; justify-content:space-between; }
}
@media(min-width:1024px){
  .aev-hero{ min-height:360px; display:flex; align-items:center; }
  .aev-hero .aev-container{ width:100%; }
  .aev-hero__grid{ grid-template-columns:minmax(0,600px) 1fr; align-items:center; padding-top:40px; padding-bottom:44px; }
  .aev-hero__copy{ grid-column:1; }
  /* Subtiel donker paneel achter de USP's -> altijd leesbaar, los van het beeld eronder. */
  .aev-hero__usps{ background:rgba(11,26,43,.62); border:1px solid rgba(255,255,255,.12); border-radius:14px; padding:22px 24px; gap:20px; -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px); }
  .aev-catgrid{ grid-template-columns:repeat(3,1fr); gap:26px; }
  .aev-prodgrid{ grid-template-columns:repeat(3,1fr); gap:24px; }
  .aev-sec{ padding:66px 0; }
}

/* ============================ DEEL 1 - HOMEPAGE-FIXES ============================ */
/* Zwevende WhatsApp-knop rechtsonder */
.aev-wa{ position:fixed; right:18px; bottom:18px; z-index:65; width:56px; height:56px; border-radius:50%; background:#25D366; color:#fff; display:grid; place-items:center; box-shadow:0 8px 22px rgba(0,0,0,.28); }
.aev-wa .aevh-ic{ width:30px; height:30px; }
.aev-wa:hover{ background:#1ebe5b; }
/* Zwevende cookie-revisit-badge verbergen (consent-banner + voorkeuren blijven via footer-link) */
.cky-btn-revisit-wrapper,.cky-revisit-bottom-left,.cky-revisit-bottom-right{ display:none !important; }
/* "Veel gezocht"-chips: desktop op 1 regel */
/* Mobiele hero: rustig verticaal ritme, USP's als nette lijst (icoon + kop + subregel). */
@media(max-width:719px){
  .aev-hero__lead{ display:none; }
  .aev-hero__grid{ gap:20px; padding-top:26px; padding-bottom:30px; }
  .aev-hero__usps{ grid-template-columns:1fr; gap:14px; margin-top:2px; width:100%; }
  .aev-hero__usps li{ flex-direction:row; align-items:center; gap:12px; }
  .aev-hero__usps .aev-usp-ic{ width:26px; height:26px; flex:none; }
  .aev-hero__usps b{ font-size:.95rem; line-height:1.2; }
  .aev-hero__usps span{ display:block; font-size:.8rem; }
}

/* ====================================================================
   CATEGORIE (Deel B) - Elektranu-stijl: filters links, subcat-chips boven, productraster
   ==================================================================== */
.aevc{ padding:22px 0 52px; }
.aevc-crumbs{ display:flex; align-items:center; gap:8px; font-size:.82rem; color:var(--muted); margin-bottom:16px; overflow-x:auto; white-space:nowrap; -ms-overflow-style:none; scrollbar-width:none; }
.aevc-crumbs::-webkit-scrollbar{ display:none; }
.aevc-crumbs a{ color:var(--muted); }
.aevc-crumbs a:hover{ color:var(--navy); }
.aevc-crumbs .is-current{ color:var(--navy); font-weight:700; }
.aevc-head{ margin-bottom:14px; }
.aevc-head h1{ font-size:clamp(26px,4.4vw,38px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.08; }
.aevc-count{ color:var(--muted); font-size:.95rem; margin-top:4px; }

.aevc-subs{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:22px; }
.aevc-chip{ display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border:1.5px solid var(--line); border-radius:999px; background:#fff; color:var(--navy); font-weight:700; font-size:.9rem; transition:border-color .15s ease,background .15s ease; }
.aevc-chip:hover{ border-color:var(--navy); }
.aevc-chip em{ font-style:normal; font-weight:700; font-size:.76rem; color:var(--muted); background:var(--soft); border-radius:999px; padding:2px 8px; }

.aevc-layout{ display:block; }

/* Filters (mobiel = off-canvas, desktop = links vast) */
.aevc-side{ position:fixed; top:0; right:0; bottom:0; width:min(340px,88vw); z-index:70; background:#fff; padding:22px 20px 90px; overflow-y:auto; transform:translateX(100%); transition:transform .26s ease; box-shadow:-14px 0 34px rgba(19,34,59,.16); }
.aevc-side.open{ transform:none; }
.aevc-side__head{ display:flex; align-items:center; justify-content:space-between; font-weight:800; color:var(--navy); font-size:1.05rem; margin-bottom:14px; }
.aevc-clear{ font-size:.82rem; font-weight:700; color:var(--orange); }
.aevc-fgroup{ border-top:1px solid var(--line); padding:16px 0; }
.aevc-fgroup h3{ font-size:.95rem; font-weight:800; color:var(--navy); margin:0 0 10px; }
.aevc-fgroup ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.aevc-fitem{ display:flex; align-items:center; gap:10px; padding:7px 8px; border-radius:8px; color:var(--ink); font-size:.9rem; }
.aevc-fitem:hover{ background:var(--soft); }
.aevc-fbox{ flex:none; width:18px; height:18px; border:1.5px solid var(--line); border-radius:5px; background:#fff; display:grid; place-items:center; }
.aevc-fitem.is-active .aevc-fbox{ background:var(--orange); border-color:var(--orange); }
.aevc-fitem.is-active .aevc-fbox::after{ content:""; width:10px; height:6px; border-left:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(-45deg) translateY(-1px); }
.aevc-fname{ flex:1 1 auto; }
.aevc-fitem.is-active .aevc-fname{ font-weight:700; color:var(--navy); }
.aevc-fcnt{ flex:none; font-size:.76rem; color:var(--muted); }
.aevc-side__wa{ display:flex; align-items:center; gap:9px; margin-top:18px; padding:12px 14px; border:1.5px solid var(--line); border-radius:var(--radius-sm); color:var(--navy); font-weight:700; font-size:.88rem; }
.aevc-side__wa:hover{ border-color:var(--navy); }
.aevc-side__wa .aevh-ic{ color:#25D366; width:22px; height:22px; }

/* Toolbar + sortering */
.aevc-toolbar{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.aevc-toolbar__n{ color:var(--muted); font-size:.9rem; }
.aevc-sort{ display:flex; align-items:center; gap:8px; }
.aevc-sort label{ font-size:.85rem; color:var(--muted); }
.aevc-sort select{ border:1.5px solid var(--line); border-radius:var(--radius-sm); background:#fff; color:var(--navy); font-weight:600; font-size:.88rem; padding:9px 30px 9px 12px; appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235C6675' d='M1 1l5 5 5-5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; cursor:pointer; }

/* Raster + kaarten */
.aevc-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.aevc-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:16px; transition:box-shadow .18s ease,transform .18s ease; }
.aevc-card:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md); }
.aevc-card__img{ display:block; aspect-ratio:1/1; }
.aevc-card__img img{ width:100%; height:100%; object-fit:contain; }
.aevc-card__meta{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:12px 0 5px; }
.aevc-card__merk{ font-size:.72rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--orange); }
.aevc-card__sku{ font-size:.72rem; color:var(--muted); }
.aevc-card__name{ display:block; color:var(--ink); font-weight:600; font-size:.98rem; line-height:1.34; min-height:2.7em; margin-bottom:9px; }
.aevc-card__name:hover{ color:var(--navy); }
.aevc-card__stock{ display:flex; align-items:center; gap:7px; font-size:.83rem; font-weight:700; color:var(--ok); margin-bottom:12px; }
.aevc-dot{ width:9px; height:9px; border-radius:50%; background:var(--ok); }
.aevc-card__stock.out{ color:#b26a00; } .aevc-card__stock.out .aevc-dot{ background:#b26a00; }
.aevc-card__foot{ margin-top:auto; display:flex; align-items:flex-end; justify-content:space-between; gap:10px; }
.aevc-card__price b{ display:block; font-size:1.32rem; font-weight:800; color:var(--navy); line-height:1.1; }
.aevc-card__price span{ font-size:.78rem; color:var(--muted); }
.aevc-card__cart{ flex:none; width:48px; height:48px; border-radius:var(--radius-sm); background:#fff; border:1.5px solid var(--orange); color:var(--orange); display:grid; place-items:center; transition:background .15s ease,color .15s ease; }
.aevc-card__cart:hover{ background:var(--orange); color:#fff; }
.aevc-card__cart .aevh-ic{ width:22px; height:22px; }

/* Paginering */
.aevc-pager{ margin-top:26px; }
.aevc-pager .page-numbers{ list-style:none; display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; }
.aevc-pager .page-numbers li a,.aevc-pager .page-numbers li span{ display:grid; place-items:center; min-width:42px; height:42px; padding:0 12px; border:1.5px solid var(--line); border-radius:var(--radius-sm); color:var(--navy); font-weight:700; font-size:.9rem; }
.aevc-pager .page-numbers li a:hover{ border-color:var(--navy); }
.aevc-pager .page-numbers li span.current{ background:var(--navy); border-color:var(--navy); color:#fff; }

.aevc-empty{ text-align:center; padding:46px 16px; border:1px dashed var(--line); border-radius:var(--radius); color:var(--muted); }
.aevc-empty p{ margin-bottom:14px; }
.aevc-desc{ margin-top:34px; padding-top:24px; border-top:1px solid var(--line); color:var(--ink); line-height:1.7; max-width:70ch; }
.aevc-desc :is(h2,h3){ color:var(--navy); }

/* Mobiele filterknop */
.aevc-mfilter{ position:fixed; left:50%; bottom:18px; transform:translateX(-50%); z-index:65; display:inline-flex; align-items:center; gap:8px; padding:12px 20px; border:0; border-radius:999px; background:var(--navy); color:#fff; font-weight:700; font-size:.92rem; box-shadow:var(--shadow-md); }
.aevc-mfilter .aevh-ic{ width:18px; height:18px; }

@media(min-width:560px){ .aevc-grid{ grid-template-columns:repeat(3,1fr); gap:16px; } }
@media(min-width:900px){
  .aevc-layout{ display:grid; grid-template-columns:262px 1fr; gap:30px; align-items:start; }
  .aevc-side{ position:static; width:auto; transform:none; box-shadow:none; overflow:visible; border:1px solid var(--line); border-radius:var(--radius); padding:18px 18px 6px; }
  .aevc-side__head{ font-size:1rem; }
  .aevc-fgroup:first-of-type{ border-top:0; padding-top:2px; }
  .aevc-mfilter{ display:none; }
  .aevc-grid{ grid-template-columns:repeat(3,1fr); gap:18px; }
}
@media(min-width:1200px){ .aevc-grid{ grid-template-columns:repeat(3,1fr); gap:22px; } }

/* ====================================================================
   PRODUCT (Deel B) - eigen opmaak rond native WooCommerce add-to-cart
   ==================================================================== */
.aevp{ padding:22px 0 52px; }
.aevp-top{ display:grid; grid-template-columns:1fr; gap:26px; margin-top:14px; }

/* Galerij */
.aevp-gallery__main{ border:1px solid var(--line); border-radius:var(--radius); background:#fff; aspect-ratio:1/1; display:grid; place-items:center; overflow:hidden; padding:18px; }
.aevp-gallery__main img{ max-width:100%; max-height:100%; object-fit:contain; }
.aevp-gallery__thumbs{ display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.aevp-thumb{ width:70px; height:70px; border:1.5px solid var(--line); border-radius:var(--radius-sm); background:#fff; padding:6px; cursor:pointer; display:grid; place-items:center; }
.aevp-thumb.is-active{ border-color:var(--navy); }
.aevp-thumb img{ max-width:100%; max-height:100%; object-fit:contain; }

/* Samenvatting / koopblok */
.aevp-meta{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:8px; }
.aevp-merk{ font-size:.75rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--orange); }
.aevp-sku{ font-size:.78rem; color:var(--muted); }
.aevp-title{ font-size:clamp(22px,3.6vw,30px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.15; margin:0 0 14px; }
.aevp-price{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
.aevp-price .price,.aevp-price .woocommerce-Price-amount{ font-size:1.9rem; font-weight:800; color:var(--navy); }
.aevp-price del{ opacity:.5; font-size:1.1rem; font-weight:600; }
.aevp-price ins{ text-decoration:none; }
.aevp-price__btw{ font-size:.82rem; color:var(--muted); font-weight:600; }
.aevp-stock{ display:flex; align-items:center; gap:8px; font-size:.9rem; font-weight:700; color:var(--ok); margin-bottom:14px; }
.aevp-stock.out{ color:#b26a00; } .aevp-stock.out .aevc-dot{ background:#b26a00; }
.aevp-short{ color:var(--ink); line-height:1.6; font-size:.95rem; margin-bottom:18px; }
.aevp-short p{ margin:0 0 8px; }

/* Montage-optieblok */
.aev-montage{ border:1px solid var(--line); border-radius:var(--radius); padding:14px 16px 16px; margin:0 0 18px; }
.aev-montage legend{ font-weight:800; color:var(--navy); font-size:.98rem; padding:0 4px; }
.aev-montage__opt{ display:flex; align-items:center; gap:12px; padding:12px; border:1.5px solid var(--line); border-radius:var(--radius-sm); cursor:pointer; margin-top:10px; transition:border-color .15s ease,background .15s ease; }
.aev-montage__opt:hover{ border-color:var(--navy); }
.aev-montage__opt input{ accent-color:var(--orange); width:18px; height:18px; flex:none; }
.aev-montage__opt:has(input:checked){ border-color:var(--orange); background:rgba(232,96,10,.05); }
.aev-montage__box{ flex:1 1 auto; display:flex; flex-direction:column; }
.aev-montage__box b{ font-size:.95rem; color:var(--navy); }
.aev-montage__box em{ font-style:normal; font-size:.8rem; color:var(--muted); }
.aev-montage__pr{ flex:none; font-weight:800; color:var(--navy); font-size:.95rem; white-space:nowrap; }

/* Native WooCommerce variaties + knop */
.aevp-buy .variations{ width:100%; border-collapse:collapse; margin:0 0 12px; }
.aevp-buy .variations th,.aevp-buy .variations td{ display:block; text-align:left; padding:0; }
.aevp-buy .variations tr{ display:block; margin-bottom:12px; }
.aevp-buy .variations td.label label{ font-weight:700; color:var(--navy); font-size:.9rem; margin-bottom:6px; display:block; }
.aevp-buy .variations select{ width:100%; border:1.5px solid var(--line); border-radius:var(--radius-sm); background:#fff; color:var(--navy); font-weight:600; font-size:.92rem; padding:11px 34px 11px 12px; appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235C6675' d='M1 1l5 5 5-5'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; cursor:pointer; }
.aevp-buy .reset_variations{ display:inline-block; font-size:.82rem; color:var(--orange); font-weight:700; margin-bottom:8px; }
.aevp-buy .woocommerce-variation-price .price,.aevp-buy .woocommerce-variation-price .woocommerce-Price-amount{ font-size:1.7rem; font-weight:800; color:var(--navy); }
.aevp-buy .woocommerce-variation-availability .stock{ color:var(--ok); font-weight:700; font-size:.9rem; margin:6px 0; }
.aevp-buy .woocommerce-variation-availability .out-of-stock{ color:#b26a00; }
.aevp-buy .single_variation{ margin-bottom:10px; }
.aevp-buy .quantity{ display:inline-flex; margin:0 10px 0 0; vertical-align:middle; }
.aevp-buy .quantity input.qty{ width:70px; height:52px; border:1.5px solid var(--line); border-radius:var(--radius-sm); text-align:center; font-weight:700; font-size:1rem; color:var(--navy); }
.aevp-buy form.cart{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:0; }
.aevp-buy .variations_form.cart{ display:block; }
.aevp-buy .woocommerce-variation-add-to-cart{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.aevp-buy button.single_add_to_cart_button,.aevp-buy .single_add_to_cart_button.button{ flex:1 1 auto; min-height:52px; padding:0 26px; background:var(--orange); color:#fff; border:0; border-radius:var(--radius-sm); font-weight:800; font-size:1.02rem; cursor:pointer; transition:background .15s ease; }
.aevp-buy .single_add_to_cart_button:hover{ background:var(--orange-600); }
.aevp-buy .single_add_to_cart_button.disabled,.aevp-buy .single_add_to_cart_button:disabled{ opacity:.45; cursor:not-allowed; }
.aevp-buy .stock.out-of-stock{ color:#b26a00; font-weight:700; }

.aevp-wa{ display:inline-flex; align-items:center; gap:9px; margin-top:18px; padding:13px 20px; border:1.5px solid var(--line); border-radius:var(--radius-sm); color:var(--navy); font-weight:700; font-size:.92rem; }
.aevp-wa:hover{ border-color:var(--navy); }
.aevp-wa .aevh-ic{ color:#25D366; width:22px; height:22px; }
/* USP's als één strakke icoontjes-rij (Elektranu-stijl) */
.aevp-usps{ list-style:none; margin:18px 0 0; padding:16px 0 0; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:10px 20px; }
.aevp-usps li{ display:flex; align-items:center; gap:8px; font-size:.85rem; color:var(--ink); font-weight:600; white-space:nowrap; }
.aevp-usps .aevh-ic{ color:var(--orange); width:20px; height:20px; flex:none; }

/* Omschrijving/specificaties als accordion (standaard ingeklapt) */
.aevp-acc{ margin-top:36px; border-top:1px solid var(--line); }
.aevp-acc__item{ border-bottom:1px solid var(--line); }
.aevp-acc__item>summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 4px; font-size:1.05rem; font-weight:800; color:var(--navy); }
.aevp-acc__item>summary::-webkit-details-marker{ display:none; }
.aevp-acc__chev{ font-size:1.7rem; line-height:1; color:var(--muted); transition:transform .2s ease; }
.aevp-acc__item[open]>summary .aevp-acc__chev{ transform:rotate(90deg); }
.aevp-acc__body{ padding:2px 4px 24px; color:var(--ink); line-height:1.7; }
.aevp-acc__body table,.woocommerce-product-attributes{ width:100%; border-collapse:collapse; margin:0; max-width:640px; }
.woocommerce-product-attributes th,.woocommerce-product-attributes td{ text-align:left; padding:10px 14px; border:1px solid var(--line); font-size:.92rem; }
.woocommerce-product-attributes th{ background:var(--soft); color:var(--navy); font-weight:700; width:38%; }
.woocommerce-product-attributes td p{ margin:0; }

/* Vaak samen besteld */
.aevp-cross{ margin-top:44px; }
.aevp-cross h2{ font-size:clamp(20px,3vw,26px); font-weight:800; color:var(--navy); margin:0 0 16px; letter-spacing:-.02em; }
.aevp-crossgrid{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.aevp-ccard{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:14px; }
.aevp-ccard:hover{ box-shadow:var(--shadow-md); }
.aevp-ccard__img{ display:block; aspect-ratio:1/1; }
.aevp-ccard__img img{ width:100%; height:100%; object-fit:contain; }
.aevp-ccard__name{ display:block; color:var(--ink); font-weight:600; font-size:.9rem; line-height:1.35; margin:10px 0 6px; min-height:2.6em; }
.aevp-ccard__name:hover{ color:var(--navy); }
.aevp-ccard__price b{ font-size:1.05rem; font-weight:800; color:var(--navy); }

@media(min-width:560px){ .aevp-crossgrid{ grid-template-columns:repeat(4,1fr); } }
@media(min-width:900px){
  .aevp-top{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:start; }
  .aevp-gallery{ position:sticky; top:16px; }
}
@media(min-width:1024px){
  .aevp-top{ grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:48px; }
}

/* ====================================================================
   GENERIEKE PAGINA + WINKELWAGEN + CHECKOUT (Deel B)
   ==================================================================== */
.aevpg{ padding:26px 0 56px; }
.aevpg-title{ font-size:clamp(24px,4vw,34px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.1; margin:0 0 20px; }
.aevpg-content{ color:var(--ink); line-height:1.65; }
.aevpg-content > p{ margin:0 0 14px; }

/* WooCommerce meldingen */
.aevpg-content .woocommerce-message,.aevpg-content .woocommerce-info,.aevpg-content .woocommerce-error,.aevpg-content .woocommerce-notice{ list-style:none; border:1px solid var(--line); border-left:4px solid var(--navy); background:var(--soft); border-radius:var(--radius-sm); padding:14px 16px; margin:0 0 18px; font-size:.92rem; }
.aevpg-content .woocommerce-message{ border-left-color:var(--ok); }
.aevpg-content .woocommerce-error{ border-left-color:#c0392b; }
.aevpg-content .woocommerce-message .button,.aevpg-content .woocommerce-info .button{ float:right; }

/* --- Winkelwagen-tabel --- */
.woocommerce-cart-form .shop_table{ width:100%; border-collapse:collapse; margin-bottom:22px; }
.woocommerce-cart-form .shop_table th{ text-align:left; font-size:.8rem; letter-spacing:.03em; text-transform:uppercase; color:var(--muted); padding:0 12px 12px; border-bottom:2px solid var(--line); }
.woocommerce-cart-form .cart_item td{ padding:16px 12px; border-bottom:1px solid var(--line); vertical-align:middle; }
.woocommerce-cart-form td.product-thumbnail img{ width:70px; height:70px; object-fit:contain; }
.woocommerce-cart-form td.product-name a{ color:var(--navy); font-weight:700; }
.woocommerce-cart-form td.product-name dl.variation{ margin:6px 0 0; font-size:.82rem; color:var(--muted); }
.woocommerce-cart-form td.product-name dl.variation dt{ font-weight:700; float:left; margin-right:5px; }
.woocommerce-cart-form .product-price,.woocommerce-cart-form .product-subtotal{ font-weight:700; color:var(--navy); }
.woocommerce-cart-form td.product-remove a.remove{ display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--soft); color:#c0392b!important; font-size:18px; line-height:1; text-decoration:none; }
.woocommerce-cart-form td.product-remove a.remove:hover{ background:#c0392b; color:#fff!important; }
.woocommerce-cart-form .quantity{ display:inline-flex; }
.woocommerce-cart-form .quantity input.qty{ width:66px; height:46px; border:1.5px solid var(--line); border-radius:var(--radius-sm); text-align:center; font-weight:700; color:var(--navy); }
.woocommerce-cart-form .coupon{ display:flex; gap:8px; align-items:center; }
.woocommerce-cart-form .coupon input{ height:48px; border:1.5px solid var(--line); border-radius:var(--radius-sm); padding:0 14px; min-width:0; flex:1 1 auto; max-width:240px; }
.woocommerce-cart-form .actions{ display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; align-items:center; padding-top:6px; }

/* Knoppen (WooCommerce) op merk */
.aevpg-content .button,.aevpg-content button.button,.wc-proceed-to-checkout .checkout-button,.woocommerce-cart-form .button,.woocommerce-checkout #place_order{ display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border:0; border-radius:var(--radius-sm); background:var(--navy); color:#fff; font-weight:800; font-size:.95rem; cursor:pointer; transition:background .15s ease; text-decoration:none; }
.aevpg-content .button:hover{ background:var(--navy-800); }
.wc-proceed-to-checkout .checkout-button,.woocommerce-checkout #place_order{ background:var(--orange); width:100%; min-height:54px; font-size:1.05rem; }
.wc-proceed-to-checkout .checkout-button:hover,.woocommerce-checkout #place_order:hover{ background:var(--orange-600); }
.aevpg-content .button[disabled],.aevpg-content .button:disabled{ opacity:.5; cursor:not-allowed; }

/* --- Cart totals / collaterals --- */
.cart-collaterals{ display:grid; gap:20px; }
.cart_totals h2{ font-size:1.2rem; font-weight:800; color:var(--navy); margin:0 0 12px; }
.cart_totals table{ width:100%; border-collapse:collapse; }
.cart_totals th,.cart_totals td{ padding:12px 0; border-bottom:1px solid var(--line); text-align:left; font-size:.95rem; }
.cart_totals th{ color:var(--muted); font-weight:600; width:42%; }
.cart_totals .order-total th,.cart_totals .order-total td{ font-size:1.15rem; font-weight:800; color:var(--navy); border-bottom:0; }
.cart_totals .woocommerce-shipping-methods{ list-style:none; margin:0; padding:0; }
.wc-proceed-to-checkout{ margin-top:16px; }

/* --- Checkout --- */
.woocommerce-checkout .col2-set,.woocommerce-checkout #customer_details{ display:grid; gap:22px; }
.woocommerce-checkout h3{ font-size:1.15rem; font-weight:800; color:var(--navy); margin:0 0 14px; padding-bottom:8px; border-bottom:2px solid var(--line); }
.woocommerce-checkout .form-row{ display:flex; flex-direction:column; margin:0 0 14px; }
.woocommerce-checkout .form-row label{ font-size:.85rem; font-weight:700; color:var(--navy); margin-bottom:6px; }
.woocommerce-checkout .form-row .required{ color:var(--orange); text-decoration:none; }
.woocommerce-checkout input.input-text,.woocommerce-checkout textarea,.woocommerce-checkout select,.woocommerce-checkout .select2-selection{ width:100%; min-height:48px; border:1.5px solid var(--line)!important; border-radius:var(--radius-sm); padding:11px 13px; font-size:.95rem; color:var(--ink); background:#fff; font-family:inherit; }
.woocommerce-checkout input.input-text:focus,.woocommerce-checkout textarea:focus,.woocommerce-checkout select:focus{ outline:0; border-color:var(--navy)!important; box-shadow:0 0 0 3px rgba(27,58,92,.12); }
.woocommerce-checkout .select2-container .select2-selection__rendered{ line-height:26px; }
.woocommerce-checkout #order_review_heading{ font-size:1.15rem; font-weight:800; color:var(--navy); margin:22px 0 12px; }
.woocommerce-checkout #order_review{ border:1px solid var(--line); border-radius:var(--radius); padding:18px; background:#fff; }
.woocommerce-checkout #order_review .shop_table{ width:100%; border-collapse:collapse; margin-bottom:16px; }
.woocommerce-checkout #order_review .shop_table th,.woocommerce-checkout #order_review .shop_table td{ padding:11px 0; border-bottom:1px solid var(--line); text-align:left; font-size:.92rem; }
.woocommerce-checkout #order_review .cart-subtotal th,.woocommerce-checkout #order_review .order-total th{ color:var(--muted); font-weight:600; }
.woocommerce-checkout #order_review .order-total th,.woocommerce-checkout #order_review .order-total td{ font-size:1.12rem; font-weight:800; color:var(--navy); }
.woocommerce-checkout #order_review .product-name .variation,.woocommerce-checkout #order_review dl.variation{ font-size:.8rem; color:var(--muted); margin:5px 0 0; }
.woocommerce-checkout #payment{ margin-top:8px; }
.woocommerce-checkout #payment ul.payment_methods{ list-style:none; margin:0 0 14px; padding:0; display:flex; flex-direction:column; gap:8px; }
.woocommerce-checkout #payment ul.payment_methods li{ border:1.5px solid var(--line); border-radius:var(--radius-sm); padding:12px 14px; }
.woocommerce-checkout #payment ul.payment_methods li label{ font-weight:700; color:var(--navy); }
.woocommerce-checkout #payment ul.payment_methods input[type=radio]{ accent-color:var(--orange); margin-right:8px; }
.woocommerce-checkout #payment .payment_box{ background:var(--soft); border-radius:var(--radius-sm); padding:12px 14px; margin-top:10px; font-size:.88rem; color:var(--muted); }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text{ font-size:.82rem; color:var(--muted); }
.woocommerce-form-coupon-toggle{ margin-bottom:16px; }

@media(min-width:860px){
  .woocommerce-checkout form.checkout{ display:grid; grid-template-columns:1.2fr 1fr; gap:40px; align-items:start; }
  .woocommerce-checkout #customer_details{ grid-column:1; }
  .woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{ grid-column:2; }
  .woocommerce-checkout #order_review_heading{ margin-top:0; }
  .woocommerce-checkout .col2-set{ grid-template-columns:1fr 1fr; }
  .cart-collaterals{ grid-template-columns:1fr 1fr; }
  .cart_totals{ grid-column:2; }
}

/* Aanbiedingen-badge + oude prijs (homepage-actiesectie) */
.aev-acties .aev-pcard{ position:relative; }
.aev-pcard__badge{ position:absolute; top:12px; left:12px; z-index:2; background:var(--orange); color:#fff; font-size:.72rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; padding:4px 9px; border-radius:999px; }
.aev-pcard__price del{ display:block; font-size:.82rem; color:var(--muted); font-weight:600; text-decoration:line-through; }

/* Shop/zoeken: geen filterzijbalk -> raster mag breder */
@media(min-width:1024px){ .aevc--plat .aevc-grid{ grid-template-columns:repeat(4,1fr); } }
.aevc-empty__tip{ font-size:.92rem; margin-top:8px; color:var(--muted); }
.aevc-empty__tip a{ color:var(--orange); font-weight:700; }

/* ====================================================================
   PROSE + KENNISBANK + ARTIKEL + CONTACT (Deel B)
   ==================================================================== */
/* Leeskolom (statisch + artikel + kennisbank-intro) */
.aev-prose{ max-width:72ch; color:var(--ink); font-size:1.02rem; line-height:1.75; }
.aev-prose > h1{ font-size:clamp(26px,4vw,36px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.12; margin:0 0 18px; }
.aev-prose h2{ font-size:1.5rem; font-weight:800; color:var(--navy); letter-spacing:-.01em; line-height:1.25; margin:2em 0 .5em; scroll-margin-top:20px; }
.aev-prose h3{ font-size:1.2rem; font-weight:700; color:var(--navy); margin:1.6em 0 .4em; }
.aev-prose p{ margin:0 0 1.05em; }
.aev-prose a{ color:var(--orange); font-weight:600; text-decoration:underline; text-underline-offset:2px; }
.aev-prose a:hover{ color:var(--orange-600); }
.aev-prose ul,.aev-prose ol{ margin:0 0 1.1em; padding-left:1.3em; }
.aev-prose li{ margin:.3em 0; }
.aev-prose ul li{ list-style:none; position:relative; padding-left:1.1em; }
.aev-prose ul li::before{ content:""; position:absolute; left:0; top:.62em; width:7px; height:7px; border-radius:50%; background:var(--orange); }
.aev-prose blockquote{ margin:1.4em 0; padding:14px 18px; border-left:4px solid var(--orange); background:var(--soft); border-radius:0 8px 8px 0; color:var(--navy); }
.aev-prose img{ border-radius:var(--radius); height:auto; margin:1em 0; }
.aev-prose table{ width:100%; border-collapse:collapse; margin:1.2em 0; font-size:.95rem; }
.aev-prose th,.aev-prose td{ text-align:left; padding:10px 12px; border:1px solid var(--line); }
.aev-prose th{ background:var(--soft); color:var(--navy); font-weight:700; }
.aev-prose > *:first-child{ margin-top:0; }

/* Kennisbank-overzicht */
.aevkb{ padding:24px 0 56px; }
.aevkb-head{ margin:10px 0 26px; max-width:64ch; }
.aevkb-head h1{ font-size:clamp(28px,4.6vw,40px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.08; margin:.2em 0 .3em; }
.aevkb-lead{ color:var(--muted); font-size:1.05rem; line-height:1.6; }
.aevkb-grid{ display:grid; grid-template-columns:1fr; gap:18px; }
.aevkb-card{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; transition:box-shadow .18s ease,transform .18s ease; }
.aevkb-card:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md); }
.aevkb-card__img{ display:block; aspect-ratio:16/10; background:var(--soft); overflow:hidden; }
.aevkb-card__img img{ width:100%; height:100%; object-fit:cover; }
.aevkb-card__img--ph{ display:grid; place-items:center; }
.aevkb-card__img--ph .aevh-ic{ width:38px; height:38px; color:#c3ccd8; }
.aevkb-card__body{ display:flex; flex-direction:column; gap:8px; padding:18px; flex:1 1 auto; }
.aevkb-card__t{ font-size:1.12rem; font-weight:800; color:var(--navy); line-height:1.25; }
.aevkb-card__x{ font-size:.92rem; color:var(--muted); line-height:1.55; flex:1 1 auto; }
.aevkb-card__more{ font-size:.9rem; font-weight:700; color:var(--orange); }
.aevkb-intro{ margin-top:40px; }
@media(min-width:600px){ .aevkb-grid{ grid-template-columns:repeat(2,1fr); gap:20px; } }
@media(min-width:960px){ .aevkb-grid{ grid-template-columns:repeat(3,1fr); gap:22px; } }

/* Artikel */
.aevart{ padding:24px 0 56px; }
.aevart-head{ max-width:72ch; margin:8px 0 24px; }
.aevart-head h1{ font-size:clamp(28px,4.6vw,42px); font-weight:800; letter-spacing:-.02em; color:var(--navy); line-height:1.08; margin:.2em 0 .35em; text-wrap:balance; }
.aevart-meta{ color:var(--muted); font-size:.88rem; }
.aevart-body{ display:block; }
.aevart-toc{ background:var(--soft); border:1px solid var(--line); border-radius:var(--radius); padding:16px 18px; margin:0 0 22px; }
.aevart-toc__t{ font-size:.8rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--navy); margin-bottom:10px; }
.aevart-toc ol{ margin:0; padding:0 0 0 1.1em; display:flex; flex-direction:column; gap:6px; }
.aevart-toc li{ font-size:.92rem; }
.aevart-toc a{ color:var(--navy); text-decoration:none; }
.aevart-toc a:hover{ color:var(--orange); }
/* Product-CTA onderaan het artikel */
.aevart-cta{ margin:34px 0 0; background:var(--navy); color:#fff; border-radius:var(--radius); padding:26px; }
.aevart-cta__in{ display:flex; flex-direction:column; gap:16px; }
.aevart-cta h2{ color:#fff; font-size:1.35rem; font-weight:800; margin:0 0 6px; }
.aevart-cta p{ color:rgba(255,255,255,.85); margin:0; font-size:.98rem; line-height:1.55; }
.aevart-cta__btns{ display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.aevart-cta__wa{ display:inline-flex; align-items:center; gap:8px; color:#fff; font-weight:700; font-size:.92rem; }
.aevart-cta__wa .aevh-ic{ color:#25D366; width:22px; height:22px; }
.aevart-rel{ margin-top:44px; }
.aevart-rel h2{ font-size:clamp(20px,3vw,26px); font-weight:800; color:var(--navy); margin:0 0 16px; letter-spacing:-.02em; }
.aevart-relgrid{ display:grid; grid-template-columns:1fr; gap:16px; }
.aevart-relcard{ display:flex; flex-direction:column; gap:8px; background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:18px; transition:box-shadow .18s ease,transform .18s ease; }
.aevart-relcard:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md); }
.aevart-relcard__t{ font-size:1.05rem; font-weight:800; color:var(--navy); line-height:1.3; }
.aevart-relcard__x{ font-size:.9rem; color:var(--muted); line-height:1.5; }
.aevart-relcard__more{ font-size:.88rem; font-weight:700; color:var(--orange); }
@media(min-width:640px){ .aevart-relgrid{ grid-template-columns:repeat(3,1fr); } .aevart-cta__in{ flex-direction:row; align-items:center; justify-content:space-between; } .aevart-cta__btns{ flex:none; } }
@media(min-width:900px){
  .aevart-body{ display:grid; grid-template-columns:240px minmax(0,1fr); gap:44px; align-items:start; }
  .aevart-toc{ position:sticky; top:16px; margin:0; }
}

/* Contact */
.aevct{ padding:24px 0 56px; }
.aevct-head{ max-width:60ch; margin:8px 0 26px; }
.aevct-head h1{ font-size:clamp(28px,4.6vw,40px); font-weight:800; letter-spacing:-.02em; color:var(--navy); margin:.2em 0 .3em; }
.aevct-lead{ color:var(--muted); font-size:1.05rem; line-height:1.6; }
.aevct-layout{ display:grid; grid-template-columns:1fr; gap:28px; }
.aevct-wa{ display:flex; align-items:center; gap:16px; background:linear-gradient(90deg,#128C4B,#25D366); color:#fff; border-radius:var(--radius); padding:20px 22px; box-shadow:var(--shadow-sm); }
.aevct-wa__ic{ flex:none; width:52px; height:52px; border-radius:50%; background:rgba(255,255,255,.18); display:grid; place-items:center; }
.aevct-wa__ic .aevh-ic{ width:28px; height:28px; color:#fff; }
.aevct-wa__body{ flex:1 1 auto; display:flex; flex-direction:column; gap:3px; }
.aevct-wa__body b{ font-size:1.1rem; }
.aevct-wa__body span{ font-size:.88rem; color:rgba(255,255,255,.9); }
.aevct-wa__cta{ flex:none; font-weight:700; font-size:.9rem; white-space:nowrap; }
.aevct-details{ list-style:none; margin:16px 0 0; padding:0; display:grid; gap:2px; }
.aevct-details li{ display:flex; align-items:flex-start; gap:14px; padding:14px 4px; border-bottom:1px solid var(--line); }
.aevct-details li:last-child{ border-bottom:0; }
.aevct-details .aevh-ic{ flex:none; width:24px; height:24px; color:var(--orange); margin-top:2px; }
.aevct-details b{ display:block; color:var(--navy); font-size:.92rem; margin-bottom:2px; }
.aevct-details a,.aevct-details span{ color:var(--ink); font-size:.95rem; }
.aevct-details a{ color:var(--navy); font-weight:600; }
.aevct-details a:hover{ color:var(--orange); }
.aevct-form{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:24px; }
.aevct-form h2{ font-size:1.25rem; font-weight:800; color:var(--navy); margin:0 0 4px; }
.aevct-form > p{ color:var(--muted); font-size:.95rem; margin:0 0 16px; }
.aevct-form .wpcf7-form-control-wrap{ display:block; }
.aevct-form input.wpcf7-form-control:not([type=submit]),.aevct-form textarea.wpcf7-form-control,.aevct-form select.wpcf7-form-control{ width:100%; min-height:48px; border:1.5px solid var(--line); border-radius:var(--radius-sm); padding:11px 13px; font-size:.95rem; font-family:inherit; color:var(--ink); margin-bottom:12px; box-sizing:border-box; }
.aevct-form textarea.wpcf7-form-control{ min-height:130px; resize:vertical; }
.aevct-form input.wpcf7-form-control:focus,.aevct-form textarea.wpcf7-form-control:focus{ outline:0; border-color:var(--navy); box-shadow:0 0 0 3px rgba(27,58,92,.12); }
.aevct-form label{ font-size:.85rem; font-weight:700; color:var(--navy); display:block; margin-bottom:5px; }
.aevct-form input.wpcf7-submit{ min-height:52px; padding:0 28px; background:var(--orange); color:#fff; border:0; border-radius:var(--radius-sm); font-weight:800; font-size:1rem; cursor:pointer; }
.aevct-form input.wpcf7-submit:hover{ background:var(--orange-600); }
.aevct-form .wpcf7-response-output{ border-radius:var(--radius-sm); margin:12px 0 0!important; padding:12px 14px!important; font-size:.9rem; }
@media(min-width:860px){ .aevct-layout{ grid-template-columns:1fr 1.1fr; gap:40px; align-items:start; } }

/* h4 als sectiekop in artikelen (oude content gebruikt h4 i.p.v. h2) */
.aev-prose h4{ font-size:1.12rem; font-weight:800; color:var(--navy); margin:1.6em 0 .4em; scroll-margin-top:20px; }

/* ====================================================================
   MIJN ACCOUNT (Deel B / mobiele QA) - Elektranu-stijl
   ==================================================================== */
.aevacc{ padding:24px 0 56px; }
.aevacc-head{ max-width:60ch; margin:8px 0 24px; }
.aevacc-head h1{ font-size:clamp(26px,4.4vw,38px); font-weight:800; letter-spacing:-.02em; color:var(--navy); margin:.2em 0 .3em; }
.aevacc-lead{ color:var(--muted); font-size:1.02rem; line-height:1.6; }

/* Velden + knoppen (login/registratie/adres/gegevens) */
.aevacc input[type=text],.aevacc input[type=email],.aevacc input[type=password],.aevacc input[type=tel],.aevacc textarea,.aevacc select{
  width:100%; min-height:48px; border:1.5px solid var(--line); border-radius:var(--radius-sm); padding:11px 13px; font-size:.95rem; font-family:inherit; color:var(--ink); background:#fff; box-sizing:border-box; }
.aevacc input:focus,.aevacc textarea:focus,.aevacc select:focus{ outline:0; border-color:var(--navy); box-shadow:0 0 0 3px rgba(27,58,92,.12); }
.aevacc .woocommerce-form-row,.aevacc .form-row,.aevacc p.form-row{ display:flex; flex-direction:column; margin:0 0 14px; }
.aevacc label{ font-size:.85rem; font-weight:700; color:var(--navy); margin-bottom:6px; }
.aevacc .woocommerce-form-login__rememberme,.aevacc label.woocommerce-form__label-for-checkbox{ flex-direction:row; align-items:center; gap:8px; font-weight:600; color:var(--ink); }
.aevacc .woocommerce-form-login__rememberme input,.aevacc label.woocommerce-form__label-for-checkbox input{ width:auto; min-height:0; }
.aevacc .button,.aevacc button[type=submit],.aevacc .woocommerce-Button{ display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 26px; border:0; border-radius:var(--radius-sm); background:var(--orange); color:#fff; font-weight:800; font-size:.98rem; cursor:pointer; transition:background .15s ease; text-decoration:none; }
.aevacc .button:hover,.aevacc button[type=submit]:hover,.aevacc .woocommerce-Button:hover{ background:var(--orange-600); }
.aevacc .woocommerce-LostPassword a{ color:var(--orange); font-weight:600; font-size:.88rem; }
.aevacc .required{ color:var(--orange); text-decoration:none; }
.aevacc em{ font-style:normal; font-size:.82rem; color:var(--muted); }

/* Uitgelogd: login + registratie als twee kaarten */
.aevacc--out #customer_login.u-columns{ display:grid; grid-template-columns:1fr; gap:22px; }
.aevacc--out .u-column1,.aevacc--out .u-column2{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:24px; }
.aevacc--out .u-column1 h2,.aevacc--out .u-column2 h2,.aevacc h2{ font-size:1.25rem; font-weight:800; color:var(--navy); margin:0 0 16px; }
.aevacc--out .woocommerce-privacy-policy-text{ font-size:.82rem; color:var(--muted); }
.aevacc--out .woocommerce-privacy-policy-text p{ margin:10px 0 0; }

/* Meldingen */
.aevacc .woocommerce-error,.aevacc .woocommerce-message,.aevacc .woocommerce-info{ list-style:none; border:1px solid var(--line); border-left:4px solid var(--navy); background:var(--soft); border-radius:var(--radius-sm); padding:13px 16px; margin:0 0 18px; font-size:.92rem; }
.aevacc .woocommerce-error{ border-left-color:#c0392b; }
.aevacc .woocommerce-message{ border-left-color:var(--ok); }

/* Ingelogd: navigatie + content */
.aevacc--in .woocommerce{ display:grid; grid-template-columns:1fr; gap:24px; }
.aevacc-MyAccount-navigation,.woocommerce-MyAccount-navigation{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:8px; }
.woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:2px; }
.woocommerce-MyAccount-navigation-link a{ display:block; padding:12px 14px; border-radius:var(--radius-sm); color:var(--navy); font-weight:600; font-size:.95rem; }
.woocommerce-MyAccount-navigation-link a:hover{ background:var(--soft); }
.woocommerce-MyAccount-navigation-link.is-active a{ background:var(--navy); color:#fff; }
.woocommerce-MyAccount-content{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:24px; color:var(--ink); line-height:1.65; }
.woocommerce-MyAccount-content p{ margin:0 0 12px; }
.woocommerce-MyAccount-content a{ color:var(--orange); font-weight:600; }
.woocommerce-MyAccount-content mark{ background:var(--soft); color:var(--navy); padding:0 4px; }

/* Bestellingen-tabel + adressen */
.woocommerce-orders-table,.woocommerce-table--order-details,.shop_table{ width:100%; border-collapse:collapse; margin:0 0 16px; font-size:.9rem; }
.woocommerce-orders-table th,.woocommerce-orders-table td,.shop_table th,.shop_table td{ text-align:left; padding:11px 12px; border-bottom:1px solid var(--line); }
.woocommerce-orders-table th{ color:var(--muted); font-weight:700; font-size:.78rem; letter-spacing:.03em; text-transform:uppercase; }
.woocommerce-orders-table .button,.woocommerce-orders-table__cell .button{ min-height:38px; padding:0 14px; font-size:.85rem; }
.woocommerce-Addresses.u-columns,.woocommerce-Addresses{ display:grid; grid-template-columns:1fr; gap:18px; margin-top:8px; }
.woocommerce-Address{ background:var(--soft); border:1px solid var(--line); border-radius:var(--radius); padding:18px; }
.woocommerce-Address address{ font-style:normal; line-height:1.6; color:var(--ink); }
.woocommerce-Address-title{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.woocommerce-Address-title h3{ font-size:1.05rem; color:var(--navy); font-weight:800; margin:0 0 8px; }
.woocommerce-Address-title a{ font-size:.85rem; font-weight:700; color:var(--orange); }

@media(min-width:760px){
  .aevacc--out #customer_login.u-columns{ grid-template-columns:1fr 1fr; }
  .aevacc--in .woocommerce{ grid-template-columns:230px minmax(0,1fr); align-items:start; }
  .woocommerce-Addresses.u-columns,.woocommerce-Addresses{ grid-template-columns:1fr 1fr; }
}

/* Kaart-cart ajax-status */
.aevc-card__cart.loading{ opacity:.6; pointer-events:none; }
.aevc-card__cart.added{ background:var(--ok); border-color:var(--ok); color:#fff; }
.aevc-card__foot .added_to_cart{ display:none !important; }
.aevc-card__cart--opts{ } /* variabel: opent de productpagina om een uitvoering te kiezen */

/* Ingelogd: nette, logische veld-indeling voor accountgegevens + adressen */
.aevacc .woocommerce-EditAccountForm fieldset{ margin-top:18px; padding:18px; border:1px solid var(--line); border-radius:var(--radius); }
.aevacc .woocommerce-EditAccountForm fieldset legend{ font-weight:800; color:var(--navy); padding:0 6px; font-size:1rem; }
.aevacc .woocommerce-EditAccountForm .woocommerce-Button{ margin-top:16px; }
.aevacc .woocommerce-address-fields__field-wrapper,.aevacc .woocommerce-additional-fields__field-wrapper{ margin-bottom:8px; }
.aevacc form.edit-account em,.aevacc .woocommerce-EditAccountForm em{ display:block; margin-top:3px; }
@media(min-width:560px){
  /* Naam-velden (voor/achter) netjes naast elkaar; overige velden vol-breedte. */
  .aevacc .woocommerce-EditAccountForm,.aevacc .woocommerce-address-fields__field-wrapper{ display:flex; flex-wrap:wrap; gap:0 16px; align-items:flex-start; }
  .aevacc .woocommerce-EditAccountForm > p.form-row,.aevacc .woocommerce-EditAccountForm > fieldset,.aevacc .woocommerce-EditAccountForm > .woocommerce-Button,.aevacc .woocommerce-EditAccountForm > .clear{ flex:1 1 100%; }
  .aevacc .form-row-first{ flex:1 1 calc(50% - 8px); }
  .aevacc .form-row-last{ flex:1 1 calc(50% - 8px); }
  .aevacc .woocommerce-address-fields__field-wrapper > .form-row-wide{ flex:1 1 100%; }
}

/* ===== Officieel WhatsApp-logo (mask) i.p.v. het generieke chat-icoon (#9) ===== */
[data-ic=wa]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.04 2.5c-5.27 0-9.55 4.28-9.55 9.55 0 1.68.44 3.32 1.28 4.77L2.4 21.5l4.8-1.26a9.5 9.5 0 0 0 4.84 1.32h.004c5.27 0 9.55-4.28 9.55-9.55 0-2.55-.99-4.95-2.8-6.76a9.48 9.48 0 0 0-6.75-2.76zm5.6 13.5c-.24.67-1.39 1.28-1.9 1.32-.49.04-1.1.23-3.72-.79-3.13-1.23-5.14-4.4-5.3-4.6-.15-.2-1.27-1.69-1.27-3.23 0-1.53.8-2.28 1.09-2.6.28-.31.61-.39.82-.39.2 0 .41 0 .59.01.19.01.44-.07.69.53.24.58.83 2.02.9 2.17.07.14.12.31.02.5-.09.2-.14.31-.28.48-.14.16-.3.36-.42.48-.14.14-.29.3-.12.58.16.29.72 1.19 1.55 1.93 1.07.95 1.97 1.25 2.25 1.39.28.14.44.12.6-.07.16-.19.69-.8.87-1.08.18-.28.36-.23.6-.14.24.09 1.55.73 1.82.86.28.14.46.21.53.33.07.11.07.67-.17 1.33z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12.04 2.5c-5.27 0-9.55 4.28-9.55 9.55 0 1.68.44 3.32 1.28 4.77L2.4 21.5l4.8-1.26a9.5 9.5 0 0 0 4.84 1.32h.004c5.27 0 9.55-4.28 9.55-9.55 0-2.55-.99-4.95-2.8-6.76a9.48 9.48 0 0 0-6.75-2.76zm5.6 13.5c-.24.67-1.39 1.28-1.9 1.32-.49.04-1.1.23-3.72-.79-3.13-1.23-5.14-4.4-5.3-4.6-.15-.2-1.27-1.69-1.27-3.23 0-1.53.8-2.28 1.09-2.6.28-.31.61-.39.82-.39.2 0 .41 0 .59.01.19.01.44-.07.69.53.24.58.83 2.02.9 2.17.07.14.12.31.02.5-.09.2-.14.31-.28.48-.14.16-.3.36-.42.48-.14.14-.29.3-.12.58.16.29.72 1.19 1.55 1.93 1.07.95 1.97 1.25 2.25 1.39.28.14.44.12.6-.07.16-.19.69-.8.87-1.08.18-.28.36-.23.6-.14.24.09 1.55.73 1.82.86.28.14.46.21.53.33.07.11.07.67-.17 1.33z'/%3E%3C/svg%3E"); }

/* ===== Kaart-anatomie strak (#5/#6/#7/#8): alles binnen de randen, badge rechtsboven ===== */
.aevc-card,.aev-pcard{ position:relative; overflow:hidden; }
.aevc-card__foot,.aev-pcard__foot{ min-width:0; }
.aevc-card__price,.aev-pcard__price{ min-width:0; }
.aevc-card__img img,.aev-pcard__img img{ max-width:100%; max-height:100%; }
/* Actie-badge: altijd rechtsboven op de kaart */
.aevc-card__badge{ position:absolute; top:10px; right:10px; z-index:3; background:var(--orange); color:#fff; font-size:.74rem; font-weight:800; letter-spacing:.02em; padding:3px 9px; border-radius:999px; }
.aev-pcard__badge{ left:auto !important; right:12px; }
/* Van/voor: doorgestreepte oude prijs boven de nieuwe (categorie/shop/zoeken-kaart) */
.aevc-card__price del{ display:block; font-size:.8rem; color:var(--muted); text-decoration:line-through; font-weight:600; line-height:1.2; }
.aevc-card.is-sale .aevc-card__price b,.aev-pcard.is-sale .aev-pcard__price b{ color:var(--orange); }

/* ===== Mobiele drawer (Elektranu-stijl) + incl./excl. btw-schakelaar (#10) ===== */
.aevh-drawer__panel{ display:flex; flex-direction:column; padding:0; }
.aevh-drawer__head{ display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-bottom:1px solid var(--line); }
.aevh-drawer__title{ font-weight:800; color:var(--navy); font-size:1.05rem; }
.aevh-drawer__x{ position:static; }
.aevh-drawer__search{ margin:14px 18px 6px; }
.aevh-dnav{ display:flex; flex-direction:column; padding:6px 0 4px; }
.aevh-dl{ display:flex; align-items:center; gap:12px; padding:15px 18px; border-bottom:1px solid var(--line); color:var(--navy); font-weight:700; font-size:1rem; }
.aevh-dl .aevh-ic{ width:22px; height:22px; color:var(--navy); flex:none; }
.aevh-dl__t{ flex:1 1 auto; }
.aevh-dl__chev{ flex:none; font-size:1.5rem; line-height:1; color:var(--muted); }
.aevh-dl__count{ flex:none; font-style:normal; min-width:22px; height:22px; padding:0 7px; border-radius:999px; background:#CF1717; color:#fff; font-size:.78rem; font-weight:800; display:grid; place-items:center; }
/* Acties subtiel: witte rij + scheidingslijn, rode ster + rode tekst + rode teller-badge (Elektranu-stijl). */
.aevh-dl--acties{ color:#CF1717; }
.aevh-dl--acties .aevh-ic{ color:#CF1717; }
.aevh-dl--acties .aevh-dl__t{ color:#CF1717; font-weight:800; }
.aevh-dl--acties .aevh-dl__chev{ color:#CF1717; }
/* Categorie-icoon-slot in de drawer (Lucide/Tabler outline in navy) */
.aevh-dl__ic{ flex:none; width:24px; display:inline-flex; align-items:center; justify-content:center; color:var(--navy); }
.aevh-dl__svg{ width:23px; height:23px; }
/* Zwevende pagina-knoppen weg zolang de drawer open is (geen overlap met de btw-schakelaar). */
.aev-drawer-open .aev-wa,.aev-drawer-open .aevc-mfilter{ display:none !important; }
.aevh-drawer__foot{ margin-top:auto; padding:16px 18px calc(18px + env(safe-area-inset-bottom)); border-top:1px solid var(--line); }
.aevh-dlinks{ display:flex; gap:18px; margin-bottom:16px; }
.aevh-dlinks a{ display:inline-flex; align-items:center; gap:7px; color:var(--navy); font-weight:700; font-size:.95rem; }
.aevh-dlinks .aevh-ic{ width:20px; height:20px; color:var(--navy); }
.aevh-btw__lbl{ display:block; font-size:.8rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--muted); margin-bottom:8px; }
.aevh-btw__toggle{ display:flex; border:1.5px solid var(--line); border-radius:999px; padding:3px; background:var(--soft); }
.aevh-btw__opt{ flex:1 1 50%; border:0; background:none; padding:9px 10px; border-radius:999px; font-weight:700; font-size:.9rem; color:var(--navy); cursor:pointer; }
.aevh-btw__opt.is-active{ background:var(--navy); color:#fff; }

/* Categorie-mini's in de drawer (zelfde beeldtaal als de homepage-tegels), klein + rond */
.aevh-dl__pic{ flex:none; width:34px; height:34px; border-radius:50%; overflow:hidden; background:var(--soft); }
.aevh-dl__pic img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Winkelwagen-icoon: modern outline (Elektranu-stijl), gevulde wieltjes */
[data-ic=cart]{ -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5' fill='black' stroke='none'/%3E%3Ccircle cx='18' cy='20' r='1.5' fill='black' stroke='none'/%3E%3Cpath d='M2 3h2.3l2.2 11.3a1.6 1.6 0 0 0 1.6 1.3h9.1a1.6 1.6 0 0 0 1.6-1.3L20.5 6H5.2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='20' r='1.5' fill='black' stroke='none'/%3E%3Ccircle cx='18' cy='20' r='1.5' fill='black' stroke='none'/%3E%3Cpath d='M2 3h2.3l2.2 11.3a1.6 1.6 0 0 0 1.6 1.3h9.1a1.6 1.6 0 0 0 1.6-1.3L20.5 6H5.2'/%3E%3C/svg%3E"); }

/* ===== Zelf-gehoste fonts (Inter body + Poppins koppen) — zelfde als elektranu.nl, geen CDN ===== */
@font-face{ font-family:'Inter'; font-style:normal; font-weight:400; font-display:swap; src:url(fonts/inter-400.woff2) format('woff2'); }
@font-face{ font-family:'Inter'; font-style:normal; font-weight:600; font-display:swap; src:url(fonts/inter-600.woff2) format('woff2'); }
@font-face{ font-family:'Poppins'; font-style:normal; font-weight:600; font-display:swap; src:url(fonts/poppins-600.woff2) format('woff2'); }
@font-face{ font-family:'Poppins'; font-style:normal; font-weight:700; font-display:swap; src:url(fonts/poppins-700.woff2) format('woff2'); }
@font-face{ font-family:'Poppins'; font-style:normal; font-weight:800; font-display:swap; src:url(fonts/poppins-800.woff2) format('woff2'); }
/* Koppen, navigatie, knoppen en prijzen in Poppins (display); body blijft Inter. */
body.aev2026 h1,body.aev2026 h2,body.aev2026 h3,body.aev2026 h4,
.aev-hero__title,.aevc-head h1,.aevp-title,.aevart-head h1,.aevkb-head h1,.aevpg-title,.aevacc-head h1,.aev-sec__head h2,
.aevh-menu>li>a,.aevh-dl__t,
.aev-btn,.aevc-card__cart,.single_add_to_cart_button,.checkout-button,#place_order,.wc-proceed-to-checkout .checkout-button,
.aevc-card__price b,.aev-pcard__price b,.aevp-price .price,.aevp-price .woocommerce-Price-amount,.woocommerce-Price-amount,.cart_totals .order-total td{ font-family:var(--font-head); }
