/* Bingo Bingley: de pagina's in het hoofdmerk (pakket H, 27-10): homepage, how it works, pricing, FAQ, about,
   de vier gidsen en de juridische pagina's. Bouwt op basis.css (tokens en onderdelen) en verandert daar niets aan.
   Sjablonen: web/paginas/home/blokken (home-*, h-*), web/paginas/steun/blokken, web/paginas/gidsen/blokken.
   Mobiel eerst; daarboven @media (min-width:760px) en (min-width:1080px). Geen inline stijl (CSP). */

/* ---------- hulp ---------- */
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.h-sprite{position:absolute;width:0;height:0;overflow:hidden}
.h-kaart-ic,.h-stap-ic,.h-lijst-ic,.spel-ic{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.icv{fill:var(--ic-v,var(--pink))}
.knop-ic{width:1em;height:1em;fill:currentColor;flex:none}
.woordbeeld{display:block;width:100%;height:auto;overflow:visible}
picture{display:block}
picture img{display:block;width:100%;height:auto}
.blok-kop-rij{max-width:none}
:root{
  --kleur-kids:var(--kids-lime); --kleur-kids-tekst:var(--kids-night);
  --kleur-bte:var(--bte-lilac); --kleur-bte-tekst:var(--bte-plum);
  --kleur-bar:var(--bar-amber); --kleur-bar-tekst:var(--bar-black);
  --kleur-shw:var(--shw-blush); --kleur-shw-tekst:var(--shw-berry);
}

/* ---------- opening (held) ---------- */
.held{position:relative;overflow:hidden;padding:18px 0 44px}
.held .held-rij{position:relative;display:grid;gap:30px;align-items:center}
.held-tekst{display:grid;gap:18px;justify-items:start;position:relative;z-index:2}
.held h1{max-width:12ch;font-size:clamp(2.6rem,11.2vw,5.6rem);letter-spacing:-.045em;line-height:.94}
.held .lead{font-size:18px;color:var(--tekst-zacht);max-width:34em}
.held-roze{display:inline;background:var(--pink);color:var(--ink);padding:0 .1em .02em;border-radius:.14em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.held-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;min-height:32px;padding:4px 12px;border:2px solid var(--ink);border-radius:999px;background:var(--white);color:var(--ink);font-weight:800;font-size:14px;line-height:1.1}
.chip-kids{background:var(--kleur-kids);color:var(--kleur-kids-tekst)}
.chip-bachelorette{background:var(--kleur-bte);color:var(--kleur-bte-tekst)}
.chip-bachelor{background:var(--kleur-bar);color:var(--kleur-bar-tekst)}
.chip-shower{background:var(--kleur-shw);color:var(--kleur-shw-tekst)}
.held-confetti{position:absolute;inset:0;pointer-events:none}
.held-confetti i{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--pink);opacity:.9}
.held-confetti i:nth-child(1){left:4%;top:12%;background:var(--violet)}
.held-confetti i:nth-child(2){left:46%;top:6%;width:10px;height:10px}
.held-confetti i:nth-child(3){left:88%;top:9%;border-radius:3px;transform:rotate(25deg);background:var(--kids-lime);border:2px solid var(--ink)}
.held-confetti i:nth-child(4){left:93%;top:52%;width:22px;height:22px;background:radial-gradient(circle,var(--white) 0 30%,var(--violet) 34%)}
.held-confetti i:nth-child(5){left:2%;top:64%;width:22px;height:22px;background:radial-gradient(circle,var(--white) 0 30%,var(--pink) 34%)}
.held-confetti i:nth-child(6){left:38%;top:93%;border-radius:3px;transform:rotate(-20deg);background:var(--shw-sky)}
.held-confetti i:nth-child(7){left:60%;top:48%;width:8px;height:8px;background:var(--violet)}
.held-confetti i:nth-child(8){left:74%;top:96%;width:10px;height:10px;background:var(--bar-amber)}
.knoppen .knop-tweede .knop-ic{width:.85em;height:.85em}

