
/* ====================================================================
   Ontwerp 28-9-2026, geinspireerd op de opbouw van elvou.com, in de
   FineBites-huisstijl. Eigen aankondigingsbalk, kop en voet op alle
   winkelpagina's; de kop en voet van Astra zijn daar verborgen.
   Klassen beginnen met fbx- zodat niets botst met de oude fb-regels.
   ==================================================================== */

body.fb-shop #masthead,
body.fb-shop .site-header,
body.fb-shop #colophon,
body.fb-shop .site-footer{ display:none !important; }
body.fb-shop .site-content > .ast-container{ padding-top:0; }
body.fb-shop{ background:var(--paper); }

.fbx-wrap{ max-width:var(--max); margin-inline:auto; padding-inline:var(--gutter); }

/* ---------------------------------------------------------- aankondiging */
.fbx-aankondiging{
  background:var(--ink); color:#F1E7D8;
  font:500 .82rem/1.3 var(--body); letter-spacing:.01em;
}
.fbx-aankondiging ul{
  list-style:none; margin:0 auto; padding:.6rem var(--gutter);
  max-width:var(--max); display:flex; justify-content:center; gap:2.2rem; flex-wrap:wrap;
}
.fbx-aankondiging li{ margin:0; display:flex; align-items:center; gap:.5rem; }
.fbx-aankondiging li::before{
  content:""; width:6px; height:6px; border-radius:50%; background:var(--amber-licht);
}
@media (max-width:760px){
  .fbx-aankondiging li:not(:first-child){ display:none; }
}

/* ----------------------------------------------------------------- kop */
.fbx-kopbalk{
  position:sticky; top:0; z-index:90;
  background:rgba(255,253,249,.94);
  -webkit-backdrop-filter:saturate(1.4) blur(10px); backdrop-filter:saturate(1.4) blur(10px);
  border-bottom:1px solid var(--rule);
}
body.admin-bar .fbx-kopbalk{ top:32px; }
.fbx-kopbalk-in{
  max-width:var(--max); margin-inline:auto; padding:.85rem var(--gutter);
  display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:2rem;
}
.fbx-logo{ display:flex; align-items:center; gap:.55rem; text-decoration:none !important; color:var(--ink) !important; }
.fbx-logo img{ width:38px; height:auto; display:block; }
.fbx-logo span{ font:700 1.35rem/1 var(--display); letter-spacing:-.01em; }
.fbx-nav{ display:flex; justify-content:center; gap:1.9rem; }
.fbx-nav a{
  font:600 .95rem/1 var(--body); color:var(--ink) !important; text-decoration:none !important;
  padding:.35rem 0; border-bottom:2px solid transparent; transition:border-color .2s;
}
.fbx-nav a:hover{ border-bottom-color:var(--amber); }
.fbx-acties{ display:flex; align-items:center; gap:.4rem; }
.fbx-icoon{
  position:relative; display:grid; place-items:center; width:42px; height:42px;
  border-radius:50%; color:var(--ink) !important; transition:background .2s;
}
.fbx-icoon:hover{ background:var(--cream); }
.fbx-icoon svg{ width:22px; height:22px; }
.fbx-teller{
  position:absolute; top:3px; right:1px; min-width:18px; height:18px; padding:0 4px;
  border-radius:9px; background:#B5561F; color:#fff;
  font:700 .7rem/18px var(--body); text-align:center;
}
.fbx-teller[data-leeg="1"]{ display:none; }
.fbx-menu{ display:none; }
@media (max-width:900px){
  .fbx-kopbalk-in{ grid-template-columns:auto 1fr auto; gap:1rem; }
  .fbx-nav{ display:none; }
  .fbx-menu{ display:block; justify-self:end; position:relative; }
  .fbx-menu summary{ list-style:none; cursor:pointer; }
  .fbx-menu summary::-webkit-details-marker{ display:none; }
  .fbx-menu-paneel{
    position:absolute; right:0; top:calc(100% + .6rem); width:min(78vw,280px);
    background:var(--paper); border:1px solid var(--rule); border-radius:14px;
    box-shadow:0 18px 40px rgba(36,20,8,.14); padding:.6rem; display:grid;
  }
  .fbx-menu-paneel a{
    padding:.8rem .9rem; border-radius:10px; font:600 1rem/1.2 var(--body);
    color:var(--ink) !important; text-decoration:none !important;
  }
  .fbx-menu-paneel a:hover{ background:var(--cream); }
}

