/* Het Laatste Kookboek: warme crème, diep antraciet, goud zoals de kaft */
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/playfair-display-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/playfair-display-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/inter-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/inter-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/inter-latin-700-normal.woff2) format("woff2")}
:root{--inkt:#1c1917;--tekst:#3a332e;--zacht:#6f655d;--goud:#b8862e;--goud-licht:#d8ae55;--goud-bleek:#f3e6c8;--creme:#faf6ee;--wit:#fff;--lijn:#e8dcc6;--donker:#14110f;--groen:#2f7d4f;--rond:14px;--schaduw:0 18px 40px -22px rgba(28,25,23,.35);--kop-h:68px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--creme);color:var(--tekst);font:400 17px/1.65 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:#8a5f14;text-underline-offset:3px}
a:hover{color:var(--inkt)}
h1,h2,h3,h4{font-family:"Playfair Display",Georgia,serif;color:var(--inkt);line-height:1.2;margin:0 0 .5em;font-weight:700;overflow-wrap:break-word;hyphens:manual;text-wrap:balance}
h1{font-size:clamp(2rem,4.6vw,3.2rem)}
h2{font-size:clamp(1.55rem,3vw,2.15rem);margin-top:1.6em}
h3{font-size:1.25rem;margin-top:1.4em}
p{margin:0 0 1em}
.wrap{width:min(1180px,100% - 32px);margin-inline:auto}
.smal{max-width:780px;margin-inline:auto}
.midden{text-align:center}
.klein{font-size:.88rem;color:var(--zacht)}
.overslaan{position:absolute;left:-9999px}
.overslaan:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 14px;border-radius:8px}
/* knoppen */
.knop{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--goud);color:#fff;border:2px solid var(--goud);border-radius:999px;padding:11px 22px;font:600 .95rem/1.2 Inter,sans-serif;text-decoration:none;cursor:pointer;transition:background .35s ease,color .35s ease,box-shadow .35s ease;box-shadow:0 10px 24px -10px rgba(184,134,46,.6);text-align:center}
.knop:hover{background:#9c7023;border-color:#9c7023;color:#fff}
.knop-licht{background:transparent;color:var(--inkt);border-color:var(--inkt);box-shadow:none}
.knop-licht:hover{background:var(--inkt);color:#fff;border-color:var(--inkt)}
.knop-groot{padding:15px 28px;font-size:1.02rem}
.knop-wit{background:transparent;color:#fff;border-color:rgba(255,255,255,.75);box-shadow:none}
.knop-wit:hover{background:#fff;color:var(--inkt);border-color:#fff}
.label{display:inline-block;border:1px solid var(--goud);color:var(--inkt);border-radius:999px;padding:6px 16px;font:600 .74rem/1.2 Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
/* kop */
.kop{position:sticky;top:0;z-index:50;background:rgba(20,17,15,.97);backdrop-filter:blur(8px);color:#fff}
.kop .wrap{display:flex;align-items:center;justify-content:space-between;min-height:var(--kop-h);gap:16px}
.merk{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:700 1.15rem/1.1 "Playfair Display",serif;white-space:nowrap}
.merk svg{width:34px;height:34px;flex:none}
.merk b{color:var(--goud-licht);font-weight:700}
.merk:hover{color:#fff}
.menu{display:flex;align-items:center;gap:22px}
.menu a{color:#efe6d6;text-decoration:none;font-size:.93rem;font-weight:600;white-space:nowrap}
.menu a:hover,.menu a[aria-current]{color:var(--goud-licht)}
.menu .knop{color:#fff;padding:9px 18px}
.menu-knop{display:none;background:none;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:999px;padding:7px 16px;font:600 .9rem Inter,sans-serif;cursor:pointer}
@media (max-width:1120px){
 .menu-knop{display:block}
 .menu{display:none;position:absolute;left:0;right:0;top:var(--kop-h);background:var(--donker);flex-direction:column;align-items:stretch;padding:12px 16px 20px;gap:4px;border-top:1px solid rgba(255,255,255,.08)}
 .menu.open{display:flex}
 .menu a{padding:11px 4px;border-bottom:1px solid rgba(255,255,255,.07)}
 .menu .knop{margin-top:10px;border-bottom:0}
}
/* seizoensbalk */
.seizoen{background:var(--goud-bleek);color:var(--inkt);text-align:center;font-size:.9rem;padding:8px 16px}
.seizoen b{color:#8a5f14}
/* hero */
.hero{position:relative;background:var(--donker) center/cover no-repeat;color:#f4ead6;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(14,12,10,.94) 0%,rgba(14,12,10,.82) 48%,rgba(14,12,10,.45) 100%)}
.hero .wrap{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:clamp(48px,7vw,96px) 0}
.hero h1{color:#fff;font-size:clamp(2.1rem,5vw,3.6rem)}
.hero h1 em{font-style:italic;font-weight:400;color:var(--goud-licht)}
.hero .label{color:#f4ead6;border-color:var(--goud-licht)}
.hero .sub{font-size:1.13rem;color:#e3d8c6;max-width:560px}
.acties{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.vertrouwen{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.9rem;color:#d9cdb9}
.vertrouwen li::before{content:"\2713";color:#5fc387;font-weight:700;margin-right:7px}
.hero-boek{justify-self:center;max-width:380px;filter:drop-shadow(0 30px 40px rgba(0,0,0,.55))}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr;text-align:center}.hero .sub{margin-inline:auto}.acties,.vertrouwen{justify-content:center}.hero-boek{max-width:230px;order:-1}}
.aftel{display:inline-flex;gap:10px;align-items:center;background:rgba(216,174,85,.12);border:1px solid rgba(216,174,85,.5);border-radius:12px;padding:10px 16px;font-size:.92rem;margin-top:14px}
.aftel b{font:700 1.2rem "Playfair Display",serif;color:var(--goud-licht)}
/* secties */
.sectie{padding:clamp(56px,7vw,92px) 0}
.vlak{background:#f3ece0}
.donker-vlak{background:var(--donker);color:#e3d8c6}
.donker-vlak h2,.donker-vlak h3{color:#fff}
.sectie-kop{text-align:center;max-width:720px;margin:0 auto 38px}
.sectie-kop h2{margin-top:0}
.cijfers{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center}
.cijfers div{background:#fff;border:1px solid var(--lijn);border-radius:var(--rond);padding:22px 12px}
.cijfers b{display:block;font:700 2.1rem/1.1 "Playfair Display",serif;color:var(--goud)}
.cijfers span{font-size:.92rem;color:var(--zacht)}
@media (max-width:760px){.cijfers{grid-template-columns:repeat(2,1fr)}}
/* keuzekaarten */
.keuzes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.keuze{position:relative;border-radius:var(--rond);overflow:hidden;background:var(--donker);color:#fff;text-decoration:none;min-height:230px;display:flex;align-items:flex-end;box-shadow:var(--schaduw)}
.keuze img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62;transition:transform .85s cubic-bezier(.22,.61,.36,1),opacity .5s}
.keuze:hover img{transform:scale(1.05);opacity:.5}
.keuze div{position:relative;padding:20px;width:100%;text-align:center;background:linear-gradient(to top,rgba(0,0,0,.75),transparent)}
.keuze h3{color:#fff;margin:0 0 4px}
.keuze p{margin:0;font-size:.92rem;color:#eadfcb}
@media (max-width:860px){.keuzes{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.keuzes{grid-template-columns:1fr}}
/* hoofdstukken */
.hoofdstukken{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;list-style:none;padding:0;margin:0}
.hoofdstukken li{background:#fff;border:1px solid var(--lijn);border-radius:12px;padding:14px 14px;display:flex;gap:12px;align-items:center;min-height:72px}
.hoofdstukken .nr{font:700 1.05rem "Playfair Display",serif;color:var(--goud);min-width:24px}
.hoofdstukken .naam{font-weight:600;color:var(--inkt);font-size:.95rem;line-height:1.35}
.hoofdstukken .aantal{margin-left:auto;font-size:.82rem;color:var(--zacht);white-space:nowrap}
@media (max-width:980px){.hoofdstukken{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.hoofdstukken{grid-template-columns:1fr}}
/* receptraster */
.raster{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.raster.drie{grid-template-columns:repeat(3,1fr)}
.rkaart{background:#fff;border:1px solid var(--lijn);border-radius:var(--rond);overflow:hidden;display:flex;flex-direction:column;text-align:center;transition:box-shadow .5s ease,transform .5s ease}
a.rkaart{text-decoration:none;color:inherit}
a.rkaart:hover{box-shadow:var(--schaduw);transform:translateY(-2px)}
.rkaart .rfoto{aspect-ratio:3/2;background:linear-gradient(135deg,#2a231e,#14110f);display:flex;align-items:center;justify-content:center;color:var(--goud-licht);font:italic 400 1.05rem "Playfair Display",serif;padding:12px}
.rkaart .rfoto img{width:100%;height:100%;object-fit:cover}
.rkaart .rtekst{padding:14px 14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.rkaart h3{font-size:1.05rem;margin:0}
.rkaart .rmeta{font-size:.83rem;color:var(--zacht)}
.rkaart .rlink{margin-top:auto;font-size:.85rem;font-weight:600;color:#8a5f14}
.rkaart .rboek{margin-top:auto;font-size:.8rem;color:var(--zacht)}
@media (max-width:980px){.raster,.raster.drie{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.raster,.raster.drie{grid-template-columns:1fr}}
/* artikel */
.artikel{padding:34px 0 70px}
.kruimel{font-size:.86rem;color:var(--zacht);margin-bottom:18px}
.kruimel a{color:var(--zacht)}
.bijgewerkt{margin:-4px 0 18px}
.kort-antwoord{background:#fff;border:1px solid var(--lijn);border-left:4px solid var(--goud);border-radius:12px;padding:18px 22px;margin:0 0 22px}
.kort-antwoord b{display:block;font:600 .76rem Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--goud);margin-bottom:6px}
.kort-antwoord p{margin:0;font-size:1.06rem;color:var(--inkt)}
.snel-cta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}
.inhoud ul,.inhoud ol{padding-left:1.3em}
.inhoud li{margin-bottom:.4em}
.inhoud li::marker{color:var(--goud)}
.tabel-wrap{overflow-x:auto;margin:1.2em 0 1.6em;border:1px solid var(--lijn);border-radius:12px;background:#fff}
table{border-collapse:collapse;width:100%;font-size:.94rem}
th,td{padding:10px 14px;text-align:left;border-bottom:1px solid #efe6d6;vertical-align:top}
thead th{background:#f6efe2;color:var(--inkt);font-weight:600}
tbody tr:last-child td{border-bottom:0}
/* receptkaart */
.recept{background:#fff;border:1px solid var(--lijn);border-radius:18px;overflow:hidden;margin:6px 0 34px;box-shadow:var(--schaduw)}
.recept-foto{aspect-ratio:16/9;width:100%;object-fit:cover}
.recept-binnen{padding:clamp(18px,3.5vw,34px)}
.recept-kop{text-align:center;margin-bottom:16px}
.recept-kop .hoofdstukregel{font:600 .74rem Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--goud)}
.recept-kop h2{margin:.25em 0 .1em;font-size:clamp(1.5rem,3vw,2rem)}
.recept-kop .ondertitel{font:italic 400 1.1rem "Playfair Display",serif;color:var(--zacht)}
.recept-intro{text-align:center;max-width:640px;margin:0 auto 18px}
.infobalk{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;border-top:1px solid var(--lijn);border-bottom:1px solid var(--lijn);padding:12px 0;font-size:.92rem;color:var(--inkt)}
.infobalk span b{color:var(--goud)}
.labels{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:14px 0 22px}
.labels span{border:1px solid var(--goud-licht);color:#7a5a1c;border-radius:999px;padding:3px 11px;font:600 .72rem Inter,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.recept-kolommen{display:grid;grid-template-columns:minmax(240px,34%) 1fr;gap:34px}
@media (max-width:760px){.recept-kolommen{grid-template-columns:1fr;gap:20px}}
.recept h3{font-size:1.2rem;margin:0 0 10px}
.porties{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:.92rem}
.porties button{width:32px;height:32px;border-radius:50%;border:1px solid var(--goud);background:#fff;color:var(--inkt);font-size:1.1rem;cursor:pointer;line-height:1}
.porties output{font-weight:700;min-width:1.6em;text-align:center}
.no-js .porties{display:none}
.ingredienten{list-style:none;padding:0;margin:0}
.ingredienten li{padding:7px 0;border-bottom:1px dotted #e2d8c6;font-size:.95rem}
.ingredienten li.groep{border:0;padding-top:14px;font:600 .74rem Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--goud)}
.ingredienten .noot{color:var(--zacht);font-size:.86rem}
.voeding{margin-top:20px;font-size:.88rem}
.voeding caption{text-align:left;font:600 .74rem Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--goud);padding-bottom:6px}
.voeding td{padding:6px 0;border-bottom:1px solid #efe6d6}
.voeding td:last-child{text-align:right;font-weight:600;color:var(--inkt)}
.stappen{list-style:none;counter-reset:s;padding:0;margin:0}
.stappen li{counter-increment:s;position:relative;padding-left:44px;margin-bottom:14px}
.stappen li::before{content:counter(s);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:50%;background:var(--inkt);color:var(--goud-licht);font:700 .85rem/30px Inter,sans-serif;text-align:center}
.tips{background:#faf5ec;border-left:3px solid var(--goud-licht);border-radius:0 10px 10px 0;padding:14px 18px;margin-top:18px;font-size:.94rem}
.tips h4{font-size:1.02rem;margin:0 0 6px}
.tips p{margin:0 0 6px}
.recept-voet{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--lijn);margin-top:22px;padding-top:14px;font-size:.88rem;color:var(--zacht)}
.recept-voet button{background:none;border:1px solid var(--lijn);border-radius:999px;padding:7px 14px;cursor:pointer;font:600 .85rem Inter,sans-serif;color:var(--inkt)}
.uit-boek{display:flex;gap:16px;align-items:center;background:var(--donker);color:#e3d8c6;border-radius:14px;padding:16px 20px;margin:-14px 0 34px}
.uit-boek img{width:58px;flex:none}
.uit-boek p{margin:0;font-size:.95rem}
.uit-boek a{color:var(--goud-licht);font-weight:600}
/* koopblok */
.koopblok{background:var(--donker);color:#e3d8c6;border-radius:20px;padding:clamp(22px,4vw,40px);margin:40px 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center}
.koopblok .blok-kop{font:700 clamp(1.4rem,2.6vw,1.9rem)/1.2 "Playfair Display",serif;color:#fff;margin:0 0 10px}
.koopblok .label{color:#f4ead6;border-color:var(--goud-licht)}
.koopblok-boek{display:flex;gap:18px;align-items:center}
.koopblok-boek img{width:110px;flex:none;filter:drop-shadow(0 16px 20px rgba(0,0,0,.5))}
.koopblok .klein{color:#bfb3a1}
.koopblok-keuze{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.koopkaart{position:relative;background:#211c18;border:1px solid #3a322b;border-radius:14px;padding:18px 16px;display:flex;flex-direction:column;gap:8px;text-align:center;align-items:center}
.koopkaart.uitgelicht{border-color:var(--goud-licht)}
.koopkaart b{color:#fff;font-size:1.02rem}
.prijs-klein{font:700 1.6rem "Playfair Display",serif;color:var(--goud-licht)}
.prijs-oud{font-size:.85rem;color:#a3988a;text-decoration:line-through}
.lint{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--goud);color:#fff;font:700 .68rem Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:4px 12px;white-space:nowrap}
.koopkaart .klein{color:#bfb3a1;font-size:.83rem}
.koopkaart .knop{width:100%}
.akkoord{display:flex;gap:8px;align-items:flex-start;font-size:.76rem;line-height:1.4;color:#bfb3a1;text-align:left}
.akkoord input{margin-top:2px;flex:none}
.kassakoopje{display:flex;gap:8px;align-items:flex-start;text-align:left;font-size:.82rem;background:rgba(216,174,85,.1);border:1px dashed rgba(216,174,85,.6);border-radius:10px;padding:8px 10px;color:#e3d8c6;cursor:pointer}
.kassakoopje input{margin-top:3px;flex:none}
.kassakoopje b{color:var(--goud-licht)}
.koopblok-meer{grid-column:1/-1;text-align:center;margin:0}
.koopblok-meer a{color:var(--goud-licht)}
@media (max-width:900px){.koopblok{grid-template-columns:1fr}}
@media (max-width:520px){.koopblok-keuze{grid-template-columns:1fr}.koopblok-boek img{width:80px}}
/* pakketten (bestelpagina, home) */
.pakketten{display:grid;grid-template-columns:repeat(2,minmax(0,420px));justify-content:center;gap:24px;margin-top:10px}
.pakket{position:relative;background:#fff;border:1px solid var(--lijn);border-radius:20px;padding:30px 26px;display:flex;flex-direction:column;gap:12px;text-align:center;align-items:center;box-shadow:var(--schaduw)}
.pakket.uitgelicht{border:2px solid var(--goud)}
.pakket h2,.pakket h3{margin:0;font-size:1.5rem}
.pakket .prijs{font:700 2.4rem/1 "Playfair Display",serif;color:var(--inkt)}
.pakket .prijs small{font:400 .85rem Inter,sans-serif;color:var(--zacht)}
.pakket .knop{width:100%}
.pakket .akkoord,.pakket .kassakoopje{color:var(--tekst)}
.pakket .kassakoopje{background:#fbf5e8;border-color:var(--goud-licht)}
.pakket .kassakoopje b{color:#8a5f14}
.pakket-beeld{width:150px;margin:-4px auto 4px;filter:drop-shadow(0 14px 18px rgba(0,0,0,.25))}
@media (max-width:760px){.pakketten{grid-template-columns:1fr}}
.vinkjes{list-style:none;padding:0;margin:4px auto;width:fit-content;text-align:left}
.vinkjes li{display:flex;gap:10px;align-items:flex-start;margin-bottom:7px;font-size:.95rem}
.vinkjes li::before{content:"\2713";color:var(--groen);font-weight:700}
.melding-geannuleerd{background:#fff4e5;border:1px solid #f0c27a;border-radius:10px;padding:12px 16px}
/* faq */
.faq{margin-top:40px}
.faq details{background:#fff;border:1px solid var(--lijn);border-radius:12px;margin-bottom:10px;padding:0 18px}
.faq summary{cursor:pointer;padding:15px 0;font-weight:600;color:var(--inkt);list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";color:var(--goud);font-size:1.3rem;line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq details p{margin:0 0 16px}
.lees-ook{margin-top:44px;border-top:1px solid var(--lijn);padding-top:26px}
.lees-ook ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.lees-ook a{display:inline-block;background:#fff;border:1px solid var(--lijn);border-radius:999px;padding:8px 16px;text-decoration:none;color:var(--inkt);font-size:.92rem}
.lees-ook a:hover{border-color:var(--goud)}
.lees-ook h2{text-align:center;font-size:1.4rem}
/* tools */
.tool{background:#fff;border:1px solid var(--lijn);border-radius:18px;padding:clamp(18px,3vw,30px);margin:0 0 34px;box-shadow:var(--schaduw)}
.tool h2{margin-top:0;text-align:center}
.filters{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}
.filters label{display:flex;flex-direction:column;gap:5px;font-size:.84rem;font-weight:600;color:var(--inkt)}
.filters select,.zoekveld{font:400 1rem Inter,sans-serif;padding:10px 12px;border:1px solid #d8cbb2;border-radius:10px;background:#fff;color:var(--inkt)}
@media (max-width:640px){.filters{grid-template-columns:1fr}}
.dag-uit{margin-top:18px;border-top:1px solid var(--lijn);padding-top:18px;text-align:center}
.dag-uit h3{margin:.2em 0;font-size:1.5rem}
.dag-uit .ondertitel{font:italic 400 1.05rem "Playfair Display",serif;color:var(--zacht)}
.dag-uit .rmeta{color:var(--zacht);font-size:.92rem;margin:8px 0 14px}
.gratis-badge{display:inline-block;background:#e7f3eb;color:var(--groen);border-radius:999px;padding:3px 12px;font:600 .75rem Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.week{display:grid;gap:10px}
.week-dag{display:grid;grid-template-columns:110px 1fr auto;gap:14px;align-items:center;background:#fbf7f0;border:1px solid var(--lijn);border-radius:12px;padding:12px 16px}
.week-dag .dag{font:700 1rem "Playfair Display",serif;color:var(--goud)}
.week-dag .titel{font-weight:600;color:var(--inkt)}
.week-dag .rmeta{font-size:.84rem;color:var(--zacht);white-space:nowrap}
@media (max-width:640px){.week-dag{grid-template-columns:1fr;gap:2px;text-align:center}}
.boodschappen{columns:2;column-gap:30px;margin-top:10px}
.boodschappen h4{break-after:avoid;font-size:1rem;margin:14px 0 6px;color:var(--goud)}
.boodschappen label{display:flex;gap:8px;align-items:flex-start;break-inside:avoid;padding:4px 0;font-size:.93rem;cursor:pointer}
.boodschappen input:checked+span{text-decoration:line-through;color:#a3988a}
@media (max-width:640px){.boodschappen{columns:1}}
.bak-cats{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:12px 0 16px}
.bak-cats button{background:#fff;border:1px solid #d8cbb2;border-radius:999px;padding:7px 14px;font:600 .85rem Inter,sans-serif;cursor:pointer;color:var(--inkt)}
.bak-cats button[aria-pressed=true]{background:var(--inkt);color:#fff;border-color:var(--inkt)}
.zoekveld{width:100%}
.baktabel td:nth-child(2),.baktabel td:nth-child(3){white-space:nowrap;font-weight:600;color:var(--inkt)}
.no-js .bak-cats,.no-js .zoekveld{display:none}
/* cadeaukaart */
.cadeaukaart{max-width:520px;margin:20px auto;aspect-ratio:148/105;background:var(--donker) center/cover;border-radius:16px;color:#f4ead6;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:26px;position:relative;overflow:hidden;box-shadow:var(--schaduw)}
.cadeaukaart::before{content:"";position:absolute;inset:10px;border:1px solid rgba(216,174,85,.6);border-radius:10px;pointer-events:none}
.cadeaukaart .ck-boven{font:600 .72rem Inter,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--goud-licht)}
.cadeaukaart .ck-titel{font:700 clamp(1.4rem,4vw,2.1rem)/1.15 "Playfair Display",serif;color:#fff;margin:8px 0}
.cadeaukaart .ck-regel{font:italic 400 1rem "Playfair Display",serif;color:#e3d8c6}
.cadeaukaart .ck-velden{margin-top:14px;font-size:.85rem;color:#cfc4b2;display:grid;gap:8px;width:80%}
.cadeaukaart .ck-velden span{border-bottom:1px solid rgba(216,174,85,.5);padding-bottom:3px;text-align:left}
/* proefhoofdstuk */
.download-blok{display:grid;grid-template-columns:200px 1fr;gap:26px;align-items:center;background:#fff;border:1px solid var(--lijn);border-radius:18px;padding:24px;margin:0 0 30px;box-shadow:var(--schaduw)}
.download-blok img{filter:drop-shadow(0 14px 18px rgba(0,0,0,.25))}
@media (max-width:640px){.download-blok{grid-template-columns:1fr;text-align:center}.download-blok img{max-width:150px;margin:auto}}
.proeflijst{columns:2;column-gap:26px;font-size:.92rem;padding-left:1.2em}
@media (max-width:640px){.proeflijst{columns:1}}
/* voet */
.voet{background:#000;color:#bfb3a1;padding:56px 0 26px;font-size:.92rem}
.voet .kolommen{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:28px}
.voet h3{color:#fff;font-size:1.05rem;margin:0 0 12px}
.voet ul{list-style:none;padding:0;margin:0}
.voet li{margin-bottom:7px}
.voet a{color:#d8ccb8;text-decoration:none}
.voet a:hover{color:var(--goud-licht)}
.voet .disclaimer{border-top:1px solid #2a2520;margin-top:34px;padding-top:18px;font-size:.8rem;color:#8f8476}
.voet .onder{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:12px;font-size:.8rem;color:#8f8476}
@media (max-width:860px){.voet .kolommen{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.voet .kolommen{grid-template-columns:1fr}}
/* plakbalk mobiel */
.plakbalk{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(20,17,15,.97);color:#fff;display:none;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
.plakbalk span{font-size:.9rem}
.plakbalk b{color:var(--goud-licht)}
@media (max-width:760px){.plakbalk{display:flex}.plakbalk[hidden]{display:none}body{padding-bottom:64px}}
/* melding */
.melding{max-width:620px;margin:80px auto;padding:0 16px;text-align:center}
.downloads{list-style:none;padding:0;display:grid;gap:10px;justify-items:center}
/* reveal */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .85s cubic-bezier(.22,.61,.36,1),transform .85s cubic-bezier(.22,.61,.36,1)}
.js .reveal.zichtbaar{opacity:1;transform:none}
.stagger>*:nth-child(2){transition-delay:110ms}.stagger>*:nth-child(3){transition-delay:220ms}.stagger>*:nth-child(4){transition-delay:330ms}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
@media print{
 .kop,.voet,.plakbalk,.koopblok,.seizoen,.snel-cta,.faq,.lees-ook,.raster,.uit-boek,.recept-voet button,.porties,.kruimel,.tool .filters{display:none!important}
 body{background:#fff;font-size:11pt;padding:0}
 .recept{box-shadow:none;border:0}
 .print-alleen-kaart>*:not(.cadeau-print){display:none!important}
}
.geschaald .noot-getal{display:none}
.rkaart .roog{font:600 .7rem Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--goud)}
.tekstkaarten .rkaart{border-top:3px solid var(--goud-licht)}
.tekstkaarten .rtekst{padding:20px 16px}
.pakket .vinkjes,.koopkaart>.klein{margin-bottom:auto}
.kassakoopje.inbegrepen{cursor:default}
@media (max-width:860px){.hero .wrap{padding:28px 0 36px;gap:14px}.hero-boek{max-width:120px}.hero .sub{font-size:1rem}.hero h1{font-size:clamp(1.8rem,8vw,2.4rem)}.acties{margin:16px 0}}
@media (max-width:600px){.hero-boek{display:none}.vertrouwen{display:none}.cijfers b{font-size:1.7rem}.cijfers div{padding:16px 8px}}

.menu-knop:focus{outline:none}.menu-knop:focus-visible{outline:none;border-color:var(--goud-licht)}
@media (max-width:760px){body.met-plakbalk{padding-bottom:84px}body:not(.met-plakbalk){padding-bottom:0}}
@media (max-width:1120px){.menu.open{padding-bottom:28px;box-shadow:0 24px 30px -10px rgba(0,0,0,.6)}}
@media (max-width:860px){.hero .label{margin-bottom:18px}}