/* home: tv in de opening, met de duo's van de vier shows erachter */
.held-tv{position:relative;width:100%;max-width:660px;justify-self:center;scroll-margin-top:90px}
.held-minitv{position:relative;z-index:2;max-width:none;gap:16px}
.held-minitv .tv{box-shadow:8px 8px 0 var(--pink)}
.tv-live{position:absolute;right:3cqw;top:2.4cqw;z-index:1;opacity:.95}
.tv-live .wm{font-size:clamp(11px,3cqw,20px);--wm-1:var(--white);--wm-2:var(--pink)}
.held-tv-onder{display:grid;gap:12px}
@container (max-width:559px){ .tv-live{display:none} }
@media (max-width:759px){ .held-confetti i:nth-child(1),.held-confetti i:nth-child(2),.held-confetti i:nth-child(5),.held-confetti i:nth-child(6),.held-confetti i:nth-child(7),.held-confetti i:nth-child(8){display:none} }
.held-tv-kop{font-size:15px;font-family:var(--letter-tekst);letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--tekst-zacht);line-height:1.2;margin-bottom:2px}
.held-tv-tekst p{font-size:15px;color:var(--tekst-zacht);font-weight:600}
.gluurders{display:none}
@media (min-width:760px){
  .held{padding:34px 0 80px}
  .held .lead{font-size:21px}
  .held-home .held-rij{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:48px}
  .held-home{padding-top:40px}
  .held-tv{padding-top:118px}
  .gluurders{display:block;position:absolute;left:0;right:0;top:0;height:250px;z-index:1}
  .gluur{position:absolute}
  .gluur img{width:100%;height:auto;filter:drop-shadow(3px 3px 0 rgba(29,11,48,.18))}
  .gluur-kids{left:-3%;width:29%;top:8px}
  .gluur-bte1{left:25%;width:15%;top:22px;transform:rotate(-5deg)}
  .gluur-bar{left:42%;width:30%;top:4px}
  .gluur-shw{right:-5%;width:33%;top:30px}
  .held-tv-onder{grid-template-columns:auto 1fr;align-items:center;gap:18px}
}
@media (min-width:1080px){ .held h1{font-size:clamp(4rem,6.2vw,5.6rem)} }