/* ---------------------------------------------------------- bouwstenen */
.fbx-eyebrow{
  font:700 .8rem/1.2 var(--body); color:var(--amber-diep); margin:0 0 .8rem;
}
.fbx-display{
  font:700 clamp(2.6rem,5.6vw,4.6rem)/1.02 var(--display); letter-spacing:-.02em;
  margin:0 0 1.2rem; color:inherit;
}
.fbx-h2{
  font:700 clamp(1.9rem,3.4vw,2.8rem)/1.08 var(--display); letter-spacing:-.015em;
  margin:0; color:var(--ink);
}
.fbx-lead{ font:400 clamp(1.05rem,1.4vw,1.2rem)/1.6 var(--body); margin:0; color:var(--ink-2); }
.fbx-p{ font:400 1.05rem/1.7 var(--body); color:var(--ink-2); margin:0 0 1rem; }
.fbx-p a{ color:var(--amber-diep); }
.fbx-knoppen{ display:flex; flex-wrap:wrap; gap:.8rem; margin:2rem 0 1.6rem; }
.fbx-knop{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.95rem 1.7rem; border-radius:999px; background:#B5561F; color:#fff !important;
  font:700 1rem/1 var(--body); text-decoration:none !important; border:2px solid #B5561F;
  transition:transform .2s, background .2s, border-color .2s;
}
.fbx-knop:hover{ background:var(--amber-diep); border-color:var(--amber-diep); transform:translateY(-2px); }
.fbx-knop--rand{ background:transparent; color:#F7F3EC !important; border-color:rgba(247,243,236,.45); }
.fbx-knop--rand:hover{ background:rgba(247,243,236,.08); border-color:#F7F3EC; }

.fbx-sectie{ padding-block:clamp(4rem,8vw,6.5rem); background:var(--paper); }
.fbx-sectie--cream{ background:var(--cream); }
.fbx-sectie--ink{ background:var(--ink); color:#F1E7D8; }
.fbx-kop{ margin-bottom:2.6rem; max-width:720px; }
.fbx-kop--rij{ max-width:none; display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; flex-wrap:wrap; margin-bottom:0; }
.fbx-kop--rij .fbx-lead{ max-width:420px; }
#pakketten{ padding-bottom:1.5rem; }

/* ---------------------------------------------------------------- hero */
.fbx-hero{
  position:relative; overflow:hidden; color:#F7F3EC;
  background:
    radial-gradient(ellipse at 75% 40%, rgba(196,98,42,.38), transparent 55%),
    linear-gradient(160deg,#2B1A0F 0%,#3A200F 55%,#5A2A12 100%);
}
.fbx-hero::after{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.09;
  background:url(https://finebites.eu/wp-content/uploads/2026/06/chips-large.webp) center/cover;
  mix-blend-mode:luminosity;
}
.fbx-hero-grid{
  position:relative; z-index:1; max-width:var(--max); margin-inline:auto;
  padding:clamp(3.5rem,7vw,6rem) var(--gutter) clamp(3rem,6vw,5rem);
  display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center;
}
.fbx-hero .fbx-eyebrow{ color:var(--amber-licht); }
.fbx-hero .fbx-lead{ color:#E3D7C6; max-width:34rem; }
.fbx-bewijs{ margin:0; font:500 .95rem/1.4 var(--body); color:#E3D7C6; display:flex; align-items:center; gap:.7rem; }
.fbx-bewijs b{ color:#fff; font-weight:700; }
.fbx-bewijs::before{
  content:""; flex:none; width:10px; height:10px; border-radius:50%; background:#7FB069;
  box-shadow:0 0 0 5px rgba(127,176,105,.18);
}
.fbx-hero-beeld{ position:relative; height:clamp(340px,40vw,520px); }
.fbx-hero-zak{
  position:absolute; height:88%; width:auto; filter:drop-shadow(0 30px 40px rgba(0,0,0,.45));
  transition:transform .6s var(--ease,ease);
}
.fbx-hero-zak--a{ left:6%; bottom:2%; transform:rotate(-7deg); z-index:2; }
.fbx-hero-zak--b{ right:4%; top:0; transform:rotate(6deg); }
.fbx-hero:hover .fbx-hero-zak--a{ transform:rotate(-5deg) translateY(-6px); }
.fbx-hero:hover .fbx-hero-zak--b{ transform:rotate(4deg) translateY(-6px); }
@media (max-width:860px){
  .fbx-hero-grid{ grid-template-columns:1fr; }
  .fbx-hero-beeld{ height:320px; order:-1; }
}

/* ------------------------------------------------------------ usp-balk */
.fbx-usp{ background:var(--paper); border-bottom:1px solid var(--rule); }
.fbx-usp-rij{ display:grid; grid-template-columns:repeat(4,1fr); }
.fbx-usp-item{ padding:1.4rem 1rem; display:grid; gap:.2rem; text-align:center; }
.fbx-usp-item + .fbx-usp-item{ border-left:1px solid var(--rule); }
.fbx-usp-item b{ font:700 1.05rem/1.2 var(--display); }
.fbx-usp-item span{ font:400 .9rem/1.3 var(--body); color:var(--ink-2); }
@media (max-width:760px){
  .fbx-usp-rij{ grid-template-columns:1fr 1fr; }
  .fbx-usp-item:nth-child(3){ border-left:0; }
  .fbx-usp-item:nth-child(n+3){ border-top:1px solid var(--rule); }
}

/* -------------------------------------------------------------- tegels */
.fbx-tegels{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; }
.fbx-tegel{
  position:relative; overflow:hidden; border-radius:22px; min-height:440px;
  display:flex; flex-direction:column; justify-content:flex-end;
  text-decoration:none !important; color:var(--ink) !important;
  transition:transform .35s, box-shadow .35s;
}
.fbx-tegel:hover{ transform:translateY(-6px); box-shadow:0 24px 50px rgba(36,20,8,.16); }
.fbx-tegel--paprika{ background:linear-gradient(165deg,#F9E3D8 0%,#EFC3AC 100%); }
.fbx-tegel--knoflook{ background:linear-gradient(165deg,#F8EEDA 0%,#EBD6A8 100%); }
.fbx-tegel--mix{ background:linear-gradient(165deg,#EEF1E6 0%,#D6E1C8 100%); }
.fbx-tegel > img, .fbx-tegel-duo{
  position:absolute; top:1.6rem; left:50%; transform:translateX(-50%);
  height:58%; width:auto; filter:drop-shadow(0 20px 26px rgba(36,20,8,.25));
  transition:transform .45s;
}
.fbx-tegel:hover > img{ transform:translateX(-50%) translateY(-6px) rotate(-2deg); }
.fbx-tegel-duo{ display:flex; width:100%; justify-content:center; }
.fbx-tegel-duo img{ height:100%; width:auto; }
.fbx-tegel-duo img:first-child{ transform:rotate(-8deg) translateX(18%); }
.fbx-tegel-duo img:last-child{ transform:rotate(7deg) translateX(-18%); }
.fbx-tegel-tekst{
  position:relative; margin:1rem; padding:1.3rem 1.4rem;
  background:rgba(255,253,249,.92); border-radius:16px;
}
.fbx-tegel-tekst h3{ font:700 1.35rem/1.15 var(--display); margin:0 0 .35rem; }
.fbx-tegel-tekst p{ font:400 .95rem/1.5 var(--body); color:var(--ink-2); margin:0 0 .8rem; }
.fbx-pijl{ font:700 .92rem/1 var(--body); color:var(--amber-diep); }
.fbx-pijl::after{ content:" \2192"; display:inline-block; transition:transform .2s; }
.fbx-tegel:hover .fbx-pijl::after{ transform:translateX(4px); }
@media (max-width:900px){ .fbx-tegels{ grid-template-columns:1fr; } .fbx-tegel{ min-height:400px; } }

/* ------------------------------------------------ productkaarten (raster) */
body.fb-winkel .woocommerce ul.products{ max-width:var(--max); margin:0 auto !important; padding:1.2rem var(--gutter) 0; }
body.fb-shop ul.products li.product{
  border-radius:20px; border:1px solid var(--rule); background:#fff;
  transition:transform .3s, box-shadow .3s;
}
body.fb-shop ul.products li.product:hover{ transform:translateY(-4px); box-shadow:0 20px 44px rgba(36,20,8,.12); }
body.fb-shop ul.products li.product .button{
  border-radius:999px !important; background:var(--ink) !important; color:#fff !important;
}
body.fb-shop ul.products li.product .button:hover{ background:#B5561F !important; }
/* labels onder de afbeelding; de oude badge over de zak is uit */
body.fb-shop .fb-aantal{ display:none !important; }
.fbx-kaartlabels{ display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 .75rem; }
.fbx-label{
  display:inline-block; padding:.38rem .72rem; border-radius:999px; background:var(--sage); color:#fff;
  font:700 .75rem/1 var(--body);
}
.fbx-label--aantal{ background:var(--ink); color:var(--cream); letter-spacing:.06em; text-transform:uppercase; font-size:.7rem; }
.fbx-label--amber{ background:var(--amber-diep); }
/* knoppen op een lijn, ook als een titel over twee regels loopt */
body.fb-shop ul.products li.product .astra-shop-summary-wrap{ display:flex; flex-direction:column; flex:1 1 auto; }
body.fb-shop ul.products li.product .button{ margin-top:auto; white-space:nowrap; padding:.95rem 1rem !important; font-size:.95rem !important; text-align:center; }

/* rij met losse zakken onder de pakketten */
.fbx-los{ background:var(--cream); padding:0 0 clamp(4rem,8vw,6rem); }
.fbx-los-grid{ display:grid; grid-template-columns:1fr 2fr; gap:clamp(1rem,2vw,1.6rem); align-items:center; padding-top:clamp(2.5rem,5vw,3.5rem); border-top:1px solid var(--rule); }
.fbx-los-grid > *{ min-width:0; }
.fbx-los-tekst{ padding-right:clamp(0rem,2vw,1.5rem); }
.fbx-h3{ font:700 clamp(1.5rem,2.4vw,1.9rem)/1.12 var(--display); margin:0 0 .8rem; color:var(--ink); }
.fbx-los .woocommerce ul.products{ grid-template-columns:repeat(2,1fr) !important; padding:0 !important; margin:0 !important; }
@media (max-width:860px){ .fbx-los-grid{ grid-template-columns:1fr; } }
@media (max-width:520px){ .fbx-los .woocommerce ul.products{ grid-template-columns:1fr !important; } }
body.fb-winkel .fbx-na-raster{ height:clamp(3rem,6vw,5rem); background:var(--cream); }

/* ----------------------------------------------------- beeld met tekst */
.fbx-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,4.5rem); align-items:center; }
.fbx-split-beeld{ margin:0; border-radius:24px; overflow:hidden; aspect-ratio:4/5; }
.fbx-split-beeld img{ width:100%; height:100%; object-fit:cover; display:block; }
.fbx-split-tekst .fbx-h2{ margin-bottom:1.2rem; }
.fbx-lijst{ list-style:none; margin:1.6rem 0 0; padding:0; display:grid; gap:.9rem; }
.fbx-lijst li{
  margin:0; padding:1rem 1.1rem 1rem 3rem; position:relative;
  background:var(--cream); border-radius:14px; font:400 1rem/1.55 var(--body); color:var(--ink-2);
}
.fbx-lijst li::before{
  content:""; position:absolute; left:1.1rem; top:1.25rem; width:14px; height:14px; border-radius:50%;
  background:var(--sage); box-shadow:inset 0 0 0 4px #D7E4CF;
}
.fbx-lijst b{ color:var(--ink); }
@media (max-width:860px){ .fbx-split{ grid-template-columns:1fr; } .fbx-split-beeld{ aspect-ratio:16/10; } }

/* ------------------------------------------------------------- verhaal */
.fbx-verhaal{ display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(2rem,6vw,5rem); align-items:start; }
.fbx-sectie--ink .fbx-eyebrow{ color:var(--amber-licht); }
.fbx-citaat{ font:700 clamp(1.7rem,3vw,2.5rem)/1.2 var(--display); margin:0; color:#F7F3EC; }
.fbx-citaat em{ color:var(--amber-licht); }
.fbx-sectie--ink .fbx-p{ color:#E3D7C6; }
.fbx-ondertekening{ font:italic 400 1rem/1.4 var(--body); color:#B9A38B; margin:1.4rem 0 0; }
@media (max-width:860px){ .fbx-verhaal{ grid-template-columns:1fr; } }

/* -------------------------------------------------------------- stappen */
.fbx-stappen{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; counter-reset:stap; }
.fbx-stappen li{
  counter-increment:stap; margin:0; padding:2rem 1.6rem 1.8rem; border-radius:20px;
  background:var(--cream); display:grid; gap:.5rem;
}
.fbx-stappen li::before{
  content:counter(stap); width:42px; height:42px; border-radius:50%; display:grid; place-items:center;
  background:var(--ink); color:#fff; font:700 1.05rem/1 var(--body); margin-bottom:.6rem;
}
.fbx-stappen b{ font:700 1.25rem/1.2 var(--display); }
.fbx-stappen span{ font:400 1rem/1.6 var(--body); color:var(--ink-2); }
@media (max-width:860px){ .fbx-stappen{ grid-template-columns:1fr; } }

/* ------------------------------------------------------------------ faq */
.fbx-faq-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,5vw,4.5rem); align-items:start; }
.fbx-faq details{ border-bottom:1px solid var(--border,#CFC0A8); }
.fbx-faq details:first-child{ border-top:1px solid var(--border,#CFC0A8); }
.fbx-faq summary{
  list-style:none; cursor:pointer; padding:1.35rem 2.5rem 1.35rem 0; position:relative;
  font:700 1.12rem/1.35 var(--display); color:var(--ink);
}
.fbx-faq summary::-webkit-details-marker{ display:none; }
.fbx-faq summary::after{
  content:"+"; position:absolute; right:.2rem; top:50%; transform:translateY(-50%);
  font:400 1.6rem/1 var(--body); color:var(--amber-diep); transition:transform .25s;
}
.fbx-faq details[open] summary::after{ transform:translateY(-50%) rotate(45deg); }
.fbx-faq details p{ font:400 1rem/1.65 var(--body); color:var(--ink-2); margin:0 0 1.3rem; max-width:40rem; }
.fbx-tabel{ width:100%; max-width:26rem; border-collapse:collapse; margin:0 0 1rem; }
.fbx-tabel td{ padding:.55rem 0; border-bottom:1px solid var(--rule); font:400 .98rem/1.3 var(--body); }
.fbx-tabel td:last-child{ text-align:right; font-weight:700; }
@media (max-width:860px){ .fbx-faq-grid{ grid-template-columns:1fr; } }

/* ------------------------------------------------------- productpagina */
.fbx-claims{ display:flex; flex-wrap:wrap; gap:.45rem; margin:0 0 1.1rem; padding:0; list-style:none; }
.fbx-claims li{
  margin:0; padding:.42rem .8rem; border-radius:999px; background:var(--sage-tint);
  color:#2F4A25; font:700 .82rem/1 var(--body);
}
.fbx-zekerheid{ list-style:none; margin:1.4rem 0 0; padding:1.1rem 1.2rem; display:grid; gap:.65rem; background:var(--cream); border-radius:16px; }
.fbx-zekerheid li{ margin:0; display:flex; gap:.7rem; align-items:flex-start; font:500 .95rem/1.45 var(--body); color:var(--ink-2); }
.fbx-zekerheid svg{ flex:none; width:20px; height:20px; color:var(--sage); margin-top:1px; }
body.fb-shop.single-product .product_meta .posted_in,
body.fb-shop.single-product .ast-woo-product-category,
body.fb-shop.single-product p.stock.available-on-backorder{ display:none !important; }
body.fb-shop .woocommerce div.product form.cart .button{
  border-radius:999px !important; padding:1rem 2rem !important; background:#B5561F !important; color:#fff !important;
}
body.fb-shop .woocommerce div.product form.cart .button:hover{ background:var(--amber-diep) !important; }
body.fb-shop .woocommerce div.product div.images img{ border-radius:22px; }
/* levertekst onder de knop dubbelt met de zekerheden */
body.fb-shop.single-product .summary .fb-klein{ display:none !important; }

/* tabs als rustige pillen */
body.fb-shop div.product .woocommerce-tabs{ margin-top:clamp(2.5rem,5vw,4rem); padding-top:0; border-top:0; }
body.fb-shop div.product .woocommerce-tabs ul.tabs{ display:flex; gap:.5rem; padding:0 !important; margin:0 0 2rem !important; border:0 !important; }
body.fb-shop div.product .woocommerce-tabs ul.tabs::before{ display:none !important; }
body.fb-shop div.product .woocommerce-tabs ul.tabs li{ margin:0 !important; padding:0 !important; border:1px solid var(--rule) !important; border-radius:999px !important; background:var(--paper) !important; }
body.fb-shop div.product .woocommerce-tabs ul.tabs li a{ display:block; padding:.7rem 1.3rem !important; font:600 .95rem/1 var(--body) !important; color:var(--ink-2) !important; }
body.fb-shop div.product .woocommerce-tabs ul.tabs li.active{ background:var(--ink) !important; border-color:var(--ink) !important; }
body.fb-shop div.product .woocommerce-tabs ul.tabs li.active a{ color:#fff !important; }
body.fb-shop div.product .woocommerce-tabs .panel{ max-width:52rem; font:400 1.02rem/1.7 var(--body); color:var(--ink-2); }
body.fb-shop div.product .woocommerce-tabs .panel h3{ font-family:var(--display) !important; font-size:1.25rem !important; color:var(--ink); margin:2.2rem 0 .7rem !important; }

/* voedingswaarde: volle breedte van de tekstkolom, alleen horizontale lijnen */
body.fb-shop table.fb-voeding{ width:100%; max-width:none; border:0 !important; border-collapse:collapse; margin:0 0 1rem; background:transparent; }
body.fb-shop table.fb-voeding th, body.fb-shop table.fb-voeding td{ border:0 !important; border-bottom:1px solid var(--rule) !important; padding:.7rem .4rem !important; background:transparent !important; }
body.fb-shop table.fb-voeding thead th{ border-bottom:2px solid var(--ink) !important; }
body.fb-shop table.fb-voeding th:not(:first-child){ text-align:right; }
body.fb-shop table.fb-voeding td:first-child{ color:var(--ink); }
body.fb-shop table.fb-voeding tr:last-child td{ border-bottom:0 !important; }
body.fb-shop .woocommerce table.shop_attributes{ border:0; }

body.fb-shop .related.products > h2{ font:700 clamp(1.7rem,3vw,2.3rem)/1.1 var(--display); }

/* ---------------------------------------------------------------- voet */
.fbx-voet{ background:var(--ink); color:#E3D7C6; margin-top:0; }
.fbx-voet-cta{
  max-width:var(--max); margin-inline:auto; padding:clamp(3rem,6vw,4.5rem) var(--gutter);
  display:flex; justify-content:space-between; align-items:center; gap:2rem; flex-wrap:wrap;
  border-bottom:1px solid rgba(227,215,198,.16);
}
.fbx-voet-cta h2{ font:700 clamp(1.6rem,3vw,2.3rem)/1.12 var(--display); color:#F7F3EC; margin:0 0 .4rem; }
.fbx-voet-cta p{ margin:0; font:400 1rem/1.5 var(--body); color:#E3D7C6; max-width:34rem; }
.fbx-voet-kolommen{
  max-width:var(--max); margin-inline:auto; padding:3rem var(--gutter);
  display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:2rem;
}
.fbx-voet h3{ font:700 1rem/1.2 var(--body); color:#F7F3EC; margin:0 0 1rem; }
.fbx-voet ul{ list-style:none; margin:0; padding:0; display:grid; gap:.6rem; }
.fbx-voet li{ margin:0; }
.fbx-voet a{ color:#E3D7C6 !important; text-decoration:none !important; font:400 .95rem/1.4 var(--body); }
.fbx-voet a:hover{ color:#fff !important; text-decoration:underline !important; }
.fbx-voet a.fbx-knop{ color:#fff !important; font:700 1rem/1 var(--body); }
.fbx-voet a.fbx-knop:hover{ text-decoration:none !important; }
.fbx-voet .fbx-logo span{ color:#F7F3EC; }
.fbx-voet-over{ font:400 .95rem/1.6 var(--body); margin:1rem 0 1.2rem; max-width:22rem; }
.fbx-sociaal{ display:flex; gap:.5rem; }
.fbx-sociaal a{
  width:40px; height:40px; border-radius:50%; display:grid; place-items:center;
  border:1px solid rgba(227,215,198,.3);
}
.fbx-sociaal a:hover{ background:rgba(227,215,198,.1); text-decoration:none !important; }
.fbx-sociaal svg{ width:18px; height:18px; fill:#E3D7C6; }
.fbx-voet-onder{
  max-width:var(--max); margin-inline:auto; padding:1.3rem var(--gutter) 2rem;
  border-top:1px solid rgba(227,215,198,.16);
  display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap;
  font:400 .85rem/1.5 var(--body); color:#B9A38B;
}
.fbx-voet-onder a{ font-size:.85rem; color:#B9A38B !important; }
@media (max-width:860px){ .fbx-voet-kolommen{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ .fbx-voet-kolommen{ grid-template-columns:1fr; } }

/* ---------------------------------------------- correcties na eerste render */
.fbx-hero .fbx-display, .fb-winkel .fbx-hero h1{ color:#F7F3EC !important; }
.fbx-hero,.fbx-usp,.fbx-sectie,.fbx-los,
body.fb-winkel .entry-content > .woocommerce{
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); width:100vw; max-width:100vw;
}
body.fb-winkel .entry-content > .woocommerce{ background:var(--cream); padding:0 0 clamp(4rem,8vw,6rem); }
body.fb-winkel .entry-content > .woocommerce ul.products{
  max-width:var(--max); margin:0 auto !important; padding:2.4rem var(--gutter) 0 !important;
}
.fbx-hero-grid > *,.fbx-tegels > *,.fbx-split > *,.fbx-verhaal > *,.fbx-stappen > *,.fbx-faq-grid > *{ min-width:0; }
.fbx-split-beeld{ background:var(--cream); }
.fbx-split-beeld img{ object-fit:contain; padding:6%; }
.fbx-stappen li{ align-content:start; }

body.fb-shop .single-product-category{ display:none !important; }
body.fb-shop .single_add_to_cart_button{
  background:#B5561F !important; border-color:#B5561F !important; color:#fff !important;
  border-radius:999px !important; padding:1rem 2rem !important;
}
body.fb-shop .single_add_to_cart_button:hover{ background:#8F4318 !important; border-color:#8F4318 !important; }
body.fb-shop:not(.fb-winkel) .site-content{ min-height:62vh; padding-top:2.5rem; }

/* ====================================================================
   Ronde 29-9 (avond): consistent op telefoon, tablet en desktop
   ==================================================================== */

/* kop: iconen altijd rechts */
.fbx-acties{ justify-self:end; }

/* aankondiging: op smallere schermen een bericht tegelijk, wisselend */
@media (max-width:1024px){
  .fbx-aankondiging ul{ display:grid; justify-content:stretch; gap:0; }
  .fbx-aankondiging li,
  .fbx-aankondiging li:not(:first-child){ display:flex; grid-area:1/1; justify-content:center; opacity:0; animation:fbx-wissel 12s infinite; }
  .fbx-aankondiging li:nth-child(2){ animation-delay:4s; }
  .fbx-aankondiging li:nth-child(3){ animation-delay:8s; }
}
@keyframes fbx-wissel{ 0%,2%{opacity:0} 5%,30%{opacity:1} 33%,100%{opacity:0} }
@media (max-width:1024px) and (prefers-reduced-motion:reduce){
  .fbx-aankondiging li{ animation:none; }
  .fbx-aankondiging li:first-child{ opacity:1; }
}

/* hero: zakken bij elkaar houden op tablet en telefoon */
@media (max-width:860px){
  .fbx-hero-beeld{ width:min(100%,480px); margin-inline:auto; height:clamp(260px,62vw,340px); }
  .fbx-hero-grid{ gap:1.5rem; }
}

/* smaaktegels: drie naast elkaar tot tablet, daarna onder elkaar */
@media (max-width:900px){ .fbx-tegels{ grid-template-columns:repeat(3,1fr); gap:1rem; } .fbx-tegel{ min-height:380px; } .fbx-tegel-tekst{ margin:.7rem; padding:1rem; } .fbx-tegel-tekst p{ display:none; } }
@media (max-width:640px){ .fbx-tegels{ grid-template-columns:1fr; } .fbx-tegel{ min-height:360px; } .fbx-tegel-tekst p{ display:block; } }

/* kop boven het pakkettenraster */
@media (max-width:640px){ .fbx-kop--rij{ gap:.8rem; } }

/* productkaarten overal gelijk: raster, archief en "Ook lekker" */
body.fb-shop ul.products li.product .ast-on-card-button{ display:none !important; }
body.fb-shop ul.products li.product a img{ margin-bottom:1rem !important; }
body.fb-shop.post-type-archive-product ul.products,
body.fb-shop .related.products ul.products{ grid-template-columns:repeat(3,1fr) !important; }
@media (max-width:900px){
  body.fb-shop .related.products ul.products,
  body.fb-shop.post-type-archive-product ul.products{ grid-template-columns:repeat(2,1fr) !important; }
}
/* telefoon: horizontale kaart, foto links en tekst rechts */
@media (max-width:600px){
  body.fb-shop ul.products,
  body.fb-shop.post-type-archive-product ul.products,
  body.fb-shop .related.products ul.products,
  .fbx-los .woocommerce ul.products{ grid-template-columns:1fr !important; gap:.8rem !important; }
  body.fb-shop ul.products li.product{
    display:grid !important; grid-template-columns:42% 1fr; gap:1rem; align-items:center; padding:.9rem !important;
  }
  body.fb-shop ul.products li.product:hover{ transform:none; }
  body.fb-shop ul.products li.product a img{ margin:0 !important; padding:.4rem !important; }
  body.fb-shop ul.products li.product .woocommerce-loop-product__title{ font-size:1rem !important; }
  body.fb-shop ul.products li.product .price{ font-size:1.15rem !important; margin-bottom:.8rem !important; }
  body.fb-shop ul.products li.product .button{ white-space:normal; padding:.75rem .8rem !important; font-size:.88rem !important; line-height:1.2 !important; }
  .fbx-kaartlabels{ margin-bottom:.5rem; }
  .fbx-label{ font-size:.68rem; padding:.3rem .55rem; }
  .fbx-los-grid{ padding-top:2rem; gap:1.2rem; }
}

/* links in winkelwagen, kassa en account in de huisstijl in plaats van Astra-oranje */
body.fb-shop .site-content .entry-content a:not(.button):not(.fbx-knop):not([class*="fbx-"]),
body.fb-shop .woocommerce-cart-form td.product-name a,
body.fb-shop .woocommerce-info a,
body.fb-shop .woocommerce-message a,
body.fb-shop .lost_password a,
body.fb-shop .shipping-calculator-button,
body.fb-shop .woocommerce-privacy-policy-text a,
body.fb-shop .woocommerce-terms-and-conditions-link,
body.fb-shop .woocommerce-breadcrumb a,
body.fb-shop .reset_variations{ color:var(--amber-diep) !important; }
body.fb-shop td.product-name a{ font-weight:700; text-decoration:none; }

/* formulieren: een vorm voor alle velden */
body.fb-shop .woocommerce form .input-text,
body.fb-shop .woocommerce form select,
body.fb-shop .woocommerce form textarea,
body.fb-shop .woocommerce .coupon .input-text,
body.fb-shop div.product form.cart .variations select,
body.fb-shop .select2-container .select2-selection--single{
  border:1px solid #D9CEBC !important; border-radius:12px !important; background:#fff !important;
  min-height:48px; padding:.7rem .95rem !important; font:400 1rem/1.3 var(--body) !important; color:var(--ink) !important; box-shadow:none !important;
}
body.fb-shop .select2-container .select2-selection--single .select2-selection__rendered{ padding:0 !important; line-height:1.9 !important; }
body.fb-shop .select2-container .select2-selection--single .select2-selection__arrow{ top:50% !important; transform:translateY(-50%); right:.6rem !important; }
body.fb-shop .woocommerce form .input-text:focus,
body.fb-shop .woocommerce form select:focus,
body.fb-shop div.product form.cart .variations select:focus{ border-color:var(--amber) !important; outline:2px solid rgba(196,98,42,.2); outline-offset:1px; }
body.fb-shop .woocommerce form .form-row label{ font:700 .9rem/1.3 var(--body); color:var(--ink); margin-bottom:.35rem; }
body.fb-shop div.product form.cart .variations th.label label{ font:700 .95rem/1 var(--body); }

/* knoppen in winkelwagen en kassa */
body.fb-shop .woocommerce a.button,
body.fb-shop .woocommerce button.button,
body.fb-shop .woocommerce input.button{ border-radius:999px !important; font:700 .98rem/1 var(--body) !important; padding:1rem 1.6rem !important; }
body.fb-shop .woocommerce button[name="update_cart"]{ background:transparent !important; color:var(--ink) !important; border:1px solid #D9CEBC !important; }
body.fb-shop .woocommerce button[name="update_cart"]:disabled{ opacity:.5; }
body.fb-shop .wc-proceed-to-checkout a.checkout-button,
body.fb-shop #place_order{ background:#B5561F !important; color:#fff !important; width:100%; font-size:1.05rem !important; padding:1.15rem 1.6rem !important; }
body.fb-shop .wc-proceed-to-checkout a.checkout-button:hover,
body.fb-shop #place_order:hover{ background:#8F4318 !important; }

/* winkelwagen */
body.fb-shop .cart-collaterals .cart_totals{ border:1px solid var(--rule) !important; border-radius:18px; overflow:hidden; background:#fff; }
body.fb-shop .cart_totals > h2{ font:700 1.35rem/1.2 var(--display) !important; padding:1.2rem 1.4rem !important; margin:0 !important; background:var(--cream) !important; border-bottom:1px solid var(--rule); }
body.fb-shop .cart_totals table.shop_table{ border:0 !important; }
body.fb-shop .cart_totals table th,
body.fb-shop .cart_totals table td{ background:transparent !important; border-color:var(--rule) !important; }
body.fb-shop table.shop_table th{ font:700 .72rem/1.2 var(--body) !important; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-3) !important; }
body.fb-shop table.shop_table td{ font:400 1rem/1.5 var(--body); color:var(--ink); }
body.fb-shop .order-total .amount,
body.fb-shop .order-total td strong{ font:700 1.25rem/1.2 var(--display) !important; color:var(--ink); }
body.fb-shop .woocommerce-shipping-methods li{ display:flex; gap:.5rem; align-items:flex-start; margin:0 0 .5rem !important; }
body.fb-shop .woocommerce-shipping-methods input[type=radio]{ margin-top:.3rem !important; }
body.fb-shop input[type=checkbox], body.fb-shop input[type=radio]{ accent-color:#B5561F; }
body.fb-shop .woocommerce-cart-form .product-thumbnail img{ width:72px !important; background:var(--cream); border-radius:10px; padding:4px; }

/* kassa */
body.fb-shop #order_review_heading,
body.fb-shop .woocommerce-billing-fields > h3,
body.fb-shop #ship-to-different-address{ font:700 1.3rem/1.2 var(--display) !important; }
body.fb-shop #ship-to-different-address label{ display:flex; gap:.6rem; align-items:center; font:700 1.05rem/1.3 var(--body) !important; }
body.fb-shop #ship-to-different-address input{ margin:0 !important; width:18px; height:18px; }
body.fb-shop #order_review{ border-radius:18px !important; }
body.fb-shop #payment{ background:var(--cream) !important; border-radius:14px !important; }
body.fb-shop #payment ul.payment_methods{ border-bottom-color:var(--rule) !important; }
body.fb-shop #payment div.payment_box{ background:#fff !important; border-radius:10px; color:var(--ink-2) !important; }
body.fb-shop #payment div.payment_box::before{ border-bottom-color:#fff !important; }
body.fb-shop .woocommerce-info{ border-top-color:var(--sage) !important; background:var(--sage-tint) !important; color:var(--ink) !important; border-radius:12px; }
body.fb-shop .woocommerce-info::before{ color:var(--sage) !important; }

/* account */
body.fb-shop.woocommerce-account .woocommerce > h2,
body.fb-shop.woocommerce-account .u-column1 > h2,
body.fb-shop.woocommerce-account .u-column2 > h2{ font:700 1.4rem/1.2 var(--display) !important; margin:1.2rem 0 1rem !important; }
body.fb-shop .woocommerce form.login,
body.fb-shop .woocommerce form.register{ border:1px solid var(--rule) !important; border-radius:18px !important; background:#fff; padding:1.6rem !important; max-width:32rem; }

/* verzendopties: rondje naast de tekst, niet eroverheen */
body.fb-shop ul.woocommerce-shipping-methods{ margin:0 !important; padding:0 !important; list-style:none; }
body.fb-shop ul.woocommerce-shipping-methods li{ display:flex !important; gap:.55rem; align-items:flex-start; text-align:left !important; margin:0 0 .6rem !important; }
body.fb-shop ul.woocommerce-shipping-methods li input[type=radio]{ position:static !important; left:auto !important; flex:none; margin:.28rem 0 0 !important; }
body.fb-shop ul.woocommerce-shipping-methods li label{ margin:0 !important; padding:0 !important; display:block; text-align:left; line-height:1.45; }
body.fb-shop .woocommerce-shipping-totals td,
body.fb-shop .woocommerce-shipping-destination,
body.fb-shop .woocommerce-shipping-calculator{ text-align:left !important; }

/* totaal groot, btw-regel klein */
body.fb-shop .order-total small.includes_tax,
body.fb-shop .order-total small.includes_tax .amount{ display:block; font:400 .8rem/1.4 var(--body) !important; color:var(--ink-3) !important; margin-top:.2rem; }

/* kaders met ronde hoeken, gelijk aan de rest */
body.fb-shop table.shop_table.cart,
body.fb-shop table.woocommerce-cart-form__contents{ border:1px solid var(--rule) !important; border-radius:18px !important; border-collapse:separate !important; border-spacing:0; overflow:hidden; background:#fff; }
body.fb-shop table.shop_table.cart thead th{ background:var(--cream) !important; }
body.fb-shop.woocommerce-checkout #order_review_heading{ border:1px solid var(--rule) !important; border-bottom:0 !important; border-radius:18px 18px 0 0 !important; background:#fff; margin:0 !important; padding:1.4rem 1.6rem .6rem !important; }
body.fb-shop.woocommerce-checkout #order_review{ border:1px solid var(--rule) !important; border-top:0 !important; border-radius:0 0 18px 18px !important; background:#fff; padding:0 1.6rem 1.6rem !important; }
body.fb-shop.woocommerce-checkout #order_review table.shop_table{ border:0 !important; }
body.fb-shop.woocommerce-checkout #order_review table.shop_table th,
body.fb-shop.woocommerce-checkout #order_review table.shop_table td{ background:transparent !important; }

/* meldingen van WooCommerce ("toegevoegd aan je winkelwagen") */
body.fb-shop .woocommerce-message{ border:0 !important; border-left:3px solid var(--sage) !important; border-radius:12px !important; background:var(--sage-tint) !important; color:var(--ink) !important; outline:0 !important; box-shadow:none !important; display:flex; flex-wrap:wrap; align-items:center; gap:.8rem 1.2rem; }
body.fb-shop .woocommerce-message::before{ color:var(--sage) !important; }
body.fb-shop .woocommerce-message .button{ order:2; background:var(--ink) !important; color:#fff !important; padding:.7rem 1.2rem !important; font-size:.9rem !important; margin:0 !important; }
body.fb-shop .woocommerce-error{ border-radius:12px !important; }

/* verzendbalk in de winkelwagen */
body.fb-shop .cart_totals .fb-preorder-balk{ display:none; }
.fbx-verzendbalk{ margin:1.2rem 1.4rem .4rem; padding:1rem 1.1rem 1.1rem; background:var(--cream); border-radius:14px; }
.fbx-verzendbalk p{ margin:0 0 .75rem; font:400 .98rem/1.45 var(--body); color:var(--ink); }
.fbx-balk{ position:relative; height:8px; border-radius:99px; background:#E4D9C7; overflow:visible; }
.fbx-balk span{ position:absolute; inset:0 auto 0 0; border-radius:99px; background:var(--sage); transition:width .4s; }
.fbx-balk i{ position:absolute; top:-3px; width:2px; height:14px; background:var(--paper); transform:translateX(-1px); }
.fbx-balk-stappen{ display:flex; justify-content:space-between; margin-top:.45rem; font:600 .74rem/1.2 var(--body); color:var(--ink-3); }
.fbx-balk-stappen span:first-child{ visibility:hidden; }

/* totalen en bestelling op de telefoon: kop boven de waarde */
@media (max-width:600px){
  body.fb-shop .cart_totals table.shop_table tr,
  body.fb-shop.woocommerce-checkout #order_review tfoot tr{ display:block; padding:.7rem 0; border-bottom:1px solid var(--rule); }
  body.fb-shop .cart_totals table.shop_table th,
  body.fb-shop .cart_totals table.shop_table td,
  body.fb-shop.woocommerce-checkout #order_review tfoot th,
  body.fb-shop.woocommerce-checkout #order_review tfoot td{ display:block; width:100% !important; text-align:left !important; border:0 !important; padding:.15rem 0 !important; }
  body.fb-shop .cart_totals table.shop_table td::before{ display:none !important; }
  body.fb-shop.woocommerce-checkout #order_review_heading{ padding:1.2rem 1.1rem .5rem !important; }
  body.fb-shop.woocommerce-checkout #order_review{ padding:0 1.1rem 1.2rem !important; }
  .fbx-verzendbalk{ margin:1rem 1rem .3rem; }
}

/* voedingstabel en tabs op de telefoon */
@media (max-width:600px){
  body.fb-shop table.fb-voeding{ font-size:.86rem; }
  body.fb-shop table.fb-voeding th, body.fb-shop table.fb-voeding td{ padding:.55rem .25rem !important; }
  body.fb-shop table.fb-voeding td:not(:first-child){ white-space:nowrap; }
  body.fb-shop table.fb-voeding thead th{ font-size:.62rem; letter-spacing:.05em; }
  body.fb-shop div.product .woocommerce-tabs ul.tabs li a{ padding:.6rem 1rem !important; font-size:.88rem !important; }
}

/* ====================================================================
   Ronde 3 (27-10-2026): marktbenadering, eiwit als groot getal,
   echte chipsfoto, supermarktblok, lichter en toegankelijker
   ==================================================================== */

/* hero: lichte achtergrond in plaats van de zware chipsillustratie */
.fbx-hero::after{ background-image:url(https://finebites.eu/wp-content/uploads/finebites/img/chips-echt-600.webp); opacity:.07; }
.fbx-hero-getal{
  position:absolute; z-index:3; right:2%; bottom:6%; margin:0;
  width:clamp(104px,11vw,136px); aspect-ratio:1; border-radius:50%;
  display:grid; place-content:center; text-align:center; gap:.15rem;
  background:#B5561F; color:#fff; box-shadow:0 18px 40px rgba(0,0,0,.35); transform:rotate(-8deg);
}
.fbx-hero-getal b{ font:700 clamp(1.9rem,3.2vw,2.5rem)/1 var(--display); }
.fbx-hero-getal span{ font:700 .78rem/1.15 var(--body); letter-spacing:.02em; max-width:6.5em; margin-inline:auto; }
@media (max-width:860px){ .fbx-hero-getal{ right:0; bottom:2%; width:96px; } .fbx-hero-getal b{ font-size:1.7rem; } .fbx-hero-getal span{ font-size:.7rem; } }

/* aankondiging: genoeg contrast voor alle berichten */
.fbx-aankondiging, .fbx-aankondiging li{ color:#F7F3EC; }

/* links in lopende tekst herkenbaar zonder kleur */
.fbx-p a, .fbx-faq a, .fbx-retail-kaart p a, body.fb-shop div.product .woocommerce-tabs .panel a{ text-decoration:underline !important; text-underline-offset:.18em; }

/* prijs per zak: donkerder voor contrast */
body.fb-shop .fb-per-zak{ color:var(--ink-2) !important; }
body.fb-shop table.shop_table thead th{ color:var(--ink-2) !important; }

/* echte foto: vullend, met een kort onderschrift */
.fbx-split-beeld{ position:relative; background:#EFE8DD; }
.fbx-split-beeld img{ object-fit:cover; padding:0; }
.fbx-split-beeld figcaption{
  position:absolute; left:1rem; right:1rem; bottom:1rem; padding:.55rem .8rem; border-radius:10px;
  background:rgba(255,253,249,.9); font:500 .82rem/1.35 var(--body); color:var(--ink-2);
}
.fbx-bron-ref{ text-decoration:none !important; color:var(--amber-diep) !important; font-weight:700; padding:0 .15em; }
.fbx-bronnen{ margin:3rem 0 0; font:400 .85rem/1.5 var(--body); color:var(--ink-2); border-top:1px solid var(--rule); padding-top:1rem; }
.fbx-bronnen span{ font-weight:700; margin-right:.4rem; }

/* supermarktblok */
.fbx-retail{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; }
.fbx-retail-kaart{ background:var(--cream); border-radius:20px; padding:1.6rem 1.6rem 1.5rem; display:flex; flex-direction:column; }
.fbx-retail-kaart h3{ font:700 1.3rem/1.2 var(--display); margin:0 0 .6rem; color:var(--ink); }
.fbx-retail-kaart p{ font:400 1rem/1.6 var(--body); color:var(--ink-2); margin:0 0 1.2rem; }
.fbx-tekstlink{ margin-top:auto; align-self:flex-start; font:700 .98rem/1.2 var(--body); color:var(--amber-diep) !important; text-decoration:none !important; padding:.5rem 0; border-bottom:2px solid currentColor; }
.fbx-tekstlink:hover{ color:var(--ink) !important; }
@media (max-width:860px){ .fbx-retail{ grid-template-columns:1fr; } }

/* productpagina: het grote getal */
.fbx-getallen{ display:grid; grid-template-columns:repeat(3,1fr); gap:.6rem; margin:0 0 1.4rem; max-width:30rem; }
.fbx-getallen div{ background:var(--cream); border-radius:14px; padding:.8rem .7rem; text-align:center; display:grid; gap:.2rem; }
.fbx-getallen b{ font:700 1.6rem/1 var(--display); color:var(--ink); }
.fbx-getallen span{ font:500 .82rem/1.2 var(--body); color:var(--ink-2); }

/* voet: tikdoelen van minstens 40 px */
.fbx-voet ul{ gap:.1rem; }
.fbx-voet li a{ display:inline-block; padding:.55rem 0; }
.fbx-sociaal a{ width:44px; height:44px; }

/* smaaktegels op de telefoon: compact, foto naast de tekst */
@media (max-width:640px){
  .fbx-tegel{ min-height:0; flex-direction:row; align-items:center; padding:.9rem; gap:.4rem; }
  .fbx-tegel > img, .fbx-tegel-duo{ position:static; transform:none; height:150px; width:auto; flex:none; }
  .fbx-tegel-duo{ width:120px; }
  .fbx-tegel-duo img{ height:130px; }
  .fbx-tegel:hover > img{ transform:none; }
  .fbx-tegel-tekst{ margin:0; padding:.9rem 1rem; flex:1; }
  .fbx-tegel-tekst h3{ font-size:1.2rem; }
  .fbx-tegel-tekst p{ font-size:.9rem; margin-bottom:.5rem; }
}

/* losse zakken: tekst bovenaan uitlijnen met de kaarten */
.fbx-los-grid{ align-items:start; }
.fbx-los-tekst{ padding-top:1.4rem; }

/* minder beweging: geen zweef-effecten */
@media (prefers-reduced-motion:reduce){
  .fbx-tegel, .fbx-tegel > img, .fbx-hero-zak, body.fb-shop ul.products li.product, .fbx-knop{ transition:none !important; }
  .fbx-tegel:hover, body.fb-shop ul.products li.product:hover, .fbx-knop:hover{ transform:none !important; }
}

/* --- cyclus 2 --- */
/* verzendopties: Astra geeft de lijst een negatieve inspringing die het label erft */
body.fb-shop ul.woocommerce-shipping-methods li,
body.fb-shop ul.woocommerce-shipping-methods li label{ text-indent:0 !important; padding-left:0 !important; }
body.fb-shop .cart_totals .woocommerce-shipping-destination,
body.fb-shop .cart_totals .woocommerce-shipping-calculator{ display:none !important; }
body.fb-shop .order-total small.includes_tax .amount{ display:inline !important; }

/* verhaal: ruimte tussen de alinea's */
.fbx-sectie--ink .fbx-p{ margin:0 0 1.1rem !important; }

/* logo: groot genoeg tikdoel */
.fbx-logo{ min-height:44px; padding-block:.35rem; }

/* productpagina: artikelnummer is ruis voor de klant */
body.fb-shop.single-product .product_meta{ display:none !important; }
.fbx-getallen{ margin:0 0 1.2rem; }

/* losse zakken op desktop: liggende kaarten, foto naast de tekst */
@media (min-width:861px){
  .fbx-los .woocommerce ul.products li.product{ display:grid !important; grid-template-columns:42% 1fr; gap:1.2rem; align-items:center; padding:1rem !important; }
  .fbx-los .woocommerce ul.products li.product > *{ min-width:0; }
  .fbx-los .woocommerce ul.products li.product a img{ margin:0 !important; }
  .fbx-los .woocommerce ul.products li.product .astra-shop-summary-wrap{ padding:0 !important; }
  .fbx-los .woocommerce ul.products li.product .button{ white-space:normal; }
}

/* kennismakingstegel op de telefoon: beide zakken binnen de tegel */
@media (max-width:640px){
  .fbx-tegel-duo{ width:132px; height:140px; position:relative; overflow:visible; }
  .fbx-tegel-duo img{ position:absolute; height:126px; width:auto; top:6px; }
  .fbx-tegel-duo img:first-child{ left:0; transform:rotate(-8deg); }
  .fbx-tegel-duo img:last-child{ right:0; transform:rotate(7deg); }
  .fbx-split-beeld{ aspect-ratio:4/3; }
}

/* --- cyclus 3: niets kleiner dan 12 px, leesbare regellengte --- */
.fbx-aankondiging{ font-size:max(.82rem,13px); }
.fbx-eyebrow{ font-size:max(.78rem,13px) !important; }
.fbx-label{ font-size:max(.7rem,12px) !important; }
.fbx-claims li{ font-size:max(.78rem,12.5px) !important; }
body.fb-shop table.shop_table th, body.fb-shop table.fb-voeding th{ font-size:max(.72rem,12px) !important; }
.fbx-balk-stappen{ font-size:max(.74rem,12px); }
body.fb-shop .cart-subtotal th, body.fb-shop .cart_totals th{ color:var(--ink-2) !important; }
body.fb-shop div.product .woocommerce-tabs .panel{ max-width:46rem; }
body.fb-shop .entry-content > p, body.fb-shop .entry-content .wp-block-paragraph, body.fb-shop .entry-content h2{ max-width:44rem; }
body.fb-shop div.product .woocommerce-tabs ul.tabs li a{ min-height:44px; display:flex !important; align-items:center; }
.fbx-los .woocommerce ul.products li.product h2, .fbx-los .woocommerce ul.products li.product .woocommerce-loop-product__title{ padding-block:.25rem; }

/* --- cyclus 4 --- */
/* losse zakken: tekst boven, twee ruime liggende kaarten eronder */
@media (min-width:861px){
  .fbx-los-grid{ grid-template-columns:1fr; gap:1.4rem; }
  .fbx-los-tekst{ padding:0; max-width:40rem; }
  .fbx-los .woocommerce ul.products li.product{ grid-template-columns:200px 1fr; }
}
/* op de winkelwagen zelf is "Bekijk winkelwagen" overbodig */
body.woocommerce-cart .woocommerce-message .button{ display:none !important; }
/* contrast van de koppen in de totalen */
body.fb-shop .cart_totals table.shop_table tbody th,
body.fb-shop #order_review table.shop_table tfoot th{ color:var(--ink-2) !important; }
/* tikdoelen: producttitels, waardebonlink, ongedaan maken, voorwaardenvinkje */
body.fb-shop ul.products li.product a.ast-loop-product__link, body.fb-shop ul.products li.product h2 a{ display:inline-block; padding-block:.45rem; }
body.fb-shop .showcoupon, body.fb-shop .woocommerce-message a.restore-item{ display:inline-block; padding:.6rem 0; }
body.fb-shop #terms, body.fb-shop .woocommerce-form__input-checkbox{ width:20px !important; height:20px !important; }
body.fb-shop .woocommerce-terms-and-conditions-wrapper label{ padding-block:.4rem; display:inline-flex; gap:.5rem; align-items:flex-start; }
/* bronregel en lopende tekst niet te breed */
.fbx-bronnen{ max-width:46rem; }
.fbx-p{ max-width:40rem; }

/* --- cyclus 5 --- */
.fbx-bronnen{ max-width:34rem; }
.fbx-retail{ grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) !important; }
body.fb-shop .order-total small.includes_tax, body.fb-shop .order-total small.includes_tax .amount{ color:var(--ink-2) !important; }
body.fb-shop input[type=radio]{ width:18px !important; height:18px !important; }

/* --- cyclus 6 --- */
/* tablet: tegeltitels niet midden in een woord afbreken */
@media (min-width:641px) and (max-width:1100px){
  .fbx-tegel-tekst h3{ font-size:1.12rem; hyphens:auto; overflow-wrap:normal; word-break:normal; }
}
/* losse zakken ook op tablet liggend */
@media (min-width:641px) and (max-width:860px){
  .fbx-los .woocommerce ul.products{ grid-template-columns:1fr 1fr !important; }
  .fbx-los .woocommerce ul.products li.product{ display:grid !important; grid-template-columns:120px 1fr; gap:1rem; align-items:center; padding:1rem !important; }
  .fbx-los .woocommerce ul.products li.product a img{ margin:0 !important; }
  .fbx-los .woocommerce ul.products li.product .button{ white-space:normal; }
}

/* --- cyclus 7: rustiger typeschaal, mobiel minstens 16 px lopende tekst --- */
.fbx-hero-getal span{ font-size:max(.78rem,12px) !important; }
.fbx-p, .fbx-retail-kaart p, .fbx-faq details p, .fbx-stappen span, .fbx-lijst li{ font-size:max(1.05rem,16px) !important; }
.fbx-lead{ font-size:max(clamp(1.05rem,1.4vw,1.2rem),17px) !important; }
.fbx-bronnen{ font-size:13px; }
.fbx-ondertekening, .fbx-tekstlink{ font-size:max(.95rem,15px) !important; }
.fbx-tegel-tekst p{ font-size:max(.95rem,15px) !important; }

/* --- cyclus 8 --- */
/* stappen op de telefoon: nummer naast de tekst, minder lucht */
@media (max-width:860px){
  .fbx-stappen{ gap:.8rem; }
  .fbx-stappen li{ display:grid !important; grid-template-columns:44px 1fr; column-gap:1rem; row-gap:.25rem; padding:1.2rem !important; }
  .fbx-stappen li::before{ grid-row:1 / span 2; margin:0 !important; }
}
/* vaste bestelbalk op de telefoon */
.fbx-plakbalk{ display:none; }
@media (max-width:760px){
  .fbx-plakbalk{
    display:flex; position:fixed; z-index:60; left:12px; right:12px; bottom:12px;
    align-items:center; justify-content:space-between; gap:.8rem;
    padding:.6rem .6rem .6rem 1rem; border-radius:999px; background:var(--ink); color:#F7F3EC;
    box-shadow:0 14px 34px rgba(36,20,8,.35); font:600 .95rem/1.2 var(--body);
    transform:translateY(140%); transition:transform .3s;
  }
  .fbx-plakbalk.is-zichtbaar{ transform:none; }
  .fbx-plakbalk .fbx-knop{ margin:0; padding:.75rem 1.1rem; font-size:.95rem; min-height:44px; }
}
@media (prefers-reduced-motion:reduce){ .fbx-plakbalk{ transition:none; } }

/* --- cyclus 10: typeschaal samengevoegd (12, 13, 15, 16, 17, 20, 22, 30, 40, 45, 74 op desktop) --- */
@media (min-width:861px){
  .fbx-faq summary{ font-size:17px !important; }
  .fbx-lead{ font-size:20px !important; }
  body.fb-shop ul.products li.product .price, body.fb-shop ul.products li.product .price bdi{ font-size:22px !important; }
  .fbx-voet-cta h2{ font-size:40px !important; }
}
/* betaalmethodes: het hele label is het tikvlak */
body.fb-shop #payment ul.payment_methods li > label{ display:inline-block; padding:.55rem 0; }

/* ===================================================================
   Ronde 4, 29-10-2026: Impeccable-detector en craft floor
   =================================================================== */
/* kleine tekst haalt WCAG AA op papier, crème en saliegroen (4,9 tot 5,7) */
body.fb-shop{ --ink-3:#76644F; }

/* hero zonder gloeiend waas: het warme verloop en de chipsfoto dragen het vlak */
.fbx-hero{ background:linear-gradient(160deg,#2B1A0F 0%,#3A200F 55%,#5A2A12 100%); }
.fbx-bewijs::before{ box-shadow:none; }

/* meldingen: rand rondom in plaats van een dikke gekleurde zijrand */
body.fb-shop .woocommerce-message{ border:1px solid rgba(78,112,64,.35) !important; }

/* regellengte 65 tot 75 tekens, ook in de productbeschrijving */
.fbx-p,.fbx-lead{ max-width:36rem; }  /* 68ch is in Karla te breed (ruim 85 tekens); 36rem geeft 72 tot 76 */
body.fb-shop .woocommerce-Tabs-panel p,
body.fb-shop .woocommerce-Tabs-panel li,
body.fb-shop .woocommerce-product-details__short-description{ max-width:36rem; }
body.fb-shop div.product .woocommerce-tabs .panel h2.fbx-tabkop{
  font:700 1.25rem/1.25 var(--display) !important; color:var(--ink); margin:2.2rem 0 .7rem !important; letter-spacing:-.01em;
}

/* geen losse woorden op de laatste regel, koppen in balans */
body.fb-shop p, body.fb-shop li, body.fb-shop figcaption, body.fb-shop summary, body.fb-shop td{ text-wrap:pretty; }
body.fb-shop h1, body.fb-shop h2, body.fb-shop h3, .fbx-citaat{ text-wrap:balance; }

/* de delen die de browser tekent, in de huisstijl */
body.fb-shop ::selection{ background:#F2C9A4; color:var(--ink); }
body.fb-shop input, body.fb-shop textarea{ caret-color:var(--amber-diep); }
body.fb-shop{ scrollbar-color:#C9B9A3 var(--paper); }
body.fb-shop a:focus-visible, body.fb-shop button:focus-visible, body.fb-shop summary:focus-visible,
body.fb-shop input:focus-visible, body.fb-shop select:focus-visible, body.fb-shop [tabindex]:focus-visible{
  outline:3px solid #B5561F; outline-offset:3px; border-radius:6px;
}
.fbx-sectie--ink a:focus-visible, .fbx-hero a:focus-visible{ outline-color:#E9A46A; }
body.fb-shop a{ text-underline-offset:.18em; }
/* prijzen en bedragen op gelijke cijferbreedte, zodat kolommen recht staan */
body.fb-shop .price, body.fb-shop .amount, body.fb-shop .fb-per-zak, .fbx-tabel td, body.fb-shop .shop_table td{ font-variant-numeric:tabular-nums; }
/* lopende tekst op webshopvoorwaarden en andere tekstpagina's: 68 tekens per regel, kop hoort bij de tekst eronder */
body.fb-shop .entry-content > p, body.fb-shop .entry-content > ul, body.fb-shop .entry-content > ol,
body.fb-shop .entry-content .wp-block-paragraph, body.fb-shop .entry-content .wp-block-list{ max-width:35rem; }
/* in DM Sans van het thema is 68ch te breed (744 px, 100 tekens); 35rem geeft ongeveer 72 tekens */
body.fb-shop .entry-content h2.wp-block-heading{ margin:2.6rem 0 .7rem !important; }
body.fb-shop .entry-content > h2.wp-block-heading:first-child{ margin-top:0 !important; }
/* de link Wissen bij de smaakkeuze op vol contrast */
body.fb-shop .reset_variations{ opacity:1 !important; }

/* ===================================================================
   Ronde 5, 29-10-2026: het grotere probleem (missie)
   Geen bladeren, wereldbollen of groene accenten bij de missie: dat
   leest als een impliciete milieuclaim (ACM, EmpCo). Feiten met bron.
   =================================================================== */
.fbx-missiestrook{ background:var(--cream); border-bottom:1px solid var(--rule); }
.fbx-missiestrook p{
  max-width:44rem; margin:0 auto; padding:1.15rem 0; text-align:center;
  font:400 1.05rem/1.55 var(--body); color:var(--ink);
}
.fbx-missiestrook a{ color:var(--amber-diep); font-weight:700; white-space:nowrap; }
.fbx-missiestrook a::after{ content:" \2192"; }
@media (max-width:760px){ .fbx-missiestrook p{ text-align:left; font-size:1rem; } .fbx-missiestrook a{ white-space:normal; } }

.fbx-feiten{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:1.6rem 0; background:var(--rule); border:1px solid var(--rule); border-radius:12px; overflow:hidden; }
.fbx-feiten > div{ background:var(--paper); padding:1rem 1.1rem; }
.fbx-sectie--cream .fbx-feiten > div{ background:#FFFDF9; }
.fbx-feiten dt{ font:700 clamp(1.6rem,2.6vw,2.1rem)/1 var(--display); color:var(--amber-diep); margin:0 0 .35rem; font-variant-numeric:tabular-nums; }
.fbx-feiten dd{ margin:0; font:400 .95rem/1.45 var(--body); color:var(--ink-2); }
@media (max-width:420px){ .fbx-feiten{ grid-template-columns:1fr; } }

.fbx-missieregel{ margin:1rem 0 0; font:400 .95rem/1.5 var(--body); color:var(--ink-2); }
.fbx-missieregel a{ color:var(--amber-diep); font-weight:700; }
.fbx-afreken-som{ margin:0 0 1rem; padding:.9rem 1rem; background:var(--cream); border:1px solid var(--rule); border-radius:10px; font:500 .98rem/1.5 var(--body); color:var(--ink); }

.fbx-missie-kop{ padding-block:clamp(3.5rem,7vw,5.5rem); }
.fbx-missie-kop .fbx-display{ max-width:16ch; }
.fbx-missie-kop .fbx-lead{ color:#E3D7C6; max-width:40rem; }
.fbx-knop--licht{ background:transparent; color:var(--ink) !important; border-color:var(--ink); }
.fbx-knop--licht:hover{ background:var(--ink); color:#F7F3EC !important; border-color:var(--ink); }
.fbx-bronnenlijst{ margin:2.4rem 0 0; padding-left:1.2rem; display:grid; gap:.35rem; }
.fbx-bronnenlijst li{ font:400 .85rem/1.5 var(--body); color:var(--ink-3); }
.fbx-missie-kop + .fbx-sectie .fbx-split{ align-items:start; }
/* missiepagina: de donkere kop sluit aan op het menu, zoals de hero op de winkelpagina */
body.fb-missie .site-content{ padding-top:0 !important; }
body.fb-missie .site-content > .ast-container, body.fb-missie #primary, body.fb-missie .ast-article-single{ margin:0 !important; padding:0 !important; max-width:none; }
body.fb-missie .entry-content > *{ margin-block:0; }
.fbx-split-tekst .fbx-p{ margin:0 0 1rem !important; }
.fbx-feiten > div:last-child:nth-child(odd){ grid-column:1 / -1; }
/* pre-ordermelding en waardebon: rand rondom in plaats van een dikke gekleurde zijrand of bovenrand */
body.fb-shop .fb-preorder-balk, body.fb-shop .fb-levering{ border:1px solid rgba(78,112,64,.35) !important; border-radius:12px !important; }
body.fb-shop .woocommerce-info{ border:1px solid rgba(78,112,64,.35) !important; }
.fbx-bronnen{ max-width:25rem; }  /* kleine letter (13px Karla): 25rem is ongeveer 74 tekens */

/* ===================================================================
   Ronde 6, 29-10-2026: FineBites als merk, de chips als eerste product
   =================================================================== */
.fbx-missiestrook{ background:var(--paper); }
.fbx-lijn{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.fbx-lijn-kaart{
  display:flex; flex-direction:column; gap:.55rem; padding:1.6rem 1.5rem 1.5rem;
  background:var(--paper); border:1px solid var(--rule); border-radius:16px;
  color:var(--ink) !important; text-decoration:none !important; transition:border-color .2s, transform .2s;
}
a.fbx-lijn-kaart:hover{ border-color:var(--amber); transform:translateY(-2px); }
.fbx-lijn-kaart h3{ font:700 1.45rem/1.15 var(--display) !important; margin:0 !important; color:var(--ink); }
.fbx-lijn-kaart p{ margin:0; font:400 1rem/1.6 var(--body); color:var(--ink-2); }
.fbx-lijn-kaart .fbx-pijl{ margin-top:auto; padding-top:.6rem; font-weight:700; color:var(--amber-diep); }
.fbx-lijn-status{ align-self:flex-start; font:700 .8rem/1 var(--body); padding:.4rem .65rem; border-radius:999px; background:var(--cream); color:var(--ink-2); border:1px solid var(--rule); }
.fbx-lijn-kaart--nu{ border-color:#D9B79C; }
.fbx-lijn-kaart--nu .fbx-lijn-status{ background:#B5561F; color:#fff; border-color:#B5561F; }
@media (max-width:900px){ .fbx-lijn{ grid-template-columns:1fr; } }
.fbx-lijn-status{ font-size:13px !important; }
.fbx-lijn-kaart .fbx-pijl{ text-decoration:none !important; min-height:44px; display:inline-flex; align-items:center; }
.fbx-lijn-kaart .fbx-pijl:hover{ text-decoration:underline !important; }
.fbx-split-beeld figcaption{ font-size:13px !important; }

/* merkregel onder de kop (30-10-2026): B2C "Quality nutrition" */
.fbx-merkregel{ font:600 .95rem/1.3 var(--body); letter-spacing:.08em; text-transform:uppercase; margin:-.4rem 0 1.1rem; color:var(--amber-diep); }
.fbx-hero .fbx-merkregel, .fbx-sectie--ink .fbx-merkregel{ color:var(--amber-licht); }
.fbx-kop .fbx-p + .fbx-h2{ margin-top:2.6rem; }
.fbx-kop .fbx-h2 + .fbx-p{ margin-top:1rem; }

/* 30-10-2026: kopblokken gecentreerd en breder, zodat korte koppen niet op twee regels breken
   en de rechterhelft niet leeg blijft. Uitzondering: de vragen staan naast elkaar. */
.fbx-kop{ margin-inline:auto; text-align:center; max-width:900px; }
.fbx-kop .fbx-lead, .fbx-kop .fbx-p{ margin-inline:auto; max-width:40rem; }
.fbx-kop .fbx-knoppen{ justify-content:center; }
.fbx-kop--rij{ display:block; margin-bottom:2.6rem; }
.fbx-kop--rij .fbx-lead{ max-width:40rem; margin-top:1rem; }
.fbx-faq-grid .fbx-kop{ text-align:left; margin-inline:0; max-width:none; }
.fbx-faq-grid .fbx-kop .fbx-p{ margin-inline:0; }
.fbx-bronnenlijst{ margin-inline:auto; }
.fbx-sectie--ink .fbx-h2{ color:#F7F3EC; }
.fbx-sectie--ink .fbx-lead{ color:#E3D7C6; }
/* het thema zet elke h2 op 44rem links; in een gecentreerd kopblok mag de kop de volle breedte nemen */
body.fb-shop .entry-content .fbx-kop .fbx-h2{ max-width:none; margin-inline:auto; }

/* 30-10-2026 nieuwe volgorde: hero met directe knop naar het mandje */
.fbx-hero-klein{ font:500 .95rem/1.5 var(--body); color:#E3D7C6; margin:-.6rem 0 .9rem; }
.fbx-momenten dt{ font-size:clamp(1.25rem,1.8vw,1.45rem); }
.fbx-feiten--rij{ grid-template-columns:repeat(4,minmax(0,1fr)); max-width:960px; margin:0 auto 1.6rem; }
@media (max-width:860px){ .fbx-feiten--rij{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:420px){ .fbx-feiten--rij{ grid-template-columns:1fr; } }
.fbx-midden{ text-align:center; margin:0; }
.fbx-los-tekst{ text-align:center; padding-right:0; max-width:40rem; margin-inline:auto; }
.fbx-los-grid{ grid-template-columns:1fr; }


/* ondertitel onder de hero-kop (3-11-2026) */
.fbx-ondertitel{ font:600 clamp(1.25rem,2vw,1.6rem)/1.3 var(--display, var(--body)); margin:-.2rem 0 .9rem; color:var(--ink); }
.fbx-hero .fbx-ondertitel{ color:#F7F3EC; }
.fbx-ondertitel{ margin:.5rem 0 1.4rem; }
.fbx-ondertitel + .fbx-merkregel{ margin-top:0; }
body.fb-shop .entry-content .fbx-hero .fbx-ondertitel{ margin:.5rem 0 1.4rem; }
body.fb-shop .entry-content .fbx-hero .fbx-ondertitel + .fbx-merkregel{ margin-top:0; }

/* ronde 9 (3-11-2026): secties zonder foto, korte uitleg bij de chips */
.fbx-split--zonder-beeld{ display:block; max-width:44rem; margin-inline:auto; text-align:center; }
.fbx-split--zonder-beeld .fbx-p{ margin-inline:auto; }
.fbx-split--zonder-beeld .fbx-feiten{ text-align:left; }
.fbx-waarom-chips{ margin:1rem auto 0; max-width:40rem; font-style:normal; }
.fbx-waarom-chips .fbx-ondertekening{ display:block; margin-top:.4rem; font-size:.9rem; }
#waarom .fbx-feiten dt{ font-size:clamp(1.25rem,1.9vw,1.6rem) !important; word-break:normal !important; overflow-wrap:normal !important; hyphens:none; }

/* bestelkaarten op /winkel/ (3-11-2026) */
.fbx-bestel-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem; margin-top:2rem; align-items:stretch; }
.fbx-bestel-kaart{ position:relative; display:flex; flex-direction:column; gap:.6rem; background:#FFFDF9; border:1px solid #E3D7C6; border-radius:18px; padding:1.3rem; text-align:left; }
.fbx-bestel-kaart--uitgelicht{ border:2px solid var(--amber-diep, #B5561F); box-shadow:0 10px 30px rgba(36,20,8,.08); }
.fbx-bestel-label-top{ position:absolute; top:-.8rem; left:1.3rem; background:var(--amber-diep, #B5561F); color:#fff; font:600 .75rem/1 var(--body); letter-spacing:.04em; padding:.4rem .7rem; border-radius:99px; }
.fbx-bestel-beeld{ display:flex; justify-content:center; height:170px; margin-bottom:.3rem; }
.fbx-bestel-beeld img{ height:100%; width:auto; object-fit:contain; }
.fbx-bestel-beeld--duo img + img{ margin-left:-38px; transform:rotate(6deg); }
.fbx-bestel-kaart h3{ margin:0; font-size:1.3rem; }
body.fb-shop .entry-content .fbx-bestel-prijs{ margin:0; font:700 1.35rem/1.2 var(--body); color:var(--ink); }
.fbx-bestel-prijs span{ display:block; font-weight:400; font-size:.9rem; color:var(--ink-2); }
body.fb-shop .entry-content .fbx-bestel-tekst{ margin:0; font-size:.95rem; line-height:1.5; color:var(--ink-2); flex:1; }
.fbx-bestel-keuzes{ display:flex; gap:.6rem; }
.fbx-bestel-label{ display:flex; flex-direction:column; gap:.25rem; font:600 .8rem/1.2 var(--body); color:var(--ink-2); flex:1; }
.fbx-bestel-label select, .fbx-bestel-label input{ font:400 1rem/1.2 var(--body); padding:.55rem .6rem; border:1px solid #D9CBB6; border-radius:10px; background:#fff; color:var(--ink); width:100%; min-height:44px; }
.fbx-bestel-label input{ max-width:5.5rem; }
.fbx-bestel-kaart .fbx-knop{ width:100%; justify-content:center; text-align:center; margin-top:.3rem; cursor:pointer; }
.fbx-bestel-smaken{ margin-top:1.4rem; }
@media (max-width:1100px){ .fbx-bestel-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .fbx-bestel-grid{ grid-template-columns:1fr; } .fbx-bestel-beeld{ height:140px; } }.fbx-bestel-kaart .fbx-knop--rand{ background:transparent !important; color:var(--ink) !important; border:2px solid var(--ink) !important; }
.fbx-bestel-kaart .fbx-knop--rand:hover{ background:var(--ink) !important; color:#F7F3EC !important; }

/* koplettertype: Caprasimo als vervanger voor Ketchup Manis (3-11-2026) */
:root{ --display:'Caprasimo',Georgia,serif !important; }
body.fb-shop h1, body.fb-shop h2, body.fb-shop h3, body.fb-shop .fbx-display, body.fb-shop .fbx-h2, body.fb-shop .fbx-h3, body.fb-shop .fbx-ondertitel, body.fb-shop .fbx-feiten dt, body.fb-shop .fbx-citaat, body.fb-shop .woocommerce-loop-product__title, body.fb-shop .product_title{ font-family:'Caprasimo',Georgia,serif !important; font-weight:400 !important; letter-spacing:0 !important; }
/* verdeling in gemengde pakketten en wisselende afbeelding (3-11-2026) */
.fbx-bestel-keuzes{ flex-wrap:wrap; }
.fbx-bestel-label--smaak{ flex:1 1 9rem; }
.fbx-bestel-label--aantal{ flex:0 0 5rem; }
.fbx-bestel-label select{ font-size:.95rem; padding-right:1.6rem; }
.fbx-verdeling{ background:var(--cream); border-radius:12px; padding:.7rem .8rem; display:flex; flex-direction:column; gap:.45rem; }
.fbx-verdeling[hidden]{ display:none; }
body.fb-shop .entry-content .fbx-verdeling-kop{ margin:0; font:600 .8rem/1.2 var(--body); color:var(--ink-2); }
.fbx-verdeling-rij{ display:grid; grid-template-columns:1fr 36px 3rem 36px; align-items:center; gap:.35rem; font:500 .92rem/1.2 var(--body); color:var(--ink); }
.fbx-verdeling-rij button{ width:36px; height:36px; border-radius:50%; border:1.5px solid var(--ink); background:#fff; color:var(--ink); font:600 1.1rem/1 var(--body); cursor:pointer; padding:0; }
.fbx-verdeling-rij button:hover{ background:var(--ink); color:#F7F3EC; }
.fbx-verdeling-rij input{ width:3rem; text-align:center; border:0; background:transparent; font:700 1.05rem/1 var(--body); color:var(--ink); padding:0; }
body.fb-shop .entry-content .fbx-verdeling-totaal{ margin:0; font:400 .8rem/1.2 var(--body); color:var(--ink-3); text-align:right; }

/* woordmerk in de bovenste balk: groter en ruimer gespatieerd (3-11-2026) */
.fbx-kopbalk .fbx-logo span{ font-size:1.6rem !important; letter-spacing:.045em !important; font-weight:400 !important; }
.fbx-kopbalk .fbx-logo img{ width:42px; }

/* afwisselende achtergronden: pre-order nu cream, stappen wit (3-11-2026) */
#pre-order .fbx-stappen li{ background:var(--paper) !important; }

/* leesbaarheid: kleine koppen niet in het dikke koplettertype (3-11-2026) */
body.fb-shop .fbx-faq summary, body.fb-shop .fbx-voet h3, body.fb-shop .fbx-retail-kaart h3, body.fb-shop .fbx-stappen b, body.fb-shop .fbx-lijn-kaart h3{ font-family:var(--body) !important; font-weight:700 !important; letter-spacing:.005em !important; }
body.fb-shop .fbx-faq summary{ font-size:1.08rem !important; line-height:1.4 !important; color:var(--ink) !important; }

/* ronde 11 (3-11-2026): leesbaarheid, meer contrast tussen secties, speelse achtergronden */

/* 1. Caprasimo alleen op grote koppen; alles wat klein is in Karla vet */
body.fb-shop h3, body.fb-shop h4, body.fb-shop h5, body.fb-shop h6,
body.fb-shop .fbx-h3, body.fb-shop .woocommerce-loop-product__title,
body.fb-shop .wc-block-components-product-name, body.fb-shop .wc-block-components-title,
body.fb-shop .woocommerce-tabs h2, body.fb-shop .related h2, body.fb-shop .cart_totals h2,
body.fb-shop #order_review_heading, body.fb-shop .woocommerce-billing-fields h3{
  font-family:var(--body) !important; font-weight:700 !important; letter-spacing:.005em !important; color:var(--ink);
}
body.fb-shop .fbx-sectie--ink h3{ color:#F7F3EC; }
/* uitzondering: de namen op de bestelkaarten zijn groot genoeg voor het koplettertype */
body.fb-shop .fbx-bestel-kaart h3{ font-family:'Caprasimo',Georgia,serif !important; font-weight:400 !important; font-size:1.5rem !important; letter-spacing:.01em !important; }
/* grote koppen iets ruimer gespatieerd, dat leest prettiger */
body.fb-shop h1, body.fb-shop h2, body.fb-shop .fbx-display, body.fb-shop .fbx-h2, body.fb-shop .fbx-ondertitel, body.fb-shop .product_title{ letter-spacing:.012em !important; }
body.fb-shop .fbx-feiten dt{ letter-spacing:.015em !important; }

/* 2. duidelijk verschil tussen wit en creme */
body.fb-shop .fbx-sectie{ position:relative; background-color:#FFFDF9; }
body.fb-shop .fbx-sectie--cream{ background-color:#F2E3CC; }
body.fb-shop .fbx-sectie--cream .fbx-p, body.fb-shop .fbx-sectie--cream .fbx-lead{ color:#4F3E2F; }
body.fb-shop .fbx-sectie--cream .fbx-stappen li, body.fb-shop .fbx-sectie--cream .fbx-feiten > div,
body.fb-shop .fbx-sectie--cream .fbx-retail-kaart{ background:#FFFDF9 !important; border-color:#E6D3B5 !important; }
body.fb-shop .fbx-sectie--cream .fbx-retail-kaart{ border-radius:18px; padding:1.4rem; }

/* 3. speelse achtergronden: zwevende chipjes en blaadjes, heel licht */
body.fb-shop .fbx-sectie{
  background-image:radial-gradient(rgba(196,98,42,.10) 1.3px, transparent 1.5px);
  background-size:24px 24px;
}
body.fb-shop .fbx-sectie--cream{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='320'%3E%3Cg fill='%23C4622A' fill-opacity='.10'%3E%3Cpath d='M38 52l26-14 18 30-26 14z'/%3E%3Cpath d='M214 30l28 8-8 32-28-8z'/%3E%3Cpath d='M262 196l22-18 20 24-22 18z'/%3E%3Cpath d='M86 236l30-6 6 30-30 6z'/%3E%3Cpath d='M160 140l16-22 24 16-16 22z'/%3E%3C/g%3E%3Cg fill='%238F4318' fill-opacity='.07'%3E%3Cpath d='M290 92c-14-4-22-16-20-30 14 4 22 16 20 30z'/%3E%3Cpath d='M20 170c4-14 16-22 30-20-4 14-16 22-30 20z'/%3E%3Cpath d='M180 292c-8-12-6-26 4-36 8 12 6 26-4 36z'/%3E%3C/g%3E%3C/svg%3E");
  background-size:320px 320px;
}
body.fb-shop .fbx-sectie--ink{
  background-color:var(--ink);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cg fill='%23E9A46A' fill-opacity='.08'%3E%3Cpath d='M40 50l24-13 17 28-24 13z'/%3E%3Cpath d='M200 34l26 8-8 30-26-8z'/%3E%3Cpath d='M240 190l20-16 18 22-20 16z'/%3E%3Cpath d='M80 220l28-6 6 28-28 6z'/%3E%3Cpath d='M150 130l15-20 22 15-15 20z'/%3E%3C/g%3E%3C/svg%3E");
  background-size:300px 300px;
}
/* golfrand onder elke creme sectie, in de kleur van de volgende witte sectie */
body.fb-shop .fbx-sectie--cream + .fbx-sectie:not(.fbx-sectie--cream):not(.fbx-sectie--ink)::before{
  content:''; position:absolute; left:0; right:0; top:-1px; height:26px; pointer-events:none;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 26' preserveAspectRatio='none'%3E%3Cpath d='M0 0h1440v6c-120 18-240 18-360 6S840-6 720 6 480 24 360 12 120-6 0 6z' fill='%23F2E3CC'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
@media (prefers-reduced-motion:no-preference){
  body.fb-shop .fbx-bestel-kaart{ transition:transform .2s ease, box-shadow .2s ease; }
  body.fb-shop .fbx-bestel-kaart:hover{ transform:translateY(-4px); box-shadow:0 14px 34px rgba(36,20,8,.10); }
}
body.fb-shop .fbx-bestel-grid{ grid-template-columns:repeat(4,minmax(0,1fr)); }
body.fb-shop .fbx-bestel-kaart h3{ font-size:clamp(1.15rem,1.45vw,1.45rem) !important; }
@media (max-width:1100px){ body.fb-shop .fbx-bestel-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px){ body.fb-shop .fbx-bestel-grid{ grid-template-columns:1fr; } body.fb-shop .fbx-bestel-kaart h3{ font-size:1.45rem !important; } }

/* leesbaarheid overal: het koplettertype alleen op grote koppen, de rest (prijzen, getallen, kleine koppen) in Karla (3-11-2026) */
:root{ --display:Karla,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important; }
body.fb-shop h1, body.fb-shop .fbx-display, body.fb-shop .fbx-h2, body.fb-shop .fbx-ondertitel, body.fb-shop .fbx-feiten dt, body.fb-shop .product_title, body.fb-shop .fbx-voet-cta h2, body.fb-shop .related.products > h2, body.fb-shop .fbx-logo span, body.fb-shop .fbx-bestel-kaart h3{ font-family:'Caprasimo',Georgia,serif !important; font-weight:400 !important; }
body.fb-shop .woocommerce-tabs h2, body.fb-shop .woocommerce-tabs h3, body.fb-shop .cart_totals h2, body.fb-shop .price, body.fb-shop .amount, body.fb-shop .fbx-getallen b, body.fb-shop .fbx-hero-getal b{ font-family:var(--body) !important; font-weight:700 !important; letter-spacing:0 !important; }
body.fb-shop .fbx-voet .fbx-logo span{ letter-spacing:.045em !important; font-size:1.45rem !important; }body.fb-shop .fbx-bestel-kaart h3{ font-size:clamp(1.05rem,1.22vw,1.4rem) !important; overflow-wrap:normal !important; word-break:normal !important; hyphens:none !important; }
@media (max-width:1100px){ body.fb-shop .fbx-bestel-kaart h3{ font-size:1.45rem !important; } }

/* ronde 12 (3-11-2026): een lettertype overal (Fraunces, zacht en rond, dicht bij Ketchup Manis) en hoog contrast */
:root{
  --body:'Fraunces',Georgia,serif !important;
  --display:'Fraunces',Georgia,serif !important;
  --ink:#1E1007 !important;
  --ink-2:#2E1A0C !important;
  --ink-3:#3B2414 !important;
}
/* :not(#fbx) geeft deze regels voorrang op alle eerdere lettertyperegels */
body.fb-shop:not(#fbx), body.fb-shop:not(#fbx) *:not(svg):not(path):not(i){
  font-family:'Fraunces',Georgia,serif !important;
  font-optical-sizing:auto;
  font-variation-settings:'SOFT' 60,'WONK' 0;
}
body.fb-shop:not(#fbx){ color:var(--ink); }
/* koppen: zwaar en extra zacht, zoals Ketchup Manis */
body.fb-shop:not(#fbx) :is(h1,h2,.fbx-display,.fbx-h2,.fbx-ondertitel,.product_title,.fbx-logo span,.fbx-feiten dt,.fbx-bestel-kaart h3,.fbx-voet-cta h2,.related.products > h2){
  font-weight:800 !important; font-variation-settings:'SOFT' 100,'WONK' 0 !important; letter-spacing:.005em !important;
}
body.fb-shop:not(#fbx) .fbx-display{ font-weight:900 !important; }
/* kleine koppen, knoppen en labels: halfvet, goed leesbaar */
body.fb-shop:not(#fbx) :is(h3,h4,h5,h6,summary,b,strong,.fbx-knop,button,.price,.amount,label,.fbx-bestel-label,.fbx-verdeling-rij,dt){
  font-weight:700 !important;
}
body.fb-shop:not(#fbx) :is(p,li,dd,td,span,a,input,select){ letter-spacing:0; }

/* hoog contrast: geen grijs meer op licht */
body.fb-shop:not(#fbx) :is(.fbx-sectie:not(.fbx-sectie--ink), .fbx-usp, .fbx-bestel-kaart, .fbx-lijn-kaart, .fbx-retail-kaart, .fbx-stappen, .fbx-faq, .woocommerce, .summary, .woocommerce-tabs) :is(p,li,dd,label,small,figcaption,td,th){
  color:var(--ink-2);
}
body.fb-shop:not(#fbx) :is(.fbx-p,.fbx-lead,.fbx-bestel-tekst,.fbx-verdeling-totaal,.fbx-verdeling-kop,.fbx-bestel-prijs span,.fbx-feiten dd){ color:var(--ink-2) !important; }
/* donkere vlakken: licht creme in plaats van grijsbruin */
body.fb-shop:not(#fbx) :is(.fbx-sectie--ink,.fbx-hero,.fbx-voet,.fbx-voet-cta) :is(p,li,dd,small){ color:#F3EADC; }
body.fb-shop:not(#fbx) .fbx-voet a:not(.fbx-knop){ color:#F3EADC; }
body.fb-shop:not(#fbx) :is(.fbx-sectie--ink,.fbx-hero) .fbx-lead{ color:#F3EADC !important; }
body.fb-shop:not(#fbx) .fbx-sectie--ink .fbx-knop--rand, body.fb-shop:not(#fbx) .fbx-hero .fbx-knop--rand{ color:#F7F3EC !important; }
body.fb-shop:not(#fbx) .fbx-voet a:hover{ color:#E9A46A; }
/* links en accenten blijven roestbruin, donker genoeg op creme */
body.fb-shop:not(#fbx) :is(.fbx-tekstlink,.fbx-pijl){ color:#7A3510 !important; }

/* kaarttitel past altijd binnen de kaart */
body.fb-shop .fbx-bestel-kaart{ container-type:inline-size; }
body.fb-shop:not(#fbx) .fbx-bestel-kaart h3{ font-size:clamp(1rem, 8.6cqi, 1.5rem) !important; white-space:nowrap; }

/* #waarom opnieuw: vier losse kaarten met icoon, alles netjes gecentreerd (3-11-2026) */
body.fb-shop #waarom .fbx-kop--midden{ max-width:46rem; margin:0 auto; text-align:center; }
body.fb-shop #waarom .fbx-kop--midden .fbx-lead{ max-width:40rem; margin:1.1rem auto 0; font-size:1.15rem; line-height:1.65; }
body.fb-shop .fbx-pijlers{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.25rem; max-width:1040px; margin:2.8rem auto 0; }
body.fb-shop .fbx-pijler{ background:#FFFDF9; border:1px solid #E6D3B5; border-radius:22px; padding:1.7rem 1.4rem 1.6rem; text-align:center; box-shadow:0 8px 24px rgba(36,20,8,.06); transition:transform .2s ease, box-shadow .2s ease; }
body.fb-shop .fbx-pijler:hover{ transform:translateY(-4px); box-shadow:0 14px 32px rgba(36,20,8,.10); }
body.fb-shop .fbx-pijler-icoon{ display:inline-flex; align-items:center; justify-content:center; width:62px; height:62px; border-radius:50%; margin-bottom:1rem; color:#FFFDF9; }
body.fb-shop .fbx-pijler--voedzaam .fbx-pijler-icoon{ background:#4E7040; }
body.fb-shop .fbx-pijler--lekker .fbx-pijler-icoon{ background:#C24A33; }
body.fb-shop .fbx-pijler--makkelijk .fbx-pijler-icoon{ background:#C4622A; }
body.fb-shop .fbx-pijler--herkenbaar .fbx-pijler-icoon{ background:#8F4318; }
body.fb-shop:not(#fbx) .fbx-pijler h3{ margin:0 0 .45rem; font-size:1.45rem !important; font-weight:800 !important; font-variation-settings:'SOFT' 100,'WONK' 0 !important; color:var(--ink) !important; }
body.fb-shop:not(#fbx) .fbx-pijler p{ margin:0 auto; max-width:15rem; font-size:1.02rem; line-height:1.5; color:var(--ink-2) !important; }
@media (max-width:980px){ body.fb-shop .fbx-pijlers{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px){ body.fb-shop .fbx-pijlers{ grid-template-columns:1fr; gap:.9rem; } body.fb-shop .fbx-pijler{ display:grid; grid-template-columns:56px 1fr; column-gap:1rem; text-align:left; padding:1.1rem 1.2rem; align-items:center; } body.fb-shop .fbx-pijler-icoon{ width:52px; height:52px; margin:0; grid-row:span 2; } body.fb-shop:not(#fbx) .fbx-pijler h3{ font-size:1.25rem !important; margin:0; } body.fb-shop:not(#fbx) .fbx-pijler p{ margin:0; max-width:none; } }

/* missiepagina ronde 13 en losse zak in productlijsten (3-11-2026) */
body.fb-shop .fbx-kop--midden{ max-width:46rem; margin-inline:auto; text-align:center; }
body.fb-shop .fbx-kop--midden .fbx-lead, body.fb-shop .fbx-kop--midden .fbx-p{ margin-inline:auto; }
body.fb-shop .fbx-kop--midden .fbx-p{ margin-top:1rem; }
body.fb-shop .fbx-knoppen.fbx-midden, body.fb-shop .fbx-kop--midden .fbx-knoppen{ justify-content:center; margin-top:1.8rem; }
body.fb-shop .fbx-kop--midden .fbx-bewijs{ margin-top:1.2rem; }
body.fb-shop .fbx-missie-kop .fbx-display{ margin-bottom:1rem; }
body.fb-shop ul.products li.product a img, body.fb-shop ul.products li.product .wp-post-image{ width:100% !important; height:auto !important; aspect-ratio:1/1; object-fit:contain !important; background:#F3EEE6; border-radius:14px; padding:.9rem; box-sizing:border-box; outline:0 !important; border:0 !important; }
/* productpagina: beschrijving, ingredienten en voedingstabel over de volle breedte (3-11-2026) */
body.fb-shop div.product .woocommerce-tabs, body.fb-shop div.product .woocommerce-tabs .panel, body.fb-shop div.product .woocommerce-tabs .panel > *, body.fb-shop div.product .woocommerce-tabs .panel p, body.fb-shop div.product .woocommerce-tabs table{ max-width:none !important; width:100% !important; }
body.fb-shop div.product .woocommerce-tabs{ clear:both; float:none !important; grid-column:1 / -1; }

body.fb-shop .fbx-missie-kop .fbx-kop--midden{ max-width:62rem; }
body.fb-shop .fbx-missie-kop .fbx-display{ text-align:center; margin-inline:auto; max-width:none; }
body.fb-shop .fbx-kop--midden .fbx-bewijs{ display:flex; justify-content:center; text-align:center; }
body.fb-shop .fbx-kop--midden + .fbx-feiten--rij, body.fb-shop .fbx-wrap > .fbx-feiten--rij{ max-width:1040px; margin-inline:auto; }
body.fb-shop:not(#fbx) .fbx-feiten--rij dd{ font-size:1rem; line-height:1.45; }
body.fb-shop .fbx-bronnenlijst{ max-width:46rem; margin-inline:auto; }

/* titels en afbeeldingen op de bestelkaarten linken naar de productpagina (3-11-2026) */
body.fb-shop:not(#fbx) .fbx-bestel-link{ color:inherit !important; text-decoration:none !important; display:block; }
body.fb-shop:not(#fbx) h3 .fbx-bestel-link:hover{ text-decoration:underline !important; text-underline-offset:4px; }
body.fb-shop .fbx-bestel-link:hover .fbx-bestel-beeld img{ transform:scale(1.03); }
body.fb-shop .fbx-bestel-beeld img{ transition:transform .2s ease; }

/* ankers niet onder de vaste kopbalk laten vallen (3-11-2026) */
body.fb-shop #bestellen{ scroll-margin-top:120px; }
body.fb-shop :is(#smaken,#waarom,#pre-order,#assortiment,#kleinere-porties,#supermarkt,#vragen,#zakelijk){ scroll-margin-top:90px; }

/* verdeling: aantallen en knoppen recht onder elkaar (3-11-2026) */
body.fb-shop .fbx-verdeling-rij{ grid-template-columns:minmax(0,1fr) 36px 2.6rem 36px !important; column-gap:.4rem; }
body.fb-shop .fbx-verdeling-rij > span{ min-width:0; overflow-wrap:break-word; line-height:1.2; }
body.fb-shop .fbx-verdeling-rij input{ width:2.6rem !important; text-align:center !important; }
body.fb-shop .fbx-verdeling-rij{ grid-template-columns:minmax(0,1fr) 32px 2.2rem 32px !important; column-gap:.3rem; }
body.fb-shop:not(#fbx) .fbx-verdeling-rij > span{ overflow-wrap:normal !important; word-break:normal !important; hyphens:none; font-size:.9rem; }
body.fb-shop .fbx-verdeling-rij button{ width:32px !important; height:32px !important; }
body.fb-shop .fbx-verdeling-rij input{ width:2.2rem !important; }
body.fb-shop .fbx-verdeling{ padding:.7rem .7rem; }

/* smaakwissel op de productpagina van de losse zak (3-11-2026) */
body.fb-shop .fbx-smaakwissel{ display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; margin:1.1rem 0 1.2rem; }
body.fb-shop:not(#fbx) .fbx-smaakwissel-label{ font-weight:700 !important; color:var(--ink); margin-right:.3rem; }
body.fb-shop:not(#fbx) .fbx-smaakwissel-knop{ display:inline-flex; align-items:center; min-height:44px; padding:.5rem 1.15rem; border:2px solid var(--ink); border-radius:99px; color:var(--ink) !important; text-decoration:none !important; font-weight:700 !important; background:#fff; transition:background .15s ease, color .15s ease; }
body.fb-shop:not(#fbx) .fbx-smaakwissel-knop:hover{ background:#F2E3CC; }
body.fb-shop:not(#fbx) .fbx-smaakwissel-knop.is-actief{ background:var(--ink); color:#F7F3EC !important; }body.fb-shop .fbx-smaakwissel{ margin:.9rem 0 1rem; }

/* pakketten zonder smaakkeuze (3-11-2026) */
body.fbx-pakket-zonder-smaak table.variations, body.fbx-pakket-zonder-smaak .reset_variations, body.fbx-pakket-zonder-smaak .woocommerce-variation-description{ display:none !important; }
body.fb-shop .fbx-verdeling--los{ max-width:22rem; margin:0 0 1.1rem; }

body.fb-shop:not(#fbx) .fbx-knop--rand-donker{ background:transparent !important; color:var(--ink) !important; border:2px solid var(--ink) !important; }
body.fb-shop:not(#fbx) .fbx-knop--rand-donker:hover{ background:var(--ink) !important; color:#F7F3EC !important; }

/* winkelwagen: hele zak zichtbaar (3-11-2026) */
body.fb-shop .shop_table .product-thumbnail img, body.fb-shop .woocommerce-mini-cart img, body.fb-shop .wc-block-cart-item__image img, body.fb-shop .wc-block-components-order-summary-item__image img{ width:72px !important; height:72px !important; max-width:none !important; object-fit:contain !important; background:#F3EEE6; border-radius:10px; padding:4px; box-sizing:border-box; }

/* verdeling: totaal als derde regel, recht onder de aantallen (4-11-2026) */
body.fb-shop .fbx-verdeling-som{ border-top:1.5px solid var(--ink); padding-top:.5rem; margin-top:.15rem; }
body.fb-shop:not(#fbx) .fbx-verdeling-som > span{ font-weight:800 !important; }
body.fb-shop .fbx-verdeling-som output{ display:block; text-align:center; font:800 1.1rem/1 var(--body); color:var(--ink); }
body.fb-shop .fbx-verdeling-som i{ display:block; }

/* #waarom-kop op een regel op desktop; assortiment direct eronder (4-11-2026) */
body.fb-shop #waarom .fbx-kop--midden{ max-width:none; }
body.fb-shop #waarom .fbx-h2{ text-wrap:balance; }
@media (min-width:1100px){ body.fb-shop #waarom .fbx-h2{ white-space:nowrap; } }

/* pre-order als tijdlijn: streep over de hele breedte achter de stapkaarten (4-11-2026) */
body.fb-shop #pre-order{ overflow:hidden; }
body.fb-shop #pre-order .fbx-stappen{ position:relative; }
body.fb-shop #pre-order .fbx-stappen::before{ content:""; position:absolute; z-index:0; top:calc(2rem + 20px); left:calc(50% - 50vw); width:100vw; height:4px; border-radius:2px; background:#C4622A; }
body.fb-shop #pre-order .fbx-stappen li{ position:relative; z-index:1; background:#FFFDF9 !important; border:1.5px solid #E6D3B5; box-shadow:0 8px 24px rgba(36,20,8,.07); }
body.fb-shop #pre-order .fbx-stappen li::before{ background:#C4622A; box-shadow:0 0 0 5px #F2E3CC; }
@media (max-width:860px){ body.fb-shop #pre-order .fbx-stappen::before{ top:0; bottom:0; left:calc(1.2rem + 20px); width:4px; height:auto; } }

/* bestelpagina /alle-producten/ (4-11-2026) */
body.fb-shop .fbx-winkel-kop{ padding-bottom:3.4rem; }
body.fb-shop .fbx-winkel-voordelen{ list-style:none; margin:1.6rem auto 0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:.6rem; }
body.fb-shop:not(#fbx) .fbx-winkel-voordelen li{ margin:0; padding:.5rem 1rem .5rem 2.1rem; border-radius:999px; background:rgba(243,234,220,.12); border:1px solid rgba(243,234,220,.35); color:#F3EADC; font-weight:700 !important; font-size:.98rem; position:relative; }
body.fb-shop .fbx-winkel-voordelen li::before{ content:""; position:absolute; left:.85rem; top:50%; width:.7rem; height:.38rem; border-left:2.5px solid #E9A46A; border-bottom:2.5px solid #E9A46A; transform:translateY(-70%) rotate(-45deg); }
body.fb-shop #smaken .fbx-bestel-grid{ margin-top:0; }
body.fb-shop .fbx-feiten--drie{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; max-width:820px !important; margin-inline:auto; }
body.fb-shop .fbx-winkel-noot{ margin:2rem auto 0 !important; max-width:44rem; text-align:center; }
@media (max-width:600px){ body.fb-shop .fbx-feiten--drie{ grid-template-columns:1fr !important; } }

/* verzendtegels: altijd drie naast elkaar op desktop (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-feiten.fbx-feiten--drie{ display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; max-width:820px !important; margin:2.2rem auto 0 !important; }
body.fb-shop:not(#fbx) .fbx-feiten.fbx-feiten--drie > div{ text-align:center; }
@media (max-width:600px){ body.fb-shop:not(#fbx) .fbx-feiten.fbx-feiten--drie{ grid-template-columns:1fr !important; } }

body.fb-shop:not(#fbx) .fbx-feiten.fbx-feiten--drie > div{ grid-column:auto !important; }

/* feitentegels op de missie- en portiespagina gecentreerd (4-11-2026) */
body.fb-missie:not(#fbx) .fbx-feiten--rij > div{ text-align:center; }
body.fb-missie:not(#fbx) .fbx-feiten--rij dd{ margin-inline:auto; }

/* missiepagina: foto vroeger en nu naast elkaar (4-11-2026) */
body.fb-shop .fbx-voor-na{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.4rem; max-width:620px; margin:2.4rem auto 0; }
body.fb-shop .fbx-voor-na figure{ margin:0; background:#FFFDF9; border:1px solid #E6D3B5; border-radius:22px; padding:.7rem .7rem .9rem; box-shadow:0 8px 24px rgba(36,20,8,.07); }
body.fb-shop .fbx-voor-na img{ display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:16px; }
body.fb-shop:not(#fbx) .fbx-voor-na figcaption{ margin-top:.65rem; text-align:center; font-weight:800 !important; font-size:1.15rem; color:var(--ink); }
@media (max-width:480px){ body.fb-shop .fbx-voor-na{ gap:.8rem; } body.fb-shop .fbx-voor-na figure{ padding:.45rem .45rem .6rem; } }

/* missiepagina: samenwerking met de landbouw, rekenvoorbeeld boer Harms als infographic (4-11-2026) */
body.fb-shop .fbx-boer{ max-width:960px; margin:2.6rem auto 0; background:#FFFDF9; border:1.5px solid #E6D3B5; border-radius:26px; padding:2rem 2rem 1.8rem; box-shadow:0 10px 30px rgba(36,20,8,.07); }
body.fb-shop .fbx-boer--nl{ background:var(--ink); border-color:var(--ink); }
body.fb-shop .fbx-boer-kop{ text-align:center; max-width:40rem; margin:0 auto; }
body.fb-shop .fbx-boer-label{ display:inline-block; padding:.3rem .85rem; border-radius:999px; background:#4E7040; color:#FFFDF9; font-weight:700; font-size:.85rem; letter-spacing:.02em; }
body.fb-shop .fbx-boer--nl .fbx-boer-label{ background:#C4622A; }
body.fb-shop:not(#fbx) .fbx-boer-kop h3{ margin:.7rem 0 .4rem; font-size:1.8rem !important; font-weight:800 !important; font-variation-settings:'SOFT' 100,'WONK' 0 !important; color:var(--ink); }
body.fb-shop:not(#fbx) .fbx-boer-kop p{ margin:0; font-size:1.08rem; line-height:1.6; color:var(--ink-2); }
body.fb-shop:not(#fbx) .fbx-boer--nl .fbx-boer-kop h3{ color:#F3EADC; }
body.fb-shop:not(#fbx) .fbx-boer--nl .fbx-boer-kop p{ color:#F3EADC; }
/* stroom: vier stappen met pijlen */
body.fb-shop .fbx-boer-stroom{ list-style:none; margin:1.8rem 0 0; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.6rem; }
body.fb-shop .fbx-boer-stroom li{ position:relative; margin:0; text-align:center; background:#F2E3CC; border-radius:18px; padding:1.1rem .8rem 1rem; display:grid; gap:.3rem; align-content:start; }
body.fb-shop .fbx-boer-stroom li:not(:last-child)::after{ content:"\2192"; position:absolute; right:-1.35rem; top:50%; transform:translateY(-50%); font-size:1.4rem; font-weight:800; color:#C4622A; }
body.fb-shop .fbx-boer-stroom li:last-child{ background:#4E7040; }
body.fb-shop:not(#fbx) .fbx-boer-stroom b{ font-size:1.55rem; font-weight:800 !important; font-variation-settings:'SOFT' 100,'WONK' 0 !important; color:#8F4318; line-height:1.1; }
body.fb-shop:not(#fbx) .fbx-boer-stroom span{ font-size:.95rem; line-height:1.35; color:var(--ink-2); }
body.fb-shop:not(#fbx) .fbx-boer-stroom li:last-child b, body.fb-shop:not(#fbx) .fbx-boer-stroom li:last-child span{ color:#FFFDF9 !important; }
/* staafvergelijking */
body.fb-shop .fbx-boer-vergelijk{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.6rem 2.2rem; margin-top:1.8rem; }
body.fb-shop:not(#fbx) .fbx-staaf-titel{ margin:0 0 .6rem; font-weight:700 !important; font-size:.98rem; color:var(--ink); }
body.fb-shop .fbx-staaf{ display:grid; grid-template-columns:5.2rem minmax(0,1fr) 3.4rem; align-items:center; gap:.6rem; margin:.45rem 0; }
body.fb-shop:not(#fbx) .fbx-staaf-naam{ font-size:.92rem; font-weight:700 !important; color:var(--ink-2); }
body.fb-shop .fbx-staaf-balk{ display:block; height:16px; background:#F2E3CC; border-radius:999px; overflow:hidden; }
body.fb-shop .fbx-staaf-balk i{ display:block; height:100%; border-radius:999px; background:#9A8A78; }
body.fb-shop .fbx-staaf--erwt .fbx-staaf-balk i{ background:#4E7040; }
body.fb-shop:not(#fbx) .fbx-staaf-getal{ text-align:right; font-weight:800 !important; color:var(--ink); }
body.fb-shop:not(#fbx) .fbx-boer-uitkomst{ margin:1.6rem 0 0; text-align:center; font-size:1.12rem; color:var(--ink); }
body.fb-shop:not(#fbx) .fbx-boer-uitkomst b{ color:#4E7040; }
/* Nederland: voortgangsbalk en drie grote cijfers */
body.fb-shop .fbx-voortgang{ display:flex; margin:1.8rem auto 0; max-width:760px; height:46px; border-radius:999px; overflow:hidden; background:rgba(243,234,220,.14); border:1px solid rgba(243,234,220,.3); }
body.fb-shop:not(#fbx) .fbx-voortgang span{ display:flex; align-items:center; justify-content:center; font-weight:700 !important; font-size:.92rem; white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-voortgang-nu{ background:#C4622A; color:#FFFDF9; }
body.fb-shop:not(#fbx) .fbx-voortgang-rest{ flex:1; color:#F3EADC; background:repeating-linear-gradient(135deg, rgba(243,234,220,.08) 0 10px, transparent 10px 20px); }
body.fb-shop .fbx-boer-nl-cijfers{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin:1.6rem 0 0; }
body.fb-shop .fbx-boer-nl-cijfers > div{ text-align:center; padding:1.1rem .6rem; border-radius:18px; background:rgba(243,234,220,.08); border:1px solid rgba(243,234,220,.22); }
body.fb-shop:not(#fbx) .fbx-boer-nl-cijfers dt{ font-size:1.9rem; font-weight:800 !important; font-variation-settings:'SOFT' 100,'WONK' 0 !important; color:#E9A46A; line-height:1.1; }
body.fb-shop:not(#fbx) .fbx-boer-nl-cijfers dd{ margin:.35rem 0 0; color:#F3EADC !important; font-size:.98rem; line-height:1.35; }
body.fb-shop:not(#fbx) .fbx-boer-noot{ max-width:46rem; margin:1.6rem auto 0; text-align:center; font-size:.85rem; line-height:1.5; color:var(--ink-3) !important; }
@media (max-width:860px){
  body.fb-shop .fbx-boer{ padding:1.4rem 1.1rem; }
  body.fb-shop .fbx-boer-stroom{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
  body.fb-shop .fbx-boer-stroom li::after{ display:none; }
  body.fb-shop .fbx-boer-vergelijk{ grid-template-columns:1fr; }
  body.fb-shop .fbx-boer-nl-cijfers{ grid-template-columns:1fr; }
  body.fb-shop:not(#fbx) .fbx-voortgang span{ font-size:.78rem; }
}

/* ===== typografie gelijkgetrokken over alle pagina's (4-11-2026) =====
   koppen gebalanceerd, alinea's zonder losse laatste woorden, een maat per soort tekst */
body.fb-shop:not(#fbx) :is(h1,h2,h3,.fbx-display,.fbx-h2,.fbx-ondertitel,.product_title){ text-wrap:balance; }
body.fb-shop:not(#fbx) :is(p,li,dd,figcaption,summary){ text-wrap:pretty; }
/* intro onder een kop: overal dezelfde regelafstand */
body.fb-shop:not(#fbx) .fbx-lead{ line-height:1.6 !important; }
/* kaarttitels: een maat en een gewicht */
body.fb-shop:not(#fbx) :is(.fbx-pijler h3,.fbx-lijn-kaart h3,.fbx-retail-kaart h3){ font-size:1.45rem !important; font-weight:800 !important; line-height:1.2 !important; font-variation-settings:'SOFT' 100,'WONK' 0 !important; }
body.fb-shop:not(#fbx) .fbx-boer-kop h3{ font-size:1.6rem !important; line-height:1.2 !important; }
body.fb-shop:not(#fbx) .fbx-boer-kop p{ font-size:1.05rem !important; }
/* knoppen: overal 16 px */
body.fb-shop:not(#fbx) :is(.fbx-knop,.fbx-bestel-kaart button,.single_add_to_cart_button,.woocommerce a.button,.woocommerce button.button){ font-size:1rem !important; }
/* kleine labels op de bestelkaarten leesbaarder */
body.fb-shop:not(#fbx) :is(.fbx-bestel-label,.fbx-verdeling-kop){ font-size:.9rem !important; }
/* cijfertegels: dezelfde maat als de tegels elders */
body.fb-shop:not(#fbx) .fbx-boer-nl-cijfers dt{ font-size:2.1rem !important; }
body.fb-shop:not(#fbx) :is(.fbx-boer-nl-cijfers dd,.fbx-boer-stroom span){ font-size:1rem !important; }
@media (max-width:600px){
  body.fb-shop:not(#fbx) .fbx-feiten dt{ font-size:1.75rem !important; }
  body.fb-shop:not(#fbx) .fbx-boer-nl-cijfers dt{ font-size:1.75rem !important; }
  body.fb-shop:not(#fbx) :is(.fbx-pijler h3,.fbx-lijn-kaart h3,.fbx-retail-kaart h3){ font-size:1.3rem !important; }
}

/* introteksten gebalanceerd, zodat er geen los woord op de laatste regel staat (4-11-2026) */
body.fb-shop:not(#fbx) :is(.fbx-lead,.fbx-kop--midden .fbx-p,.fbx-boer-kop p){ text-wrap:balance; }

/* telefoon: basisletter 16 px in plaats van 14,6 px, zodat lopende tekst goed leesbaar is (4-11-2026) */
@media (max-width:600px){ html{ font-size:16px !important; } }

/* vaste bestelbalk op de telefoon: tekst en knop elk op een regel (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-plakbalk > span{ font-size:.9rem !important; white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-plakbalk .fbx-knop{ white-space:nowrap; font-size:.95rem !important; padding-inline:1.1rem !important; }

/* ===== telefoon rustiger: kleinere koppen, compacte tekst en minder witruimte (4-11-2026) ===== */
@media (max-width:600px){
  html{ font-size:15px !important; }
  body.fb-shop:not(#fbx) .fbx-sectie{ padding-top:48px !important; padding-bottom:48px !important; }
  body.fb-shop:not(#fbx) .fbx-display{ font-size:34px !important; }
  body.fb-shop:not(#fbx) .fbx-ondertitel{ font-size:18px !important; }
  body.fb-shop:not(#fbx) .product_title{ font-size:24px !important; }
  body.fb-shop:not(#fbx) .fbx-h2{ font-size:25px !important; margin-bottom:14px !important; }
  body.fb-shop:not(#fbx) .fbx-lead{ font-size:15.5px !important; }
  body.fb-shop:not(#fbx) :is(.fbx-p,.fbx-stappen span,.fbx-pijler p,.fbx-lijn-kaart p,.fbx-retail-kaart p,.fbx-faq details p,.fbx-boer-kop p){ font-size:15px !important; }
  body.fb-shop:not(#fbx) :is(.fbx-pijler h3,.fbx-lijn-kaart h3,.fbx-retail-kaart h3,.fbx-stappen b){ font-size:18px !important; }
  body.fb-shop:not(#fbx) .fbx-faq summary{ font-size:15.5px !important; padding-top:16px !important; padding-bottom:16px !important; }
  body.fb-shop:not(#fbx) :is(.fbx-feiten dt,.fbx-boer-nl-cijfers dt){ font-size:24px !important; }
  body.fb-shop:not(#fbx) :is(.fbx-feiten dd,.fbx-boer-nl-cijfers dd,.fbx-boer-stroom span){ font-size:14px !important; }
  body.fb-shop:not(#fbx) .fbx-boer-kop h3{ font-size:21px !important; }
  body.fb-shop:not(#fbx) .fbx-boer-stroom b{ font-size:21px !important; }
  body.fb-shop:not(#fbx) .fbx-knop{ font-size:15px !important; padding-top:13px !important; padding-bottom:13px !important; }
  body.fb-shop:not(#fbx) .fbx-pijlers{ margin-top:1.8rem !important; }
}

/* aankondiging: op tablet en telefoon een lopende balk in plaats van wisselende teksten die over elkaar vallen (4-11-2026) */
.fbx-aankondiging .fbx-kloon{ display:none !important; }
@media (max-width:1024px){
  .fbx-aankondiging{ overflow:hidden; }
  .fbx-aankondiging ul{ display:flex !important; flex-wrap:nowrap !important; justify-content:flex-start !important; gap:0 !important; width:max-content; max-width:none !important; padding:.55rem 0 !important; margin:0 !important; animation:fbx-loop 26s linear infinite; }
  .fbx-aankondiging li, .fbx-aankondiging li:not(:first-child), .fbx-aankondiging .fbx-kloon{ display:flex !important; grid-area:auto !important; opacity:1 !important; animation:none !important; white-space:nowrap; padding-right:2.4rem; }
  .fbx-aankondiging:hover ul{ animation-play-state:paused; }
}
@keyframes fbx-loop{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

/* lopende balk draait altijd, ook als de telefoon beweging beperkt; aanraken pauzeert (4-11-2026) */
@media (max-width:1024px){ .fbx-aankondiging ul{ animation:fbx-loop 26s linear infinite !important; -webkit-animation:fbx-loop 26s linear infinite !important; will-change:transform; } .fbx-aankondiging:active ul{ animation-play-state:paused !important; } }

/* voet: kolomkoppen zichtbaar op de donkere achtergrond (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-voet h3{ color:#E9A46A !important; font-size:.8rem !important; font-weight:800 !important; letter-spacing:.08em !important; text-transform:uppercase; margin:0 0 .9rem !important; }

/* voet: reserveringsformulier (4-11-2026) */
body.fb-shop .fbx-voet-cta--form{ display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:2rem 3rem; align-items:start; }
body.fb-shop .fbx-reserveer{ background:rgba(243,234,220,.07); border:1px solid rgba(243,234,220,.2); border-radius:20px; padding:1.3rem; display:grid; gap:.9rem; margin:0; }
body.fb-shop .fbx-res-velden{ display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
body.fb-shop:not(#fbx) .fbx-reserveer label{ display:grid; gap:.3rem; margin:0; }
body.fb-shop:not(#fbx) .fbx-reserveer label span{ font-size:.85rem; font-weight:700 !important; color:#F3EADC; }
body.fb-shop:not(#fbx) .fbx-reserveer input{ width:100%; height:44px; border-radius:12px; border:1px solid rgba(243,234,220,.35); background:#FFFDF9; color:var(--ink); padding:0 .8rem; font-size:16px !important; }
body.fb-shop .fbx-res-smaken{ display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
body.fb-shop .fbx-res-smaak{ display:grid; grid-template-columns:minmax(0,1fr) 34px 2rem 34px; align-items:center; gap:.3rem; background:rgba(243,234,220,.08); border-radius:12px; padding:.45rem .6rem; }
body.fb-shop:not(#fbx) .fbx-res-smaak span{ font-size:.92rem; font-weight:700 !important; color:#F3EADC; line-height:1.2; }
body.fb-shop .fbx-res-smaak button{ width:34px; height:34px; border-radius:50%; border:1.5px solid #F3EADC; background:transparent; color:#F3EADC; font-size:1.1rem; line-height:1; padding:0; cursor:pointer; }
body.fb-shop .fbx-res-smaak button:hover{ background:#F3EADC; color:var(--ink); }
body.fb-shop:not(#fbx) .fbx-res-smaak output{ text-align:center; font-weight:800; font-size:1.05rem; color:#FFFDF9; }
body.fb-shop .fbx-reserveer .fbx-knop{ width:100%; justify-content:center; border:0; cursor:pointer; }
body.fb-shop .fbx-reserveer .fbx-knop:disabled{ opacity:.6; cursor:wait; }
body.fb-shop .fbx-res-hp{ position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; opacity:0; }
body.fb-shop:not(#fbx) .fbx-res-melding{ margin:0; font-size:.9rem; color:#E9A46A !important; }
body.fb-shop:not(#fbx) .fbx-res-melding:empty{ display:none; }
body.fb-shop:not(#fbx) .fbx-res-klein{ margin:0; font-size:.8rem; color:rgba(243,234,220,.75) !important; }
body.fb-shop:not(#fbx) .fbx-res-klein a{ color:#F3EADC; text-decoration:underline; }
body.fb-shop:not(#fbx) .fbx-res-klaar{ margin:0; font-size:1rem; line-height:1.55; color:#F3EADC !important; }
body.fb-shop:not(#fbx) .fbx-res-klaar b{ color:#E9A46A; }
@media (max-width:860px){ body.fb-shop .fbx-voet-cta--form{ grid-template-columns:1fr; gap:1.2rem; } }
@media (max-width:420px){ body.fb-shop .fbx-res-velden, body.fb-shop .fbx-res-smaken{ grid-template-columns:1fr; } }

/* kopbalk op de telefoon: alleen het logo, zonder het woord FineBites (4-11-2026) */
@media (max-width:760px){ .fbx-kopbalk .fbx-logo span{ display:none !important; } .fbx-kopbalk .fbx-logo img{ width:46px !important; height:auto !important; } }

/* hero met sfeerfoto: vrienden die samen genieten, tekst op een donkere waas (4-11-2026) */
body.fb-shop .fbx-hero--foto{ position:relative; overflow:hidden; background:#1E1007 !important; background-image:none !important; }
body.fb-shop .fbx-hero--foto .fbx-hero-foto img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:65% 40%; z-index:0; }
body.fb-shop .fbx-hero-waas{ position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(30,16,7,.94) 0%, rgba(30,16,7,.82) 30%, rgba(30,16,7,.25) 62%, rgba(30,16,7,0) 85%); }
body.fb-shop .fbx-hero--foto .fbx-hero-grid{ position:relative; z-index:2; grid-template-columns:minmax(0,1fr) !important; min-height:640px; align-content:center; }
body.fb-shop .fbx-hero--foto .fbx-hero-tekst{ max-width:560px; }
@media (max-width:760px){
  body.fb-shop .fbx-hero--foto .fbx-hero-foto img{ object-position:50% 20%; height:62%; }
  body.fb-shop .fbx-hero-waas{ background:linear-gradient(180deg, rgba(30,16,7,0) 0%, rgba(30,16,7,0) 34%, rgba(30,16,7,.85) 56%, #1E1007 64%); }
  body.fb-shop .fbx-hero--foto .fbx-hero-grid{ min-height:0; padding-top:56vw !important; align-content:end; }
}

body.fb-shop .fbx-hero--foto .fbx-hero-waas{ inset:0 !important; max-width:none !important; width:auto !important; margin:0 !important; }
body.fb-shop .fbx-hero--foto::after{ display:none !important; }

/* privacylink in het reserveringsformulier: zelfde letter en maat als de zin ervoor (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-voet .fbx-res-klein a{ font-size:inherit !important; font-weight:inherit !important; font-family:inherit !important; line-height:inherit !important; letter-spacing:inherit !important; color:inherit !important; text-decoration:underline !important; text-underline-offset:2px; padding:0 !important; }

/* telefoon: Winkel altijd zichtbaar in de kopbalk (4-11-2026) */
.fbx-kop-winkel{ display:none; }
@media (max-width:1024px){ body.fb-shop:not(#fbx) .fbx-kop-winkel{ display:inline-flex; align-items:center; height:40px; padding:0 1rem; margin-right:.35rem; border-radius:999px; background:var(--ink); color:#F7F3EC !important; font-weight:700 !important; font-size:15px !important; text-decoration:none; white-space:nowrap; } body.fb-shop:not(#fbx) .fbx-kop-winkel:hover{ background:#B5531E; } }

/* mobiel: Winkel in de kopbalk als zwarte tekst zonder kader (4-11-2026) */
@media (max-width:1024px){ body.fb-shop:not(#fbx) .fbx-kop-winkel, body.fb-shop:not(#fbx) .fbx-kop-winkel:hover, body.fb-shop:not(#fbx) .fbx-kop-winkel:focus{ background:none !important; border:0 !important; box-shadow:none !important; outline:0; padding:0 .5rem !important; margin-right:.15rem !important; color:#000 !important; font-size:16px !important; font-weight:700 !important; } }

/* winkel: welkomstekst loopt gewoon door, zonder gebalanceerde regels (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-kop .fbx-lead{ text-wrap:wrap !important; }

/* winkel mobiel: compacte productkaarten, beeld links, tekst rechts (4-11-2026) */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-bestel-grid{ gap:.75rem !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart{ display:grid !important; grid-template-columns:72px minmax(0,1fr); column-gap:.9rem; row-gap:.5rem; align-items:center; padding:.9rem !important; border-radius:16px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart--uitgelicht{ padding-top:1.3rem !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart > a.fbx-bestel-link:first-of-type{ grid-column:1; grid-row:1 / span 2; align-self:center; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart > a.fbx-bestel-link:first-of-type .fbx-bestel-beeld{ height:76px !important; margin:0 !important; padding:0 !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-beeld img{ max-height:76px !important; width:auto !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart > h3{ grid-column:2; align-self:end; margin:0 !important; font-size:17px !important; line-height:1.2 !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart > .fbx-bestel-prijs{ grid-column:2; align-self:start; margin:0 !important; font-size:16px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-prijs span{ display:block; font-size:13px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart > .fbx-bestel-keuzes, body.fb-shop:not(#fbx) .fbx-bestel-kaart > .fbx-verdeling, body.fb-shop:not(#fbx) .fbx-bestel-kaart > .fbx-knop{ grid-column:1 / -1; margin:0 !important; }
  body.fb-shop:not(#fbx) .fbx-verdeling{ padding:.55rem .7rem !important; gap:.25rem !important; }
  body.fb-shop:not(#fbx) .fbx-verdeling-kop{ font-size:13px !important; margin:0 0 .15rem !important; }
  body.fb-shop:not(#fbx) .fbx-verdeling-rij{ font-size:14px !important; min-height:0 !important; }
  body.fb-shop:not(#fbx) .fbx-verdeling-rij button{ width:28px !important; height:28px !important; font-size:15px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-label{ font-size:13px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-keuzes select, body.fb-shop:not(#fbx) .fbx-bestel-keuzes input{ height:40px !important; font-size:16px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-kaart .fbx-knop{ min-height:42px !important; height:42px !important; padding:0 1rem !important; font-size:15px !important; }
  body.fb-shop:not(#fbx) .fbx-bestel-label-top{ font-size:11px !important; padding:.2rem .6rem !important; }
}
/* kleinere porties: cijfers als vier losse kaarten met label eiwit of vezel (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-feiten--kaarten{ display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem !important; border:0 !important; background:none !important; box-shadow:none !important; padding:0 !important; max-width:1040px; margin-left:auto !important; margin-right:auto !important; }
body.fb-shop:not(#fbx) .fbx-feiten--kaarten > div{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:.35rem; background:#FFFDF9 !important; border:1px solid #E8DCCB !important; border-top:4px solid #B5531E !important; border-radius:16px !important; padding:1.3rem 1.1rem 1.4rem !important; margin:0 !important; }
body.fb-shop:not(#fbx) .fbx-feiten--kaarten > div.fbx-feit--vezel{ border-top-color:#6E7F3A !important; }
body.fb-shop:not(#fbx) .fbx-feiten--kaarten > div::before, body.fb-shop:not(#fbx) .fbx-feiten--kaarten > div::after{ display:none !important; }
body.fb-shop:not(#fbx) .fbx-feit-soort{ font-size:12px !important; font-weight:800 !important; letter-spacing:.08em; text-transform:uppercase; color:#B5531E; }
body.fb-shop:not(#fbx) .fbx-feit--vezel .fbx-feit-soort{ color:#5A6A2C; }
body.fb-shop:not(#fbx) .fbx-feiten--kaarten dt{ margin:0 !important; line-height:1.1 !important; }
body.fb-shop:not(#fbx) .fbx-feiten--kaarten dd{ margin:0 !important; font-size:15px !important; line-height:1.45 !important; max-width:22ch; }
@media (max-width:900px){ body.fb-shop:not(#fbx) .fbx-feiten--kaarten{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem !important; } }
@media (max-width:600px){ body.fb-shop:not(#fbx) .fbx-feiten--kaarten > div{ padding:1rem .8rem 1.1rem !important; } body.fb-shop:not(#fbx) .fbx-feiten--kaarten dd{ font-size:14px !important; } }
/* home mobiel: foto hoger zodat de zak FineBites boven de kop zichtbaar blijft (4-11-2026) */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-hero--foto .fbx-hero-foto img{ height:430px !important; object-position:50% 30% !important; }
  body.fb-shop:not(#fbx) .fbx-hero--foto .fbx-hero-tekst{ padding-top:150px !important; }
  body.fb-shop:not(#fbx) .fbx-hero--foto .fbx-hero-waas{ background:linear-gradient(to bottom, rgba(30,16,7,0) 0, rgba(30,16,7,0) 300px, rgba(30,16,7,.75) 395px, #1E1007 430px, #1E1007 100%) !important; }
}
/* cijferkaarten: label tussendoor in donkerbruin (4-11-2026) */
body.fb-shop:not(#fbx) .fbx-feiten--kaarten > div.fbx-feit--tussendoor{ border-top-color:#1E1007 !important; }
body.fb-shop:not(#fbx) .fbx-feit--tussendoor .fbx-feit-soort{ color:#6B4A2E; }

/* compacter en rustiger, in lijn met Elvou en Barebells: kleinere koppen, minder witruimte (5-11-2026) */
@media (min-width:761px){
  body.fb-shop:not(#fbx) .fbx-sectie{ padding-top:72px !important; padding-bottom:72px !important; }
  body.fb-shop:not(#fbx) .fbx-display{ font-size:clamp(44px,3.9vw,56px) !important; line-height:1.04 !important; }
  body.fb-shop:not(#fbx) .fbx-h2{ font-size:clamp(28px,2.5vw,36px) !important; margin-bottom:20px !important; }
  body.fb-shop:not(#fbx) .fbx-lead{ font-size:18px !important; }
  body.fb-shop:not(#fbx) .fbx-p{ font-size:16px !important; }
  body.fb-shop:not(#fbx) .fbx-sectie h3{ font-size:20px !important; }
  body.fb-shop:not(#fbx) .fbx-voet-cta{ padding-top:56px !important; padding-bottom:56px !important; }
}
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-sectie{ padding-top:40px !important; padding-bottom:40px !important; }
  body.fb-shop:not(#fbx) .fbx-display{ font-size:32px !important; }
  body.fb-shop:not(#fbx) .fbx-h2{ font-size:22px !important; margin-bottom:12px !important; }
  body.fb-shop:not(#fbx) .fbx-sectie h3{ font-size:17px !important; }
  body.fb-shop:not(#fbx) .fbx-voet-cta{ padding-top:36px !important; padding-bottom:36px !important; }
}
/* mobiel compacter: pijlers 2x2, kaarten swipen naast elkaar, voet in twee kolommen (5-11-2026) */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-pijlers{ grid-template-columns:1fr 1fr !important; gap:.6rem !important; }
  body.fb-shop:not(#fbx) .fbx-pijler{ grid-template-columns:1fr !important; align-content:start; gap:.35rem !important; padding:.85rem !important; }
  body.fb-shop:not(#fbx) .fbx-pijler > :first-child{ width:40px !important; height:40px !important; }
  body.fb-shop:not(#fbx) .fbx-pijler > :first-child svg{ width:20px !important; height:20px !important; }
  body.fb-shop:not(#fbx) .fbx-pijler h3{ font-size:16px !important; margin:0 !important; }
  body.fb-shop:not(#fbx) .fbx-pijler p{ font-size:13.5px !important; line-height:1.4 !important; margin:0 !important; }
  body.fb-shop:not(#fbx) .fbx-lijn, body.fb-shop:not(#fbx) .fbx-retail{ display:flex !important; overflow-x:auto; scroll-snap-type:x mandatory; gap:.75rem !important; margin-left:-17px !important; margin-right:-17px !important; padding:0 17px 6px !important; scroll-padding-left:17px; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
  body.fb-shop:not(#fbx) .fbx-lijn::-webkit-scrollbar, body.fb-shop:not(#fbx) .fbx-retail::-webkit-scrollbar{ display:none; }
  body.fb-shop:not(#fbx) .fbx-lijn > *, body.fb-shop:not(#fbx) .fbx-retail > *{ flex:0 0 80% !important; max-width:80% !important; scroll-snap-align:start; margin:0 !important; }
  body.fb-shop:not(#fbx) .fbx-stappen{ gap:.75rem !important; }
  body.fb-shop:not(#fbx) .fbx-stappen > li{ padding:.9rem !important; }
  body.fb-shop:not(#fbx) .fbx-voet-kolommen{ grid-template-columns:1fr 1fr !important; gap:1.6rem 1rem !important; }
  body.fb-shop:not(#fbx) .fbx-voet-kolommen > :first-child, body.fb-shop:not(#fbx) .fbx-voet-kolommen > :last-child{ grid-column:1 / -1; }
  body.fb-shop:not(#fbx) .fbx-voet-kolommen ul{ gap:.45rem !important; }
  body.fb-shop:not(#fbx) .fbx-res-velden{ grid-template-columns:1fr 1fr !important; }
}
/* home desktop: nieuwe foto 6-11-2026, uitsnede lager zodat de zak helemaal zichtbaar is */
@media (min-width:761px){ body.fb-shop:not(#fbx) .fbx-hero--foto .fbx-hero-foto img{ object-position:65% 85%; } }

/* taalknop NL / EN / DE in de kopbalk (6-11-2026) */
body.fb-shop:not(#fbx) .fbx-taal{ display:inline-flex; align-items:center; gap:2px; margin-right:.6rem; padding:2px; border:1px solid rgba(30,16,7,.18); border-radius:999px; }
body.fb-shop:not(#fbx) .fbx-taal button{ appearance:none; border:0; background:transparent; color:#1E1007; font:700 12px/1 inherit; letter-spacing:.04em; padding:6px 8px; border-radius:999px; cursor:pointer; min-width:32px; }
body.fb-shop:not(#fbx) .fbx-taal button:hover{ background:rgba(181,83,30,.10); }
body.fb-shop:not(#fbx) .fbx-taal button[aria-pressed="true"]{ background:#B5531E; color:#fff; }
body.fb-shop:not(#fbx) .fbx-taal button:focus-visible{ outline:2px solid #B5531E; outline-offset:2px; }
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-taal{ margin-right:.25rem; }
  body.fb-shop:not(#fbx) .fbx-taal button{ padding:5px 6px; min-width:26px; font-size:11px; }
}
/* mobiele kopbalk met taalknop: logo nooit wegdrukken (6-11-2026) */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-logo{ flex:0 0 auto !important; min-width:34px; }
  body.fb-shop:not(#fbx) .fbx-logo img{ width:34px !important; height:auto !important; max-width:none !important; }
  body.fb-shop:not(#fbx) .fbx-acties{ min-width:0; gap:.15rem !important; }
  body.fb-shop:not(#fbx) .fbx-taal{ margin-right:.15rem; padding:1px; }
  body.fb-shop:not(#fbx) .fbx-taal button{ padding:4px 5px; min-width:24px; font-size:10.5px; }
}
@media (max-width:380px){
  body.fb-shop:not(#fbx) .fbx-acties a.fbx-icoon[href*="account"]{ display:none !important; }
}
/* 6-11-2026: kopbalk mobiel tot de rechterrand, zodat hij in balans staat */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-acties{ flex:1 1 auto; justify-content:space-between; margin-left:10px; }
}
/* 6-11-2026: minder ruimte onder 'Welkom in de winkel' en boven de producten */
body.fb-shop:not(#fbx) .fbx-winkel-kop .fbx-kop{ margin-bottom:0 !important; }
body.fb-shop:not(#fbx) .fbx-winkel-kop{ padding-bottom:48px !important; }
body.fb-shop:not(#fbx) .fbx-winkel-kop + .fbx-sectie{ padding-top:40px !important; }
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-winkel-kop{ padding-bottom:28px !important; }
  body.fb-shop:not(#fbx) .fbx-winkel-kop + .fbx-sectie{ padding-top:22px !important; }
}
/* 6-11-2026: kleinere porties, een kaart eiwit en een kaart vezel */
body.fb-shop:not(#fbx) .fbx-feiten-duo{ display:grid; grid-template-columns:1fr 1fr; gap:20px; max-width:860px; margin:32px auto 0; }
body.fb-shop:not(#fbx) .fbx-duo{ background:#FFFDF8; border:1px solid rgba(30,16,7,.10); border-top:6px solid #B5531E; border-radius:22px; padding:20px 24px 8px; text-align:center; }
body.fb-shop:not(#fbx) .fbx-duo--vezel{ border-top-color:#6E7F3A; }
body.fb-shop:not(#fbx) .fbx-duo-soort{ margin:0 0 4px !important; font-size:13px !important; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#B5531E; }
body.fb-shop:not(#fbx) .fbx-duo--vezel .fbx-duo-soort{ color:#5E6D2F; }
body.fb-shop:not(#fbx) .fbx-duo-regel{ margin:0 !important; padding:14px 0; display:flex; flex-direction:column; align-items:center; gap:4px; }
body.fb-shop:not(#fbx) .fbx-duo-regel + .fbx-duo-regel{ border-top:1px solid rgba(30,16,7,.10); }
body.fb-shop:not(#fbx) .fbx-duo-regel b{ font-family:'Fraunces',Georgia,serif; font-size:34px; line-height:1.1; font-weight:800; color:#9A3F12; }
body.fb-shop:not(#fbx) .fbx-duo-regel span{ font-size:16px; line-height:1.4; color:#1E1007; max-width:26ch; }
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-feiten-duo{ grid-template-columns:1fr; gap:14px; margin-top:22px; }
  body.fb-shop:not(#fbx) .fbx-duo-regel b{ font-size:30px; }
}
/* 6-11-2026: 'Nog niet klaar om te bestellen?' op mobiel gecentreerd */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-voet-cta--form > div:first-child{ text-align:center; }
  body.fb-shop:not(#fbx) .fbx-voet-cta--form > div:first-child h2,
  body.fb-shop:not(#fbx) .fbx-voet-cta--form > div:first-child p{ margin-left:auto !important; margin-right:auto !important; text-align:center !important; }
}

/* 6-11-2026: speelse golfovergang tussen ALLE secties (creme, wit, donker) in plaats van een rechte rand.
   De golf hangt bovenin een sectie, in de kleur van de sectie erboven. Onderaan de laatste sectie golft de donkere voet omhoog. */
body.fb-shop:not(#fbx) .fbx-sectie{ position:relative; }
body.fb-shop:not(#fbx) .fbx-sectie--cream + .fbx-sectie:not(.fbx-sectie--cream):not(.fbx-sectie--ink)::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%23F2E3CC'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .fbx-sectie:not(.fbx-sectie--cream):not(.fbx-sectie--ink) + .fbx-sectie--cream::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%23FFFDF9'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .fbx-sectie--cream + .fbx-sectie--ink::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%23F2E3CC'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .fbx-sectie:not(.fbx-sectie--cream):not(.fbx-sectie--ink) + .fbx-sectie--ink::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%23FFFDF9'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .fbx-sectie--ink + .fbx-sectie--cream::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%231E1007'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .fbx-sectie--ink + .fbx-sectie:not(.fbx-sectie--cream):not(.fbx-sectie--ink)::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%231E1007'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .entry-content > .fbx-sectie:last-child:not(.fbx-sectie--ink)::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:40px; z-index:1; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40V22C120 6 260 2 400 14S700 40 860 30 1160 2 1300 10 1400 26 1440 20V40Z' fill='%231E1007'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
body.fb-shop:not(#fbx) .entry-content > .fbx-sectie:last-child:not(.fbx-sectie--ink){ padding-bottom:calc(72px + 20px) !important; }
body.fb-shop.single-product .fbx-voet, body.fb-shop.woocommerce-cart .fbx-voet, body.fb-shop.woocommerce-account .fbx-voet, body.fb-shop.woocommerce-checkout .fbx-voet{ position:relative; }
body.fb-shop.single-product .fbx-voet::before, body.fb-shop.woocommerce-cart .fbx-voet::before, body.fb-shop.woocommerce-account .fbx-voet::before, body.fb-shop.woocommerce-checkout .fbx-voet::before{ content:""; position:absolute; left:0; right:0; top:-1px; height:40px; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%23FFFDF9'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-sectie::before, body.fb-shop:not(#fbx) .entry-content > .fbx-sectie:last-child::after, body.fb-shop .fbx-voet::before{ height:24px !important; } body.fb-shop:not(#fbx) .entry-content > .fbx-sectie:last-child:not(.fbx-sectie--ink){ padding-bottom:calc(40px + 12px) !important; } }
/* 6-11-2026: mobiele kopbalk twee kolommen (logo | acties), zodat het menu-icoon net zo ver van de rand staat als het logo */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-kopbalk-in{ grid-template-columns:auto 1fr !important; }
  body.fb-shop:not(#fbx) .fbx-kopbalk-in > .fbx-acties{ grid-column:2 / -1; }
}
/* 6-11-2026: rustige productpagina. Een tabblad over: geen tabknoppen meer, de beschrijving staat er direct */
body.fb-shop:not(#fbx).single-product .woocommerce-tabs ul.tabs{ display:none !important; }
body.fb-shop:not(#fbx).single-product .woocommerce-tabs .panel{ margin-top:0 !important; padding-top:0 !important; border:0 !important; }
/* altijd de hele zak: galerij en kaartbeelden niet bijsnijden */
body.fb-shop:not(#fbx) .woocommerce-product-gallery img,
body.fb-shop:not(#fbx) .flex-control-thumbs img,
body.fb-shop:not(#fbx) ul.products li.product img,
body.fb-shop:not(#fbx) .fbx-bestel-beeld img{ object-fit:contain !important; }
body.fb-shop:not(#fbx) .flex-control-thumbs li img{ aspect-ratio:1/1; height:auto !important; padding:6px; background:#F4EEE6; border-radius:12px; }
/* 'Ook lekker': kleine, overzichtelijke kaarten, vier naast elkaar */
body.fb-shop:not(#fbx) .related.products > h2{ font-size:clamp(24px,2.2vw,30px) !important; margin-bottom:16px !important; }
body.fb-shop:not(#fbx) .related.products ul.products{ display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:16px !important; margin:0 !important; }
body.fb-shop:not(#fbx) .related.products ul.products::before, body.fb-shop:not(#fbx) .related.products ul.products::after{ display:none !important; }
body.fb-shop:not(#fbx) .related.products li.product{ width:auto !important; margin:0 !important; padding:12px !important; border-radius:16px !important; display:flex !important; flex-direction:column; }
body.fb-shop:not(#fbx) .related.products .astra-shop-thumbnail-wrap{ margin:0 0 10px !important; }
body.fb-shop:not(#fbx) .related.products li.product img{ width:100% !important; height:150px !important; aspect-ratio:auto !important; padding:8px; background:#F4EEE6; border-radius:12px; }
body.fb-shop:not(#fbx) .related.products .astra-shop-summary-wrap{ display:flex; flex-direction:column; flex:1; padding:0 !important; }
body.fb-shop:not(#fbx) .related.products .fbx-kaartlabels{ margin-bottom:6px !important; }
body.fb-shop:not(#fbx) .related.products .fbx-label{ font-size:10.5px !important; padding:3px 8px !important; }
body.fb-shop:not(#fbx) .related.products .woocommerce-loop-product__title{ font-size:15px !important; line-height:1.3 !important; margin:0 0 4px !important; }
body.fb-shop:not(#fbx) .related.products .price{ font-size:16px !important; margin:0 0 10px !important; }
body.fb-shop:not(#fbx) .related.products .price .fb-per-zak, body.fb-shop:not(#fbx) .related.products .price .fb-per-zak .amount{ font-size:12.5px !important; }
body.fb-shop:not(#fbx) .related.products a.button{ margin-top:auto !important; padding:9px 12px !important; font-size:13.5px !important; min-height:0 !important; line-height:1.2 !important; }
@media (max-width:900px){ body.fb-shop:not(#fbx) .related.products ul.products{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important; } }
@media (max-width:760px){ body.fb-shop:not(#fbx) .related.products li.product img{ height:120px !important; } }
/* 6-11-2026: het kopje 'Ingrediënten' is nu het eerste kopje van de beschrijving en moet zichtbaar blijven */
body.fb-shop:not(#fbx).single-product .woocommerce-tabs .panel > h2.fbx-tabkop:first-child{ display:block !important; margin-top:0 !important; }
/* tegels onder de prijs: waarde altijd op een regel */
body.fb-shop:not(#fbx) .fbx-getallen b{ white-space:nowrap; }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-getallen b{ font-size:clamp(18px,5.4vw,24px) !important; } }
/* 6-11-2026: pijlerkaarten op mobiel gecentreerd (icoon, kop en tekst in het midden) */
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-pijlers > *{ display:flex !important; flex-direction:column; align-items:center; justify-content:flex-start; text-align:center !important; padding:16px 12px !important; }
  body.fb-shop:not(#fbx) .fbx-pijlers .fbx-pijler-icoon{ margin:0 auto 8px !important; }
  body.fb-shop:not(#fbx) .fbx-pijlers h3, body.fb-shop:not(#fbx) .fbx-pijlers p{ text-align:center !important; width:100%; margin-left:auto !important; margin-right:auto !important; }
}
/* 6-11-2026: meer ruimte tussen de bruine golf en het eerste product in de winkel */
body.fb-shop:not(#fbx) .fbx-winkel-kop + .fbx-sectie{ padding-top:72px !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-winkel-kop + .fbx-sectie{ padding-top:44px !important; } }
/* 6-11-2026: smaakknoppen in de kleur van de verpakking als ze gekozen zijn, anders wit */
body.fb-shop:not(#fbx) .fbx-smaakwissel-knop:not(.is-actief){ background:#FFFDF9 !important; color:#1E1007 !important; border-color:#1E1007 !important; }
body.fb-shop:not(#fbx) .fbx-smaakwissel-knop.is-actief[href*="paprika"]{ background:#C4200A !important; border-color:#C4200A !important; color:#FFFFFF !important; }
body.fb-shop:not(#fbx) .fbx-smaakwissel-knop.is-actief[href*="knoflook"]{ background:#F0A84F !important; border-color:#F0A84F !important; color:#1E1007 !important; }
/* 6-11-2026: lange productnamen (Kennismakingspakket) blijven binnen de kaart */
body.fb-shop:not(#fbx) ul.products li.product, body.fb-shop:not(#fbx) ul.products .astra-shop-summary-wrap{ min-width:0 !important; max-width:100% !important; }
body.fb-shop:not(#fbx) ul.products .woocommerce-loop-product__title{ overflow-wrap:anywhere; -webkit-hyphens:auto; hyphens:auto; }
/* 6-11-2026: geen lege ruimte onder de tekst in alle donkere kopblokken (Waarom FineBites, Kleinere porties) */
body.fb-shop:not(#fbx) .fbx-missie-kop .fbx-kop{ margin-bottom:0 !important; }
body.fb-shop:not(#fbx) .fbx-missie-kop{ padding-bottom:64px !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-missie-kop{ padding-bottom:40px !important; } }
/* 7-11-2026: missiepagina, waardeketen (plaat plus drie stappen) */
body.fb-shop:not(#fbx) .fbx-waardeketen{ margin:28px auto 0; max-width:1180px; }
body.fb-shop:not(#fbx) .fbx-waardeketen-scroll{ border-radius:20px; overflow:hidden; box-shadow:0 10px 30px rgba(30,16,7,.10); background:#FBF6EF; }
body.fb-shop:not(#fbx) .fbx-waardeketen img{ display:block; width:100%; height:auto; }
body.fb-shop:not(#fbx) .fbx-waardeketen figcaption{ text-align:center; font-size:13px; color:#6B5A4A; margin-top:8px; }
@media (min-width:761px){ body.fb-shop:not(#fbx) .fbx-waardeketen figcaption{ visibility:hidden; height:0; margin:0; } }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-waardeketen-scroll{ overflow-x:auto; -webkit-overflow-scrolling:touch; border-radius:14px; } body.fb-shop:not(#fbx) .fbx-waardeketen img{ width:820px; max-width:none; } }
body.fb-shop:not(#fbx) .fbx-keten{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; max-width:1180px; margin:28px auto 36px; }
body.fb-shop:not(#fbx) .fbx-keten-stap{ background:#FFFDF9; border:1px solid rgba(30,16,7,.10); border-top:6px solid #1E1007; border-radius:20px; padding:20px 22px; }
body.fb-shop:not(#fbx) .fbx-keten-stap--up{ border-top-color:#C4622A; }
body.fb-shop:not(#fbx) .fbx-keten-stap--down{ border-top-color:#4E7040; }
body.fb-shop:not(#fbx) .fbx-keten-label{ display:inline-block; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#8F4318; margin-bottom:6px; }
body.fb-shop:not(#fbx) .fbx-keten-stap h3{ font-size:20px !important; margin:0 0 6px !important; }
body.fb-shop:not(#fbx) .fbx-keten-stap p{ font-size:16px !important; line-height:1.5 !important; margin:0 !important; }
@media (max-width:900px){ body.fb-shop:not(#fbx) .fbx-keten{ grid-template-columns:1fr; gap:12px; } }
/* 8-11-2026: pagina Duurzaamheid, groene uitstraling */
body.fb-shop:not(#fbx) .fbx-duurzaam-kop{ background-color:#3E5C33 !important; background-image:radial-gradient(circle at 15% 20%, rgba(255,255,255,.08) 0 2px, transparent 3px), radial-gradient(circle at 80% 70%, rgba(255,255,255,.06) 0 2px, transparent 3px), linear-gradient(160deg,#5B7F49 0%,#3E5C33 100%) !important; background-size:46px 46px, 62px 62px, 100% 100% !important; }
body.fb-shop:not(#fbx) .fbx-duurzaam-kop .fbx-display{ color:#FFF8EC !important; }
body.fb-shop:not(#fbx) .fbx-duurzaam-kop .fbx-lead{ color:#E7F0DF !important; }
body.fb-shop:not(#fbx) .fbx-duurzaam-kop + .fbx-sectie::before{ background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%233E5C33'/%3E%3C/svg%3E") center/100% 100% no-repeat !important; content:""; position:absolute; left:0; right:0; top:-1px; height:40px; z-index:1; }
body.fb-shop:not(#fbx) .fbx-eerlijk{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; max-width:1180px; margin:28px auto 0; }
body.fb-shop:not(#fbx) .fbx-eerlijk-item{ background:#FFFDF9; border:1px solid rgba(30,16,7,.10); border-radius:20px; padding:20px 22px; }
body.fb-shop:not(#fbx) .fbx-eerlijk-status{ display:inline-block; font-size:12px; font-weight:800; letter-spacing:.06em; padding:4px 10px; border-radius:999px; background:#F3E3CC; color:#8F4318; margin-bottom:10px; }
body.fb-shop:not(#fbx) .fbx-eerlijk-item--klaar .fbx-eerlijk-status{ background:#E3EDDA; color:#3E5C33; }
body.fb-shop:not(#fbx) .fbx-eerlijk-item h3{ font-size:19px !important; margin:0 0 6px !important; }
body.fb-shop:not(#fbx) .fbx-eerlijk-item p{ font-size:16px !important; line-height:1.5 !important; margin:0 !important; }
@media (max-width:900px){ body.fb-shop:not(#fbx) .fbx-eerlijk{ grid-template-columns:1fr 1fr; gap:12px; } }
@media (max-width:520px){ body.fb-shop:not(#fbx) .fbx-eerlijk{ grid-template-columns:1fr; } }
/* 8-11-2026: zes menu-items, altijd op een regel */
body.fb-shop:not(#fbx) .fbx-nav a{ white-space:nowrap; }
@media (min-width:761px) and (max-width:1320px){ body.fb-shop:not(#fbx) .fbx-nav{ gap:14px !important; } body.fb-shop:not(#fbx) .fbx-nav a{ font-size:14px !important; } }

/* 8-11-2026: Duurzaamheid, "Wat we al doen" in twee groepen van drie kolommen */
body.fb-shop:not(#fbx) .fbx-eerlijk-groep{ max-width:1180px; margin:36px auto 0; }
body.fb-shop:not(#fbx) .fbx-eerlijk-groepkop{ font-size:24px !important; font-weight:800 !important; color:#3E5C33 !important; margin:0 0 4px !important; text-align:left; }
body.fb-shop:not(#fbx) .fbx-eerlijk-groep + .fbx-eerlijk-groep .fbx-eerlijk-groepkop{ color:#8F4318 !important; }
body.fb-shop:not(#fbx) .fbx-eerlijk.fbx-eerlijk--3{ grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:14px; }
body.fb-shop:not(#fbx) .fbx-eerlijk-item--klaar{ border-left:5px solid #5B7F49; }
body.fb-shop:not(#fbx) .fbx-eerlijk-groep + .fbx-eerlijk-groep .fbx-eerlijk-item{ border-left:5px solid #C4622A; }
@media (max-width:900px){ body.fb-shop:not(#fbx) .fbx-eerlijk.fbx-eerlijk--3{ grid-template-columns:1fr 1fr; } }
@media (max-width:520px){ body.fb-shop:not(#fbx) .fbx-eerlijk.fbx-eerlijk--3{ grid-template-columns:1fr; } body.fb-shop:not(#fbx) .fbx-eerlijk-groepkop{ text-align:center; } }

/* 8-11-2026 (Stefan): groene kop Duurzaamheid in één kleur groen met overal dezelfde stipjes; golfrand eronder in hetzelfde groen */
body.fb-shop:not(#fbx) .fbx-duurzaam-kop{ background-color:#4E7040 !important; background-image:radial-gradient(circle, rgba(255,255,255,.14) 1.6px, transparent 2.2px) !important; background-size:26px 26px !important; background-position:0 0 !important; }
body.fb-shop:not(#fbx) .fbx-duurzaam-kop + .fbx-sectie::before{ background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='%234E7040'/%3E%3C/svg%3E") center/100% 100% no-repeat !important; }

/* 8-11-2026 (Stefan): kaders "Wat we al doen" kleiner */
body.fb-shop:not(#fbx) .fbx-duurzaam-eerlijk .fbx-eerlijk-groep{ max-width:1000px; margin-top:24px; }
body.fb-shop:not(#fbx) .fbx-duurzaam-eerlijk .fbx-eerlijk.fbx-eerlijk--3{ gap:14px; margin-top:0; }
body.fb-shop:not(#fbx) .fbx-duurzaam-eerlijk .fbx-eerlijk-item{ padding:14px 16px; border-radius:16px; border-left-width:4px; }
body.fb-shop:not(#fbx) .fbx-duurzaam-eerlijk .fbx-eerlijk-item h3{ font-size:17px !important; margin:0 0 4px !important; }
body.fb-shop:not(#fbx) .fbx-duurzaam-eerlijk .fbx-eerlijk-item p{ font-size:14.5px !important; line-height:1.45 !important; }

/* 8-11-2026 (Stefan): stipjes over het hele groene vlak, ook in de golfrand, en iets subtieler.
   Kop en golfrand delen hetzelfde raster via background-attachment:fixed; de golf is een masker. */
body.fb-shop:not(#fbx) .fbx-duurzaam-kop,
body.fb-shop:not(#fbx) .fbx-duurzaam-kop + .fbx-sectie::before{ background-color:#4E7040 !important; background-image:radial-gradient(circle, rgba(255,255,255,.09) 1.3px, transparent 1.9px) !important; background-size:26px 26px !important; background-position:0 0 !important; background-attachment:fixed !important; background-repeat:repeat !important; }
body.fb-shop:not(#fbx) .fbx-duurzaam-kop + .fbx-sectie::before{ -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='black'/%3E%3C/svg%3E") center/100% 100% no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 0H1440V14C1320 34 1180 40 1040 28S760 2 600 12 300 40 160 30 40 12 0 18Z' fill='black'/%3E%3C/svg%3E") center/100% 100% no-repeat; }

/* 8-11-2026 (Stefan): tekst in de bruine sectie "kleinere porties" mooi in het midden; golfranden (40px, mobiel 24px) tellen mee */
body.fb-shop:not(#fbx) #kleinere-porties{ padding-top:104px !important; padding-bottom:104px !important; }
body.fb-shop:not(#fbx) #kleinere-porties .fbx-kop{ margin-bottom:0 !important; }
body.fb-shop:not(#fbx) #kleinere-porties .fbx-knoppen{ margin-bottom:0 !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx) #kleinere-porties{ padding-top:64px !important; padding-bottom:64px !important; } }
/* 8-11-2026: zichtbaar evenwicht; de bovenste golf valt binnen de sectie, de onderste erbuiten */
body.fb-shop:not(#fbx) #kleinere-porties{ padding-top:124px !important; padding-bottom:84px !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx) #kleinere-porties{ padding-top:76px !important; padding-bottom:52px !important; } }

/* 8-11-2026 (Stefan): slotsectie op /kleinere-porties/ in het midden; beide golfranden vallen binnen de sectie */
body.fb-shop.page-id-3117:not(#fbx) .fbx-sectie--cream{ padding-top:104px !important; padding-bottom:104px !important; }
body.fb-shop.page-id-3117:not(#fbx) .fbx-sectie--cream .fbx-kop{ margin-bottom:0 !important; }
body.fb-shop.page-id-3117:not(#fbx) .fbx-sectie--cream .fbx-knoppen{ margin-bottom:0 !important; }
@media (max-width:760px){ body.fb-shop.page-id-3117:not(#fbx) .fbx-sectie--cream{ padding-top:64px !important; padding-bottom:64px !important; } }
/* 8-11-2026: fijnafstelling, onderste golf is dieper dan de bovenste */
body.fb-shop.page-id-3117:not(#fbx) .fbx-sectie--cream{ padding-top:96px !important; padding-bottom:120px !important; }
@media (max-width:760px){ body.fb-shop.page-id-3117:not(#fbx) .fbx-sectie--cream{ padding-top:60px !important; padding-bottom:72px !important; } }

/* 8-11-2026 (i): Kleinere porties, eiwit als som en vezel als balk (schaal 0 tot 35 g) */
body.fb-shop:not(#fbx) .fbx-behoefte{ display:grid; grid-template-columns:1fr 1fr; gap:22px; max-width:940px; margin:36px auto 0; }
body.fb-shop:not(#fbx) .fbx-bh{ background:#FFFDF8; border:1px solid rgba(30,16,7,.10); border-radius:24px; padding:30px 30px 24px; text-align:center; display:flex; flex-direction:column; box-shadow:0 12px 32px -20px rgba(30,16,7,.40); position:relative; overflow:hidden; }
body.fb-shop:not(#fbx) .fbx-bh::before{ content:""; position:absolute; left:0; right:0; top:0; height:6px; background:#B5531E; }
body.fb-shop:not(#fbx) .fbx-bh--vezel::before{ background:#6E7F3A; }
body.fb-shop:not(#fbx) .fbx-bh-soort{ align-self:center; margin:0 0 12px !important; padding:5px 14px; border-radius:999px; font-size:13px !important; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#8F3A10; background:#F6E3D3; }
body.fb-shop:not(#fbx) .fbx-bh--vezel .fbx-bh-soort{ color:#4A5A22; background:#E6EAD3; }
body.fb-shop:not(#fbx) .fbx-bh-vraag{ margin:0 0 26px !important; font-family:'Fraunces',Georgia,serif; font-size:21px !important; line-height:1.3; font-weight:700; color:#1E1007; }
body.fb-shop:not(#fbx) .fbx-bh-noot{ margin:auto 0 0 !important; padding-top:20px; font-size:15px !important; line-height:1.5; color:#5A4A3C; }
body.fb-shop:not(#fbx) .fbx-som{ display:flex; align-items:flex-start; justify-content:center; gap:10px; }
body.fb-shop:not(#fbx) .fbx-som-deel{ display:flex; flex-direction:column; align-items:center; gap:8px; min-width:0; }
body.fb-shop:not(#fbx) .fbx-som-deel b{ font-family:'Fraunces',Georgia,serif; font-size:28px; line-height:1; font-weight:800; color:#1E1007; white-space:nowrap; padding:16px 12px; border-radius:16px; background:#F7F1E8; }
body.fb-shop:not(#fbx) .fbx-som-deel span{ font-size:14px; line-height:1.3; color:#5A4A3C; }
body.fb-shop:not(#fbx) .fbx-som-uitkomst b{ color:#FFFDF8; background:#B5531E; }
body.fb-shop:not(#fbx) .fbx-som-uitkomst span{ color:#8F3A10; font-weight:700; }
body.fb-shop:not(#fbx) .fbx-som-teken{ font-family:'Fraunces',Georgia,serif; font-size:26px; font-weight:700; color:#B5531E; line-height:60px; }
body.fb-shop:not(#fbx) .fbx-balk{ position:relative; text-align:left; }
body.fb-shop:not(#fbx) .fbx-balk-label{ margin:0 0 10px 68.57%; width:17.14%; display:flex; justify-content:center; gap:5px; white-space:nowrap; font-size:14px; color:#4A5A22; }
body.fb-shop:not(#fbx) .fbx-balk-label b{ font-weight:800; }
body.fb-shop:not(#fbx) .fbx-balk-baan{ position:relative; height:54px; border-radius:14px; background:#EFE8DC; }
body.fb-shop:not(#fbx) .fbx-balk-advies{ position:absolute; top:-6px; bottom:-6px; left:68.57%; width:17.14%; border-radius:10px; border:2px dashed #6E7F3A; background:repeating-linear-gradient(135deg, rgba(110,127,58,.18) 0 6px, rgba(110,127,58,.04) 6px 12px); }
body.fb-shop:not(#fbx) .fbx-balk-eten{ position:absolute; top:0; bottom:0; left:0; width:60%; border-radius:14px; background:#6E7F3A; display:flex; align-items:center; justify-content:flex-end; padding-right:14px; }
body.fb-shop:not(#fbx) .fbx-balk-eten span{ color:#FFFDF8; font-size:15px; white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-balk-eten b{ font-family:'Fraunces',Georgia,serif; font-size:20px; font-weight:800; margin-right:3px; }
body.fb-shop:not(#fbx) .fbx-balk-as{ position:relative; height:20px; margin-top:12px; font-size:13px; color:#7A6A5C; }
body.fb-shop:not(#fbx) .fbx-balk-as span{ position:absolute; top:0; transform:translateX(-50%); white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-balk-as span:nth-child(1){ left:0; transform:none; }
body.fb-shop:not(#fbx) .fbx-balk-as span:nth-child(2){ left:28.57%; }
body.fb-shop:not(#fbx) .fbx-balk-as span:nth-child(3){ left:57.14%; }
body.fb-shop:not(#fbx) .fbx-balk-as span:nth-child(4){ left:85.71%; }
body.fb-shop:not(#fbx) .fbx-behoefte-slot{ max-width:940px; margin:22px auto 0 !important; padding:16px 22px; border-radius:16px; background:#1E1007; color:#FFFDF8 !important; text-align:center; font-family:'Fraunces',Georgia,serif; font-size:20px !important; font-weight:700; }
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-behoefte{ grid-template-columns:1fr; gap:16px; margin-top:24px; }
  body.fb-shop:not(#fbx) .fbx-bh{ padding:26px 18px 20px; }
  body.fb-shop:not(#fbx) .fbx-som{ gap:6px; }
  body.fb-shop:not(#fbx) .fbx-som-deel b{ font-size:22px; padding:13px 8px; }
  body.fb-shop:not(#fbx) .fbx-som-deel span{ font-size:13px; }
  body.fb-shop:not(#fbx) .fbx-som-teken{ font-size:20px; line-height:50px; }
  body.fb-shop:not(#fbx) .fbx-balk-label{ margin-left:58%; width:auto; justify-content:flex-end; }
  body.fb-shop:not(#fbx) .fbx-behoefte-slot{ font-size:18px !important; }
}

/* 8-11-2026 (j): Duurzaamheid, kaarten Upstream / Eigen activiteiten / Downstream precies onder de kolommen van het plaatje (marge en tussenruimte 40 op 1600 = 2,5%) */
@media (min-width:901px){
  body.fb-shop:not(#fbx) .fbx-duurzaam-keten .fbx-keten{ padding:0 2.5%; column-gap:2.5%; margin-top:20px; }
}

/* 8-11-2026 (k): Duurzaamheid, vier tegels als twee bij twee */
@media (min-width:521px){ body.fb-shop:not(#fbx) .fbx-eerlijk.fbx-eerlijk--3.fbx-eerlijk--vier{ grid-template-columns:repeat(2,minmax(0,1fr)); max-width:900px; margin-left:auto; margin-right:auto; } }

/* 8-11-2026 (l): vezelbalk op Kleinere porties met eigen klassenaam (fbx-balk is al de reserveringsbalk) */
body.fb-shop:not(#fbx) .fbx-vzbalk{ position:relative; text-align:left; }
body.fb-shop:not(#fbx) .fbx-vzbalk-label{ margin:0 0 10px 68.57%; width:17.14%; display:flex; justify-content:center; gap:5px; white-space:nowrap; font-size:14px; color:#4A5A22; }
body.fb-shop:not(#fbx) .fbx-vzbalk-label b{ font-weight:800; }
body.fb-shop:not(#fbx) .fbx-vzbalk-baan{ position:relative; height:54px; border-radius:14px; background:#EFE8DC; }
body.fb-shop:not(#fbx) .fbx-vzbalk-advies{ position:absolute; top:-6px; bottom:-6px; left:68.57%; width:17.14%; border-radius:10px; border:2px dashed #6E7F3A; background:repeating-linear-gradient(135deg, rgba(110,127,58,.18) 0 6px, rgba(110,127,58,.04) 6px 12px); }
body.fb-shop:not(#fbx) .fbx-vzbalk-eten{ position:absolute; top:0; bottom:0; left:0; width:60%; border-radius:14px; background:#6E7F3A; display:flex; align-items:center; justify-content:flex-end; padding-right:14px; }
body.fb-shop:not(#fbx) .fbx-vzbalk-eten span{ color:#FFFDF8; font-size:15px; white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-vzbalk-eten b{ font-family:'Fraunces',Georgia,serif; font-size:20px; font-weight:800; margin-right:3px; }
body.fb-shop:not(#fbx) .fbx-vzbalk-as{ position:relative; height:20px; margin-top:12px; font-size:13px; color:#7A6A5C; }
body.fb-shop:not(#fbx) .fbx-vzbalk-as span{ position:absolute; top:0; transform:translateX(-50%); white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-vzbalk-as span:nth-child(1){ left:0; transform:none; }
body.fb-shop:not(#fbx) .fbx-vzbalk-as span:nth-child(2){ left:28.57%; }
body.fb-shop:not(#fbx) .fbx-vzbalk-as span:nth-child(3){ left:57.14%; }
body.fb-shop:not(#fbx) .fbx-vzbalk-as span:nth-child(4){ left:85.71%; }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-vzbalk-label{ margin-left:58%; width:auto; justify-content:flex-end; } }

/* 8-11-2026 (m): taalmenu met vlaggen en de pop-up "Request a language" (mu-plugin finebites-taalmenu.php) */
body.fb-shop:not(#fbx) .fbx-taal.fbx-taalmenu{ position:relative; display:inline-block; border:0; padding:0; margin-right:.6rem; gap:0; }
body.fb-shop:not(#fbx) .fbx-taalmenu .fbx-taal-knop{ appearance:none; display:inline-flex; align-items:center; gap:6px; height:36px; padding:0 10px 0 8px; border:1px solid rgba(30,16,7,.18); border-radius:999px; background:#FFFDF8; color:#1E1007; cursor:pointer; min-width:0; }
body.fb-shop:not(#fbx) .fbx-taalmenu .fbx-taal-knop:hover{ border-color:#B5531E; background:#FFF8EF; }
body.fb-shop:not(#fbx) .fbx-taalmenu .fbx-taal-knop[aria-expanded="true"]{ border-color:#B5531E; }
body.fb-shop:not(#fbx) .fbx-taalmenu .fbx-taal-knop:focus-visible, body.fb-shop:not(#fbx) .fbx-taal-lijst button:focus-visible{ outline:2px solid #B5531E; outline-offset:2px; }
body.fb-shop:not(#fbx) .fbx-taal-pijl{ width:12px; height:12px; transition:transform .15s; }
body.fb-shop:not(#fbx) .fbx-taal-knop[aria-expanded="true"] .fbx-taal-pijl{ transform:rotate(180deg); }
body.fb-shop:not(#fbx) .fbx-vlag{ display:inline-block; flex:none; width:24px; height:17px; border-radius:4px; background-size:cover; background-position:center; box-shadow:0 0 0 1px rgba(30,16,7,.14); }
body.fb-shop:not(#fbx) .fbx-vlag--nl{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 6'%3E%3Cpath fill='%2321468B' d='M0 0h9v6H0z'/%3E%3Cpath fill='%23fff' d='M0 0h9v4H0z'/%3E%3Cpath fill='%23AE1C28' d='M0 0h9v2H0z'/%3E%3C/svg%3E"); }
body.fb-shop:not(#fbx) .fbx-vlag--de{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 5 3'%3E%3Cpath d='M0 0h5v3H0z'/%3E%3Cpath fill='%23D00' d='M0 1h5v2H0z'/%3E%3Cpath fill='%23FFCE00' d='M0 2h5v1H0z'/%3E%3C/svg%3E"); }
body.fb-shop:not(#fbx) .fbx-vlag--en{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3CclipPath id='a'%3E%3Cpath d='M30 15h30v15zv15H0zH0V0zV0h30z'/%3E%3C/clipPath%3E%3Cpath fill='%23012169' d='M0 0h60v30H0z'/%3E%3Cpath stroke='%23fff' stroke-width='6' d='M0 0l60 30m0-30L0 30'/%3E%3Cpath stroke='%23C8102E' stroke-width='4' d='M0 0l60 30m0-30L0 30' clip-path='url(%23a)'/%3E%3Cpath stroke='%23fff' stroke-width='10' d='M30 0v30M0 15h60'/%3E%3Cpath stroke='%23C8102E' stroke-width='6' d='M30 0v30M0 15h60'/%3E%3C/svg%3E"); }
body.fb-shop:not(#fbx) .fbx-taal-lijst{ position:absolute; top:calc(100% + 8px); right:0; z-index:1000; min-width:220px; padding:6px; border-radius:16px; background:#FFFDF8; border:1px solid rgba(30,16,7,.10); box-shadow:0 18px 40px -12px rgba(30,16,7,.35); display:flex; flex-direction:column; gap:2px; }
body.fb-shop:not(#fbx) .fbx-taal-lijst[hidden]{ display:none; }
body.fb-shop:not(#fbx) .fbx-taal-lijst button{ appearance:none; display:flex; align-items:center; gap:12px; width:100%; padding:10px 12px; border:0; border-radius:10px; background:transparent; color:#1E1007; font:500 15px/1.2 'Fraunces',Georgia,serif; letter-spacing:0; text-align:left; cursor:pointer; min-width:0; }
body.fb-shop:not(#fbx) .fbx-taal-lijst button:hover{ background:#F7F1E8; }
body.fb-shop:not(#fbx) .fbx-taal-lijst button[aria-pressed="true"]{ background:#F6E3D3; color:#1E1007; font-weight:700; }
body.fb-shop:not(#fbx) .fbx-taal-lijst button[aria-pressed="true"]::after{ content:""; margin-left:auto; width:8px; height:8px; border-radius:50%; background:#B5531E; }
body.fb-shop:not(#fbx) .fbx-taal-lijst .fbx-taal-vraag{ margin-top:4px; padding-top:12px; border-top:1px solid rgba(30,16,7,.10); border-radius:0 0 10px 10px; color:#8F3A10; }
body.fb-shop:not(#fbx) .fbx-taal-plus{ display:inline-flex; align-items:center; justify-content:center; width:24px; height:17px; font:700 18px/1 'Fraunces',Georgia,serif; color:#B5531E; }
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-taal.fbx-taalmenu{ margin-right:.2rem; padding:0; }
  body.fb-shop:not(#fbx) .fbx-taalmenu .fbx-taal-knop{ height:32px; padding:0 7px 0 6px; gap:4px; }
  body.fb-shop:not(#fbx) .fbx-vlag{ width:22px; height:15px; }
  body.fb-shop:not(#fbx) .fbx-taal-lijst{ left:0; right:auto; }
}
/* pop-up */
.fbx-taalvraag{ width:min(440px, calc(100vw - 32px)); padding:0; border:0; border-radius:22px; background:#FFFDF8; color:#1E1007; box-shadow:0 30px 70px -20px rgba(30,16,7,.5); }
.fbx-taalvraag::backdrop{ background:rgba(30,16,7,.45); }
.fbx-taalvraag-form{ position:relative; padding:30px 28px 24px; display:flex; flex-direction:column; gap:14px; font-family:'Fraunces',Georgia,serif; }
.fbx-taalvraag h2{ margin:0; font:800 26px/1.15 'Fraunces',Georgia,serif; color:#1E1007; padding-right:30px; }
.fbx-taalvraag p{ margin:0; font-size:16px; line-height:1.5; color:#4A3A2C; }
.fbx-taalvraag label{ display:flex; flex-direction:column; gap:6px; font-size:14px; font-weight:700; color:#1E1007; }
.fbx-taalvraag label em{ font-style:normal; font-weight:400; color:#7A6A5C; }
.fbx-taalvraag input:not(.fbx-res-hp){ font:400 16px/1.3 'Fraunces',Georgia,serif; padding:12px 14px; border:1px solid rgba(30,16,7,.22); border-radius:12px; background:#fff; color:#1E1007; width:100%; box-sizing:border-box; }
.fbx-taalvraag input:not(.fbx-res-hp):focus{ outline:2px solid #B5531E; outline-offset:1px; border-color:#B5531E; }
.fbx-taalvraag .fbx-res-hp{ position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }
.fbx-taalvraag .fbx-knop{ align-self:stretch; justify-content:center; margin-top:4px; }
.fbx-taalvraag-melding{ min-height:1.2em; font-size:14px !important; color:#8F3A10 !important; }
.fbx-taalvraag-sluit{ position:absolute; top:14px; right:14px; width:36px; height:36px; border:0; border-radius:50%; background:#F7F1E8; color:#1E1007; font:400 24px/1 Georgia,serif; cursor:pointer; }
.fbx-taalvraag-sluit:hover{ background:#F6E3D3; }

/* 8-11-2026 (n): pop-up taalverzoek, ronde sluitknop en uitleg onder het e-mailveld */
.fbx-taalvraag .fbx-taalvraag-sluit{ padding:0 !important; width:36px !important; height:36px !important; min-width:0 !important; min-height:0 !important; display:flex; align-items:center; justify-content:center; border-radius:50% !important; box-shadow:none !important; }
.fbx-taalvraag label small{ font-size:13px; font-weight:400; line-height:1.4; color:#7A6A5C; }

/* 8-11-2026 (o): Kleinere porties, gewicht invullen in de eiwitsom */
body.fb-shop:not(#fbx) .fbx-som-invoer{ cursor:text; }
body.fb-shop:not(#fbx) .fbx-som-invoer b{ display:inline-flex; align-items:baseline; gap:6px; border:2px solid #B5531E; background:#FFFDF8; box-shadow:0 0 0 4px rgba(181,83,30,.10); }
body.fb-shop:not(#fbx) .fbx-som-invoer:focus-within b{ box-shadow:0 0 0 4px rgba(181,83,30,.25); }
body.fb-shop:not(#fbx) .fbx-som-invoer input{ width:2.6ch; padding:0; margin:0; border:0; background:transparent; font:inherit; color:inherit; text-align:right; -moz-appearance:textfield; appearance:textfield; outline:none; box-shadow:none; min-height:0; }
body.fb-shop:not(#fbx) .fbx-som-invoer input::-webkit-outer-spin-button, body.fb-shop:not(#fbx) .fbx-som-invoer input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
body.fb-shop:not(#fbx) .fbx-som-invoer i{ font-style:normal; }
body.fb-shop:not(#fbx) .fbx-som-invoer span::after{ content:" ✎"; color:#B5531E; }

/* 8-11-2026 (p): missiepagina, consumentenprobleem zoals in de brochure: cijfers met betekenis en een conclusieblok */
body.fb-shop:not(#fbx) .fbx-cijfers{ max-width:900px; margin:36px auto 0; background:#FFFDF8; border:1px solid rgba(30,16,7,.10); border-radius:24px; padding:10px 0; box-shadow:0 12px 32px -22px rgba(30,16,7,.40); }
body.fb-shop:not(#fbx) .fbx-cijfers-kop{ margin:14px 28px 8px !important; font-size:13px !important; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#8F3A10; }
body.fb-shop:not(#fbx) .fbx-cijfer{ display:grid; grid-template-columns:1.45fr 1fr; gap:24px; align-items:center; padding:18px 28px; }
body.fb-shop:not(#fbx) .fbx-cijfer + .fbx-cijfer{ border-top:1px solid rgba(30,16,7,.08); }
body.fb-shop:not(#fbx) .fbx-cijfer-feit{ margin:0 !important; display:flex; align-items:center; gap:18px; font-size:17px !important; line-height:1.45; color:#3A2A1C; }
body.fb-shop:not(#fbx) .fbx-cijfer-feit b{ flex:none; min-width:96px; text-align:center; padding:10px 12px; border-radius:14px; background:#F6E3D3; color:#8F3A10; font-family:'Fraunces',Georgia,serif; font-size:24px; font-weight:800; line-height:1.1; white-space:nowrap; }
body.fb-shop:not(#fbx) .fbx-cijfer-dus{ margin:0 !important; font-family:'Fraunces',Georgia,serif; font-size:18px !important; font-weight:700; line-height:1.35; color:#1E1007; text-align:center; }
body.fb-shop:not(#fbx) .fbx-conclusieblok{ max-width:900px; margin:24px auto 0; padding:26px 32px 28px; border-radius:24px; background:#1E1007; color:#FFFDF8; }
body.fb-shop:not(#fbx) .fbx-conclusieblok-kop{ margin:0 0 8px !important; font-family:'Fraunces',Georgia,serif; font-size:15px !important; font-weight:800; color:#E8A86E !important; }
body.fb-shop:not(#fbx) .fbx-conclusieblok p:not(.fbx-conclusieblok-kop){ margin:0 !important; font-size:19px !important; line-height:1.55; color:#FFFDF8 !important; }
@media (max-width:760px){
  body.fb-shop:not(#fbx) .fbx-cijfers{ margin-top:24px; border-radius:18px; }
  body.fb-shop:not(#fbx) .fbx-cijfers-kop{ margin:12px 18px 4px !important; }
  body.fb-shop:not(#fbx) .fbx-cijfer{ grid-template-columns:1fr; gap:8px; padding:16px 18px; }
  body.fb-shop:not(#fbx) .fbx-cijfer-feit{ font-size:16px !important; gap:14px; }
  body.fb-shop:not(#fbx) .fbx-cijfer-feit b{ min-width:78px; font-size:21px; }
  body.fb-shop:not(#fbx) .fbx-cijfer-dus{ text-align:left; padding-left:92px; font-size:16px !important; }
  body.fb-shop:not(#fbx) .fbx-conclusieblok{ padding:22px 20px; border-radius:18px; }
  body.fb-shop:not(#fbx) .fbx-conclusieblok p:not(.fbx-conclusieblok-kop){ font-size:17px !important; }
}

/* 8-11-2026 (q): knop "Bekijk alle producten" midden tussen de inhoud en de golf naar de bruine voet */
body.fb-shop:not(#fbx).page-id-3116 .fbx-voor-na + .fbx-knoppen{ margin-top:61px !important; }
body.fb-shop:not(#fbx).page-id-3116 .fbx-sectie--cream{ padding-bottom:60px !important; }
@media (max-width:760px){
  body.fb-shop:not(#fbx).page-id-3116 .fbx-voor-na + .fbx-knoppen{ margin-top:47px !important; }
  body.fb-shop:not(#fbx).page-id-3116 .fbx-sectie--cream{ padding-bottom:32px !important; }
}
body.fb-shop:not(#fbx) #waarom .fbx-pijlers + .fbx-knoppen{ margin-top:40px; }

/* 8-11-2026 (r): missiepagina, onderruimte van de laatste sectie zodat de knop midden tussen foto's en golf staat (wint van de regel voor :last-child) */
body.fb-shop:not(#fbx).page-id-3116 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:60px !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx).page-id-3116 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:32px !important; } }

/* 8-11-2026 (s): desktop iets minder onderruimte, de golf zakt in het midden */
@media (min-width:761px){ body.fb-shop:not(#fbx).page-id-3116 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:40px !important; } }

/* 8-11-2026 (t): missiepagina, "Ons eten kan beter" midden in het witte vlak (bovenaan valt de golf eroverheen) */
body.fb-shop:not(#fbx) .fbx-sectie.fbx-probleem{ padding-top:107px !important; padding-bottom:37px !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx) .fbx-sectie.fbx-probleem{ padding-top:65px !important; padding-bottom:14px !important; } }

/* 8-11-2026 (u): duurzaamheid, knop "Bekijk alle producten" midden tussen de tegels en de golf naar de voet */
body.fb-shop:not(#fbx).page-id-3202 .fbx-eerlijk-groep + .fbx-knoppen{ margin-top:61px !important; }
body.fb-shop:not(#fbx).page-id-3202 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:40px !important; }
@media (max-width:760px){
  body.fb-shop:not(#fbx).page-id-3202 .fbx-eerlijk-groep + .fbx-knoppen{ margin-top:47px !important; }
  body.fb-shop:not(#fbx).page-id-3202 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:32px !important; }
}

/* 8-11-2026 (v): duurzaamheid, golf valt over de onderrand: meer onderruimte zodat de knop in het midden staat */
body.fb-shop:not(#fbx).page-id-3202 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:76px !important; }
@media (max-width:760px){ body.fb-shop:not(#fbx).page-id-3202 .entry-content > .fbx-sectie.fbx-sectie--cream:last-child:not(.fbx-sectie--ink){ padding-bottom:71px !important; } }

/* w (9-11-2026): productpagina, meer ruimte tussen de kaarten van "Ook lekker" en de bruine voet */
body.fb-shop.single-product:not(#fbx) section.related.products{ padding-bottom:4.5rem !important; }
@media (max-width:767px){ body.fb-shop.single-product:not(#fbx) section.related.products{ padding-bottom:3.5rem !important; } }

/* x (9-11-2026): sprong-link voor schermlezers verborgen tot hij focus krijgt (op de homepage ontbrak de themaregel) */
body.fb-shop .screen-reader-text:not(:focus){ position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(1px,1px,1px,1px) !important; white-space:nowrap !important; border:0 !important; }
body.fb-shop .skip-link:focus{ position:fixed !important; top:8px; left:8px; z-index:100000; background:#1E1007; color:#F7F3EC !important; padding:.7rem 1rem; border-radius:10px; }