/* steun- en gidspagina's: rustiger opening */
.held-steun{padding-bottom:36px}
.held-steun h1{max-width:15ch}
.held-label{display:inline-flex;align-items:center;gap:8px;margin:0;padding:5px 12px;border:2px solid var(--ink);border-radius:999px;background:var(--white);color:var(--ink);letter-spacing:.12em}
.held-concept{display:inline-block;padding:8px 14px;border:2px dashed var(--ink);border-radius:12px;background:var(--white);font-weight:800;font-size:15px}
.held-ballen{position:relative;height:120px;width:100%;max-width:340px;justify-self:end}
.deco-bal{position:absolute;display:flex;align-items:center;justify-content:center;width:112px;height:112px;border-radius:50%;border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);background:radial-gradient(circle at 35% 30%,#FF7DB2,var(--pink) 55%,#C81E66)}
.deco-bal-in{display:flex;flex-direction:column;align-items:center;justify-content:center;width:62%;height:62%;border-radius:50%;background:var(--white);color:var(--ink);font-family:var(--letter-kop);font-weight:800;font-size:30px;line-height:.9;letter-spacing:-.04em}
.deco-bal-in b{font-size:15px;color:var(--violet);letter-spacing:0}
.deco-bal-1{right:0;top:0;transform:rotate(8deg)}
.deco-bal-2{right:96px;top:20px;width:84px;height:84px;background:radial-gradient(circle at 35% 30%,#8C66FF,var(--violet) 55%,#3A12A8);transform:rotate(-10deg)}
.deco-bal-2 .deco-bal-in{font-size:22px}
.deco-bal-3{right:168px;top:46px;width:62px;height:62px;background:var(--kids-lime)}
.deco-bal-3 .deco-bal-in{font-size:16px}
.deco-bal-3 .deco-bal-in b{font-size:10px}
.held-nav ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.held-nav a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 14px;border:2px solid var(--ink);border-radius:999px;background:var(--white);font-weight:800;text-decoration:none;box-shadow:3px 3px 0 var(--ink)}
.held-nav a:hover{background:var(--pink)}
.held-nav a span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:12px;background:var(--ink);color:var(--white);font-size:13px;padding:0 6px}
@media (max-width:759px){ .held-steun .held-rij{grid-template-columns:1fr} .held-ballen{display:none} }
@media (min-width:760px){
  .held-steun .held-rij{grid-template-columns:minmax(0,1fr) auto;gap:40px}
  .held-ballen{height:200px;width:340px}
  .deco-bal{width:150px;height:150px}
  .deco-bal-in{font-size:40px}
  .deco-bal-in b{font-size:18px}
  .deco-bal-1{right:0;top:10px}
  .deco-bal-2{right:128px;top:64px;width:112px;height:112px}
  .deco-bal-2 .deco-bal-in{font-size:30px}
  .deco-bal-3{right:236px;top:8px;width:80px;height:80px}
  .deco-bal-3 .deco-bal-in{font-size:20px}
  .deco-bal-3 .deco-bal-in b{font-size:12px}
}

/* gidsen: opening met een beeld van de show */
.held-gids .held-rij{gap:22px}
.held-scene{position:relative;justify-self:stretch}
.held-scene picture{border:3px solid var(--ink);border-radius:var(--rond);overflow:hidden;box-shadow:8px 8px 0 var(--gids-kleur,var(--pink))}
.held-scene img{aspect-ratio:3/2;object-fit:cover}
.held-kids{--gids-kleur:var(--kids-lime)}
.held-bachelorette{--gids-kleur:var(--bte-pink)}
.held-bachelor{--gids-kleur:var(--bar-amber)}
.held-shower{--gids-kleur:var(--shw-pink)}
.held-gids .held-label{background:var(--gids-kleur);color:var(--ink)}
@media (max-width:759px){ .held-gids .held-scene{order:-1} .held-gids .held-scene img{aspect-ratio:16/9} }
@media (min-width:760px){ .held-gids .held-rij{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:52px} .held-gids h1{font-size:clamp(2.6rem,5.4vw,4.6rem)} }

/* ---------- band met geruststellingen ---------- */
.h-band{background:var(--ink);color:var(--white);padding:14px 0;border-top:3px solid var(--ink);border-bottom:3px solid var(--ink)}
.h-band-lijst{list-style:none;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.h-band-lijst li{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;line-height:1.2}
.h-band-bal{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle,var(--white) 0 46%,var(--pink) 49%);color:var(--ink);font-family:var(--letter-kop);font-weight:800;font-size:13px}
.h-band-lijst li:nth-child(even) .h-band-bal{background:radial-gradient(circle,var(--white) 0 46%,var(--violet) 49%)}
@media (min-width:760px){ .h-band{padding:18px 0} .h-band-lijst{grid-template-columns:repeat(4,auto);justify-content:space-between} .h-band-lijst li{font-size:17px} }

/* ---------- home: "Hear them" ---------- */
.home-stemmen{overflow:hidden}
.schuifrij-buiten{overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:14px}
.schuifrij-buiten::-webkit-scrollbar{display:none}
.radio-rij{list-style:none;margin:0 auto;display:grid;grid-auto-flow:column;grid-auto-columns:min(84%,330px);gap:14px}
.radio{scroll-snap-align:start;display:grid;grid-template-rows:auto 1fr;border:3px solid var(--ink);border-radius:var(--rond);box-shadow:5px 5px 0 var(--ink);overflow:hidden;background:var(--white)}
.radio-kop{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:3px solid var(--ink)}
.radio-kop picture{width:84px;flex:none}
.radio-kop img{max-height:64px;width:auto;margin:0 auto}
.radio-show{font-family:var(--letter-kop);font-weight:800;font-size:22px;letter-spacing:-.02em;line-height:1}
.radio-kids .radio-kop{background:var(--kleur-kids);color:var(--kleur-kids-tekst)}
.radio-bachelorette .radio-kop{background:var(--kleur-bte);color:var(--kleur-bte-tekst)}
.radio-bachelor .radio-kop{background:var(--kleur-bar);color:var(--kleur-bar-tekst)}
.radio-shower .radio-kop{background:var(--kleur-shw);color:var(--kleur-shw-tekst)}
.radio-bachelorette .radio-kop img,.radio-bachelor .radio-kop img{border-radius:10px;border:2px solid var(--ink)}
.radio .stem{border:0;border-radius:0;background:var(--white);color:var(--ink);padding:16px}
.achter-vlak .radio .stem{background:var(--white)}
@media (min-width:1080px){ .radio-rij{grid-auto-flow:row;grid-template-columns:repeat(4,1fr)} .schuifrij-buiten{overflow:visible} }

/* ---------- home: vier tegels ---------- */
.home-tegels{background:var(--paper)}
.tegels{display:grid;gap:26px}
.tegel{display:grid;grid-template-rows:auto 1fr;background:var(--white);color:var(--ink);border:3px solid var(--ink);border-radius:var(--rond);box-shadow:7px 7px 0 var(--ink);overflow:hidden}
.tegel-beeld{position:relative;aspect-ratio:4/5;overflow:hidden;border-bottom:3px solid var(--ink)}
.tegel-beeld > picture,.tegel-beeld > picture img{width:100%;height:100%}
.tegel-beeld > picture img{object-fit:cover;object-position:50% 0}
.tegel-woord{position:absolute;z-index:2}
.tegel-onder{display:grid;gap:14px;align-content:start;padding:20px 20px 22px}
.tegel-kop{font-size:15px;font-family:var(--letter-tekst);font-weight:800;letter-spacing:.12em;text-transform:uppercase;line-height:1.3;color:var(--ink-soft)}
.tegel-tekst{font-size:16px;line-height:1.5}
.tegel-kenmerken{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.tegel-kenmerken li{font-size:13px;font-weight:800;line-height:1.2;padding:5px 10px;border-radius:999px;border:2px solid var(--ink)}
.tegel-kids .tegel-kenmerken li{background:var(--kleur-kids)}
.tegel-bachelorette .tegel-kenmerken li{background:var(--kleur-bte)}
.tegel-bachelor .tegel-kenmerken li{background:var(--kleur-bar)}
.tegel-shower .tegel-kenmerken li{background:var(--kleur-shw)}
.tegel-balk{display:grid;gap:12px;margin-top:4px;padding-top:14px;border-top:2px dashed color-mix(in srgb,var(--ink) 30%,transparent)}
.tegel-prijs{display:flex;align-items:baseline;gap:8px;font-weight:700;color:var(--ink-soft)}
.tegel-prijs b{font-family:var(--letter-kop);font-weight:800;font-size:40px;letter-spacing:-.05em;line-height:1;color:var(--ink)}
.tegel-knop{justify-self:stretch;font-size:15px;line-height:1.2;padding:.6em .9em}
/* kids: stickerwereld */
.tegel-kids .tegel-beeld{background:linear-gradient(160deg,var(--kids-bubblegum),var(--kids-ultraviolet))}
.tegel-kids .tegel-woord{left:6%;right:12%;bottom:6%;transform:rotate(-5deg)}
.tegel-kids .woordbeeld{fill:var(--kids-lime);stroke:var(--kids-night);stroke-width:46px;paint-order:stroke;filter:drop-shadow(4px 5px 0 var(--kids-night))}
.tegel-sticker{position:absolute;z-index:2;right:5%;bottom:31%;transform:rotate(6deg);background:var(--white);color:var(--kids-night);font-weight:800;font-size:14px;padding:5px 11px;border:3px solid var(--kids-night);border-radius:12px;box-shadow:3px 3px 0 var(--kids-night)}
.tegel-ster{position:absolute;z-index:1;width:26px;height:26px;background:var(--kids-lime);clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%)}
.tegel-ster-1{left:7%;top:8%}
.tegel-ster-2{right:8%;top:30%;width:18px;height:18px;background:var(--white)}
/* bachelorette: roze en lila, MC en DJ */
.tegel-bachelorette .tegel-beeld{background:linear-gradient(90deg,var(--bte-pink) 0 50%,var(--bte-lilac) 50% 100%)}
.bte-mc,.bte-dj{position:absolute;top:5%;width:40%;z-index:0}
.bte-mc{left:5%}
.bte-dj{right:5%}
.bte-mc .woordbeeld,.bte-dj .woordbeeld{fill:var(--bte-plum)}
.tegel-bachelorette .tegel-beeld > picture{position:absolute;bottom:0;width:60%;height:auto;z-index:1}
.tegel-bachelorette .tegel-beeld > picture img{height:auto;object-fit:contain}
.tegel-bachelorette .tegel-beeld > picture:nth-of-type(1){left:-6%}
.tegel-bachelorette .tegel-beeld > picture:nth-of-type(2){right:-8%}
.tegel-plaat{left:8%;right:8%;bottom:6%;transform:rotate(-3deg);background:var(--bte-plum);border:3px solid var(--white);border-radius:12px;padding:9px 12px;box-shadow:4px 4px 0 var(--bte-grape)}
.tegel-plaat .woordbeeld{fill:var(--white)}
.tegel-glim{position:absolute;z-index:1;width:22px;height:22px;background:var(--white);clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%)}
.tegel-glim-1{left:44%;top:28%}
.tegel-glim-2{right:6%;top:34%;width:14px;height:14px}
/* bachelor: de bar, neon */
.tegel-bachelor .tegel-beeld{background:var(--bar-black)}
.tegel-bachelor .tegel-beeld::after{content:"";position:absolute;inset:0 0 auto;height:38%;background:linear-gradient(var(--bar-black),transparent);z-index:1;pointer-events:none}
.tegel-neon{left:7%;right:7%;top:4%;display:grid;gap:0;justify-items:center;transform:rotate(-4deg)}
.tegel-neon .woordbeeld{fill:#FFF6F0;filter:drop-shadow(0 0 2px #FFD0D4) drop-shadow(0 0 6px var(--bar-red)) drop-shadow(0 0 14px var(--bar-red))}
.tegel-neon .woord-lastcall{width:78%}
.tegel-neon .woord-bellas{width:70%;margin-top:-2%}
/* shower: feestwinkel */
.tegel-shower .tegel-beeld{background:var(--shw-blush)}
.vlaggetjes{position:absolute;left:0;top:0;width:100%;height:auto;z-index:2}
.vlaggetjes .lijn{fill:none;stroke:var(--shw-berry);stroke-width:1.5}
.vlaggetjes .v1{fill:var(--shw-pink)}
.vlaggetjes .v2{fill:var(--shw-sky)}
.vlaggetjes .v3{fill:var(--shw-sun)}
.tegel-shower .tegel-woord{left:7%;right:7%;bottom:5%;transform:rotate(-3deg)}
.tegel-shower .woordbeeld{fill:var(--shw-berry);stroke:var(--white);stroke-width:42px;paint-order:stroke;filter:drop-shadow(3px 4px 0 var(--shw-pink))}
@media (min-width:640px){ .tegels{grid-template-columns:1fr 1fr} }
@media (min-width:1180px){ .tegels{grid-template-columns:repeat(4,1fr);gap:24px} .tegel-onder{padding:18px} .tegel-prijs b{font-size:36px} }

/* ---------- stappen, kaarten, lijst ---------- */
.h-stappen{list-style:none;margin:0;padding:0;display:grid;gap:18px;counter-reset:stap}
.h-stap{display:grid;gap:12px;align-content:start;background:var(--paper);color:var(--ink);border:3px solid var(--ink);border-radius:var(--rond);padding:18px;box-shadow:6px 6px 0 var(--ink)}
.achter-licht .h-stap{background:var(--white)}
.h-stap-beeld{position:relative;display:flex;align-items:center;justify-content:center;height:130px;border-radius:18px;border:3px solid var(--ink);background:var(--violet);color:var(--white);overflow:hidden}
.h-stap:nth-child(2) .h-stap-beeld{background:var(--pink);color:var(--ink)}
.h-stap:nth-child(3) .h-stap-beeld{background:var(--ink)}
.h-stap-beeld::before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.12);right:-40px;bottom:-60px}
.h-stap-ic{width:76px;height:76px;position:relative}
.h-stap:nth-child(2) .h-stap-ic{--ic-v:var(--white)}
.h-stap:nth-child(1) .h-stap-ic{--ic-v:var(--kids-lime)}
.h-stap-nr{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle,var(--white) 0 50%,var(--kids-lime) 53%);border:2px solid var(--ink);color:var(--ink);font-family:var(--letter-kop);font-weight:800;font-size:19px}
.h-stap h3{font-size:clamp(1.4rem,5vw,1.7rem)}
.h-stap p{color:var(--ink-soft)}
.h-slotzin{margin-top:26px;font-weight:700;font-size:18px;max-width:780px}
.h-slotzin a,.h-kaart a,.h-stap a,.h-lijst a,.tegel-tekst a{color:var(--link)}
.achter-donker .h-slotzin a{color:var(--donker-accent)}
@media (min-width:760px){ .h-stappen{grid-template-columns:repeat(3,1fr);gap:24px} .h-stap{padding:22px} .h-stap-beeld{height:160px} }

.h-kaarten{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.h-kaart{position:relative;display:grid;gap:10px;align-content:start;background:var(--white);color:var(--ink);border:3px solid var(--ink);border-radius:var(--rond);padding:20px 20px 22px;box-shadow:5px 5px 0 var(--ink)}
.achter-vlak .h-kaart{background:var(--paper)}
.h-kaart-ic{width:46px;height:46px;color:var(--ink)}
.h-kaart h3{font-size:clamp(1.3rem,4.6vw,1.6rem)}
.h-kaart p{color:var(--ink-soft)}
.h-kaart.uitgelicht{background:var(--pink);box-shadow:7px 7px 0 var(--violet)}
.h-kaart.uitgelicht p{color:var(--ink)}
.h-kaart.uitgelicht .h-kaart-ic{--ic-v:var(--white)}
.h-kaart.uitgelicht a{color:var(--ink)}
@media (min-width:760px){
  .h-kaarten{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}
  .h-kaarten-2{grid-template-columns:1fr 1fr}
  .h-kaarten-4{grid-template-columns:repeat(2,1fr)}
}
@media (min-width:1080px){ .h-kaarten-4{grid-template-columns:repeat(4,1fr)} }

.h-lijst{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.h-lijst li{display:flex;align-items:center;gap:14px;background:var(--white);color:var(--ink);border:3px solid var(--ink);border-radius:18px;padding:12px 16px;font-weight:700;line-height:1.35}
.achter-vlak .h-lijst li{background:var(--paper)}
.h-lijst-ic{flex:none;width:44px;height:44px;color:var(--ink)}
@media (min-width:760px){ .h-lijst{grid-template-columns:repeat(2,1fr);gap:16px} }
@media (min-width:1080px){ .h-lijst{grid-template-columns:repeat(3,1fr)} .h-lijst li{padding:16px 18px} }

/* ---------- rij met showkaartjes ---------- */
.h-shows{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.h-show a{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:14px;min-height:76px;padding:10px 16px 10px 10px;border:3px solid var(--ink);border-radius:20px;background:var(--white);color:var(--ink);text-decoration:none;box-shadow:4px 4px 0 var(--ink);transition:transform .1s,box-shadow .1s}
.h-show a:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.h-show picture{width:72px;height:56px;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.h-show img{max-height:56px;width:auto;object-fit:contain}
.h-show-kids picture{background:var(--kleur-kids)}
.h-show-bachelorette picture{background:var(--kleur-bte)}
.h-show-bachelor picture{background:var(--kleur-bar)}
.h-show-shower picture{background:var(--kleur-shw)}
.h-show-bachelorette img,.h-show-bachelor img{height:56px;max-height:none;width:100%;object-fit:cover}
.h-show-tekst{display:grid;gap:2px;line-height:1.25}
.h-show-tekst b{font-family:var(--letter-kop);font-weight:800;font-size:19px;letter-spacing:-.01em;text-decoration:underline;text-decoration-color:transparent}
.h-show a:hover b{text-decoration-color:currentColor}
.h-show-tekst span{font-size:15px;color:var(--ink-soft);font-weight:600}
.h-show-pijl{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
@media (min-width:760px){ .h-shows{grid-template-columns:1fr 1fr;gap:16px} }

/* ---------- prijzen ---------- */
.h-prijzen{display:grid;gap:22px}
.h-prijs{position:relative;display:grid;gap:12px;align-content:start;background:var(--vlak);color:var(--vlak-tekst);border:3px solid var(--rand);border-radius:var(--rond);padding:0 20px 24px;overflow:hidden}
.h-prijs-kop{position:relative;margin:0 -20px 4px;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:3px solid var(--rand);min-height:92px}
.h-prijs-kop picture{width:auto;height:64px}
.h-prijs-kop img{height:64px;width:auto}
.h-prijs-kids .h-prijs-kop{background:var(--kleur-kids)}
.h-prijs-bachelorette .h-prijs-kop{background:var(--kleur-bte)}
.h-prijs-bachelor .h-prijs-kop{background:var(--kleur-bar)}
.h-prijs-shower .h-prijs-kop{background:var(--kleur-shw)}
.h-prijs-bachelorette .h-prijs-kop img,.h-prijs-bachelor .h-prijs-kop img{border-radius:10px;border:2px solid var(--ink)}
.h-prijs .badge{position:static;color:var(--ink);border-color:var(--ink);background:var(--white)}
.h-prijs h3{font-size:clamp(1.35rem,4.6vw,1.6rem)}
.h-prijs .knop{justify-self:start}
.h-prijs.uitgelicht{box-shadow:var(--schaduw-maat) var(--schaduw-maat) 0 var(--accent);border-color:var(--accent)}
.h-garantie{margin-top:26px;display:flex;gap:16px;align-items:center;max-width:860px;padding:18px 20px;border:3px solid var(--rand);border-radius:var(--rond);background:var(--vlak);color:var(--vlak-tekst);font-weight:700;font-size:18px;line-height:1.4}
.h-garantie-stempel{flex:none;width:58px;height:58px;color:var(--ink)}
.h-garantie-stempel svg{width:100%;height:100%}
.h-garantie-stempel path{fill:var(--kids-lime);stroke:var(--ink);stroke-width:2.4;stroke-linejoin:round}
.h-garantie-stempel path.v{fill:none;stroke-width:4;stroke-linecap:round}
@media (min-width:760px){ .h-prijzen{grid-template-columns:repeat(2,1fr);gap:26px} .h-prijs{padding:0 26px 28px} .h-prijs-kop{margin:0 -26px 6px;padding:14px 26px} }
@media (min-width:1080px){ .h-prijzen-4{grid-template-columns:repeat(4,1fr);gap:22px} .h-prijzen-4 .h-prijs{padding:0 20px 24px} .h-prijzen-4 .h-prijs-kop{margin:0 -20px 4px;padding:12px 20px} .h-prijzen-4 .bedrag b{font-size:68px} .h-prijzen-3{grid-template-columns:repeat(3,1fr)} }

/* ---------- vragen ---------- */
.h-vragen-rij{display:grid;gap:8px}
.h-vragen-kop{display:grid;gap:8px;align-content:start}
.h-vragen-kop .meer{margin-top:0}
.h-vragenblok .vraag{box-shadow:4px 4px 0 var(--rand)}
.h-vragenblok .vragen{margin-top:16px}
@media (min-width:960px){ .h-vragen-rij{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:56px;align-items:start} .h-vragen-kop{position:sticky;top:24px} .h-vragenblok .vragen{margin-top:0} }

/* ---------- slot ---------- */
.h-slot{position:relative;overflow:hidden}
.h-slot-duos{display:flex;justify-content:center;align-items:flex-end;gap:10px;margin:-20px auto 26px;max-width:620px;padding:0 16px}
.slot-duo{flex:1 1 0;max-width:140px}
.slot-duo img{max-height:110px;width:auto;margin:0 auto;object-fit:contain}
.slot-duo-bachelorette img,.slot-duo-bachelor img{border:3px solid var(--ink);border-radius:14px;max-height:70px}
.h-slot .slot-rij{position:relative}
.h-slot h2{font-size:clamp(2.2rem,8.4vw,4.4rem)}
@media (min-width:760px){ .h-slot-duos{gap:22px;margin-bottom:34px} .slot-duo img{max-height:150px} .slot-duo-bachelorette img,.slot-duo-bachelor img{max-height:96px} }

/* ---------- gidsen ---------- */
.gids-kort{padding-top:8px}
.gids-kort-kaart{max-width:860px;background:var(--white);border:3px solid var(--ink);border-radius:var(--rond);padding:22px 22px 24px;box-shadow:7px 7px 0 var(--violet);display:grid;gap:14px}
.gids-kort-kaart h2{font-size:clamp(1.6rem,6vw,2.3rem)}
.gids-kort-kaart a{color:var(--link)}
.gids-inhoud{padding:28px 0}
.gids-inhoud .label{margin-bottom:12px}
.gids-inhoud-lijst{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.gids-inhoud-lijst a{display:inline-flex;align-items:center;min-height:44px;padding:6px 14px;border:2px solid var(--ink);border-radius:999px;background:var(--paper);color:var(--ink);font-weight:800;font-size:15px;text-decoration:none}
.gids-inhoud-lijst a:hover{background:var(--pink)}
.gids-filter{position:sticky;top:0;z-index:5;margin:0 -16px 26px;padding:12px 16px;background:var(--achter);border-bottom:3px solid var(--ink)}
.gids-filter .label{margin:0 0 8px}
.gids-filter-knoppen{display:flex;flex-wrap:wrap;gap:8px}
.filterknop{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 14px;border:2px solid var(--ink);border-radius:999px;background:var(--white);color:var(--ink);font-weight:800;font-size:15px;cursor:pointer}
.filterknop span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:12px;background:var(--paper);font-size:13px}
.filterknop[aria-pressed="true"]{background:var(--ink);color:var(--white)}
.filterknop[aria-pressed="true"] span{background:var(--pink);color:var(--ink)}
.gids-telling{margin-top:8px;font-weight:700;font-size:15px;color:var(--tekst-zacht)}
.gids-telling:empty{display:none}
.gids-groep{scroll-margin-top:150px}
.gids-groep + .gids-groep{margin-top:48px}
.gids-groep-kop{display:grid;gap:10px;margin-bottom:22px;max-width:780px}
.gids-groep-kop h2{font-size:clamp(1.9rem,7vw,3rem)}
.gids-groep-kop p{color:var(--tekst-zacht);font-size:18px}
.spellen{display:grid;gap:18px;align-items:start}
.spel{scroll-margin-top:150px;display:grid;gap:12px;background:var(--white);color:var(--ink);border:3px solid var(--ink);border-radius:22px;padding:18px 18px 20px;box-shadow:5px 5px 0 var(--ink)}
.spel-kop{display:flex;align-items:flex-start;gap:12px;font-size:clamp(1.3rem,5vw,1.6rem);line-height:1.1}
.spel-nr{flex:none;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-4px;border-radius:50%;background:radial-gradient(circle,var(--white) 0 52%,var(--gids-kleur,var(--pink)) 55%);border:2px solid var(--ink);font-size:17px;letter-spacing:-.03em}
.gids-spellen-kids{--gids-kleur:var(--kids-lime)}
.gids-spellen-bachelorette{--gids-kleur:var(--bte-pink)}
.gids-spellen-bachelor{--gids-kleur:var(--bar-amber)}
.gids-spellen-shower{--gids-kleur:var(--shw-pink)}
.spel-tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.spel-tags li{font-size:13px;font-weight:800;padding:4px 10px;border-radius:999px;background:var(--paper);border:2px solid var(--ink);line-height:1.2}
.spel-feiten{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:10px 0;border-top:2px dashed color-mix(in srgb,var(--ink) 25%,transparent);border-bottom:2px dashed color-mix(in srgb,var(--ink) 25%,transparent)}
.spel-feiten div{display:flex;align-items:center;gap:8px;font-size:15px}
.spel-feiten dt{display:flex;align-items:center;gap:6px;font-weight:800}
.spel-feiten dd{margin:0;font-weight:600;color:var(--ink-soft)}
.spel-ic{width:22px;height:22px}
.spel-veld,.spel-extra{font-size:16px;line-height:1.55;color:var(--ink-soft)}
.spel-veld b{color:var(--ink)}
.spel a{color:var(--link)}
.spel-tip{font-size:15px;line-height:1.5;background:var(--paper);border:2px solid var(--ink);border-radius:14px;padding:10px 12px}
@media (min-width:760px){ .gids-filter{margin:0 -32px 30px;padding:14px 32px} .spellen{grid-template-columns:1fr 1fr;gap:22px} .spel{padding:22px} }
@media (min-width:1080px){ .gids-filter{margin:0 -40px 30px;padding:14px 40px} }

.gids-host-kaart{display:grid;gap:22px;border:3px solid var(--ink);border-radius:var(--rond);overflow:hidden;box-shadow:8px 8px 0 var(--ink);background:var(--white);color:var(--ink)}
.gids-host-beeld{display:flex;align-items:flex-end;justify-content:center;gap:0;min-height:220px;max-height:420px;overflow:hidden}
.gids-host-beeld picture{flex:1 1 0;max-width:340px}
.gids-host-beeld img{object-fit:cover;object-position:50% 0;max-height:420px}
.gids-host-tekst{display:grid;gap:14px;padding:0 20px 24px}
.gids-host-tekst h2{font-size:clamp(1.9rem,7vw,3rem)}
.gids-host-tekst a{color:var(--link);font-weight:800}
.gids-host-stem{display:grid;gap:8px;margin-top:6px}
.gids-host-stem h3{font-size:18px;font-family:var(--letter-tekst);text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft)}
.gids-host-stem .stem{background:var(--paper)}
.gids-host-kids .gids-host-beeld{background:linear-gradient(160deg,var(--kids-bubblegum),var(--kids-ultraviolet))}
.gids-host-bachelorette .gids-host-beeld{background:linear-gradient(90deg,var(--bte-pink) 0 50%,var(--bte-lilac) 50%)}
.gids-host-bachelorette .gids-host-beeld picture{max-width:220px}
.gids-host-bachelorette .gids-host-beeld img{object-fit:contain}
.gids-host-bachelor .gids-host-beeld{background:var(--bar-black)}
.gids-host-shower .gids-host-beeld{background:var(--shw-blush)}
@media (min-width:760px){ .gids-host-kaart{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:stretch} .gids-host-beeld{max-height:none;min-height:100%} .gids-host-beeld img{max-height:none} .gids-host-tekst{padding:32px 32px 32px 0;align-content:center} }

.checklist-kaart{max-width:880px;background:var(--white);color:var(--ink);border:3px solid var(--ink);border-radius:var(--rond);padding:22px;box-shadow:7px 7px 0 var(--pink)}
.checklist-kop{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-bottom:16px}
.checklist-kop h2{font-size:clamp(1.7rem,6vw,2.6rem)}
.checklist{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.checklist .vink label{display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:8px 4px;border-bottom:1px solid color-mix(in srgb,var(--ink) 15%,transparent);cursor:pointer;font-weight:600;line-height:1.45}
.checklist input{flex:none;appearance:none;-webkit-appearance:none;width:26px;height:26px;margin:0;border:3px solid var(--ink);border-radius:8px;background:var(--white);cursor:pointer;display:grid;place-content:center}
.checklist input::after{content:"";width:12px;height:7px;border-left:3px solid var(--ink);border-bottom:3px solid var(--ink);transform:rotate(-45deg) translate(1px,-1px);opacity:0}
.checklist input:checked{background:var(--kids-lime)}
.checklist input:checked::after{opacity:1}
.checklist input:checked + span{text-decoration:line-through;text-decoration-thickness:2px;color:var(--ink-soft)}
.checklist-noot{padding:12px 14px;margin-bottom:8px;background:var(--paper);border-radius:14px;font-weight:600;line-height:1.5}
@media print{ html.printmodus #printvak .checklist-kaart{box-shadow:none;border-width:2px;max-width:none;margin:0} html.printmodus #printvak .checklist input{-webkit-print-color-adjust:exact;print-color-adjust:exact} }

.gids-bronnen .bronnen{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:16px}
.gids-bronnen .bronnen li{padding-left:22px;position:relative}
.gids-bronnen .bronnen li::before{content:"";position:absolute;left:0;top:.5em;width:10px;height:10px;border-radius:50%;background:var(--pink)}

/* ---------- juridisch ---------- */
.held-juridisch h1{max-width:none}
.juridisch-rij{display:grid;gap:28px}
.juridisch-inhoud{background:var(--white);border:3px solid var(--ink);border-radius:var(--rond-klein);padding:16px 18px}
.juridisch-inhoud ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.juridisch-inhoud a{display:flex;align-items:center;min-height:40px;font-weight:700;font-size:15px;line-height:1.3;color:var(--ink)}
.juridisch-tekst h2{font-size:clamp(1.5rem,5.4vw,2rem);margin:36px 0 12px;scroll-margin-top:24px}
.juridisch-tekst h2:first-child{margin-top:0}
.juridisch-tekst ul{padding-left:22px;margin:12px 0}
.juridisch-tekst li+li{margin-top:6px}
.juridisch-tekst p+p{margin-top:12px}
@media (min-width:960px){ .juridisch-rij{grid-template-columns:280px minmax(0,1fr);gap:56px;align-items:start} .juridisch-inhoud{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto} }

/* ---------- algemeen: koppen van de steunpagina's, minder beweging ---------- */
.h-kaartenblok .blok-kop,.h-stappenblok .blok-kop,.h-lijstblok .blok-kop,.h-showsblok .blok-kop{margin-bottom:26px}
@media (min-width:760px){ .h-kaartenblok .blok-kop,.h-stappenblok .blok-kop,.h-lijstblok .blok-kop,.h-showsblok .blok-kop{margin-bottom:40px} }
@media (prefers-reduced-motion:reduce){ .h-show a:hover{transform:none} }
.h-kaart-zin{font-size:18px;line-height:1.45;color:var(--ink)!important}
.h-kaart-zin strong{display:block;margin-bottom:6px;font-family:var(--letter-kop);font-weight:800;font-size:clamp(1.3rem,4.6vw,1.6rem);letter-spacing:-.03em;line-height:1.05}
