/* tea.tdgdigital.com — "Lekker belangrijk. Dus." Team Lekker Belangrijk.
   Motief: het gele prijskaartje aan een touwtje (uit hun eigen Kerstkringloopwinkel). Kleuren uit hun logo. */
@font-face{font-family:"Corben";src:url(/fonts/corben-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Corben";src:url(/fonts/corben-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Mulish";src:url(/fonts/mulish.woff2) format("woff2");font-weight:200 900;font-display:swap}
@font-face{font-family:"Mulish";src:url(/fonts/mulish-italic.woff2) format("woff2");font-weight:200 900;font-style:italic;font-display:swap}
@font-face{font-family:"Shantell";src:url(/fonts/shantell.woff2) format("woff2");font-weight:300 800;font-display:swap}
:root{
  --papier:#fbf6ef;--papier2:#f3eadf;--inkt:#2a1626;--nacht:#1c0e19;--nacht2:#2b1526;
  --magenta:#dd0082;--magenta-d:#b8006c;--blauw:#1bafe8;--geel:#f6a829;--kaart:#f8d775;--rood:#d72123;--muur:#a8302c;
  --lijn:rgba(42,22,38,.16);--gut:clamp(1rem,4.2vw,4.5rem);--kop:4.75rem;
  --f-kop:"Corben",Georgia,serif;--f-tekst:"Mulish",system-ui,sans-serif;--f-hand:"Shantell","Comic Sans MS",cursive;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--kop) + 1rem)}
/* Brede schermen: het 1440-ontwerp schaalt als geheel mee (maten in rem). */
@media (min-width:1440px){html{font-size:clamp(100%,1.1111vw,200%)}:where(button,input,select,textarea){font-size:.8333rem}}
body{margin:0;background:var(--papier);color:var(--inkt);font-family:var(--f-tekst);font-size:1.0625rem;line-height:1.6;font-weight:450}
img,video,svg{display:block;max-width:100%;height:auto}
[hidden]{display:none!important}
p,li,dd,td{hyphens:auto;overflow-wrap:break-word}
h1,h2,h3{hyphens:manual;overflow-wrap:normal;text-wrap:balance;margin:0}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{color:var(--magenta)}
::selection{background:var(--magenta);color:#fff}
:focus-visible{outline:3px solid var(--blauw);outline-offset:3px}
a[href^=mailto],a[href^=tel]{hyphens:none;overflow-wrap:anywhere}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:var(--papier);padding:.5rem 1rem}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{padding-inline:var(--gut)}
.hand{font-family:var(--f-hand);font-weight:600;color:var(--magenta)}
.groot{font-family:var(--f-kop);font-weight:700;font-size:clamp(2.1rem,5.2vw,4.6rem);line-height:1.02;letter-spacing:-.01em}
.middel{font-family:var(--f-kop);font-weight:700;font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.08}
.lead{font-size:clamp(1.12rem,1.5vw,1.35rem);line-height:1.5;max-width:38em}
.klein{font-size:.9rem;opacity:.75}
.bron{font-size:.85rem;opacity:.7;margin-top:1.5rem}

/* ---------- knoppen ---------- */
.knop{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.85rem;padding:.6rem 1.3rem;border-radius:.45rem;
  font:800 1rem/1.1 var(--f-tekst);text-decoration:none;border:2px solid transparent;cursor:pointer;transition:transform .2s,background-color .2s,color .2s}
.knop:hover{transform:translateY(-2px);color:inherit}
.knop-steun,.knop-magenta{background:var(--magenta);color:#fff}.knop-steun:hover{background:var(--magenta-d);color:#fff}
.knop-geel{background:var(--kaart);color:var(--inkt)}
.knop-lijn{border-color:currentColor;background:transparent}
.knop-wit{background:#fff;color:var(--magenta-d)}.knop-wit:hover{color:var(--magenta-d)}
.knop-lijn-wit{border-color:#fff;color:#fff}.knop-lijn-wit:hover{color:#fff;background:rgba(255,255,255,.12)}
.knop-klein{min-height:2.5rem;padding:.4rem .9rem;font-size:.92rem}

/* ---------- het prijskaartje (motief) ---------- */
.kaartje{display:inline-flex;align-items:center;margin:0 0 1.1rem;transform:rotate(-2.2deg);transform-origin:left center;color:var(--inkt)}
.kaartje-touw{width:2.4rem;height:auto;margin-right:-.35rem;margin-top:-1.2rem;color:currentColor;opacity:.75}
.kaartje span{position:relative;display:inline-block;background:var(--kaart);font:600 1.02rem/1.2 var(--f-hand);padding:.38rem 1rem .38rem 1.55rem;
  clip-path:polygon(.9rem 0,100% 0,100% 100%,.9rem 100%,0 50%);color:var(--inkt)}
.kaartje span::before{content:"";position:absolute;left:.62rem;top:50%;width:.42rem;height:.42rem;margin-top:-.21rem;border-radius:50%;background:var(--papier);box-shadow:inset 0 0 0 1.5px rgba(42,22,38,.35)}
.kaartje-donker{color:#f3e6d8}.kaartje-donker span::before{background:var(--nacht)}
.kaartje-wit{color:#fff}.kaartje-wit span::before{background:var(--magenta)}

/* ---------- kop ---------- */
.kop{position:sticky;top:0;z-index:40;background:rgba(251,246,239,.97);border-bottom:1px solid var(--lijn)}
.kop-in{display:flex;align-items:center;gap:1.5rem;height:var(--kop);padding-inline:var(--gut)}
.kop-logo{display:block;flex-shrink:0;min-height:44px;padding:.35rem 0}
.kop-logo .logo-svg{width:8.6rem;height:auto}
.kop-nav{margin-left:auto}
.kop-nav ul{display:flex;gap:1.6rem;list-style:none;margin:0;padding:0}
.kop-nav a{font-weight:750;font-size:.98rem;text-decoration:none;padding:.6rem 0;display:block;position:relative}
.kop-nav a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:.25rem;height:3px;background:var(--magenta);border-radius:2px}
.kop-menu{display:none;flex-shrink:0;width:3rem;height:3rem;border:0;background:transparent;cursor:pointer;margin-left:auto;position:relative;color:var(--inkt)}
.kop-menu span:not(.vh){position:absolute;left:.7rem;right:.7rem;height:2.5px;background:currentColor;border-radius:2px;transition:transform .25s}
.kop-menu span:nth-child(1){top:1.15rem}.kop-menu span:nth-child(2){top:1.75rem}
.kop-menu[aria-expanded=true] span:nth-child(1){transform:translateY(.3rem) rotate(45deg)}
.kop-menu[aria-expanded=true] span:nth-child(2){transform:translateY(-.3rem) rotate(-45deg)}
.lade{position:fixed;inset:var(--kop) 0 0;background:var(--papier);overflow-y:auto;padding:1.5rem var(--gut) 3rem;z-index:39}
.lade ul{list-style:none;margin:0;padding:0}
.lade a{display:block;font:700 1.6rem/1.2 var(--f-kop);padding:.7rem 0;border-bottom:1px solid var(--lijn);text-decoration:none}
@media (max-width:1180px){.kop-nav{display:none}.kop-menu{display:block}.knop-steun{margin-left:auto}.kop-menu{margin-left:0}}
@media (max-width:420px){.knop-steun{padding-inline:.85rem}.kop-in{gap:.75rem}.kop-logo .logo-svg{width:7.2rem}}

/* ---------- held: de handdoek ---------- */
.held{position:relative;background:var(--nacht)}
.held-film{position:relative;height:min(calc(100svh - var(--kop)),56vw);min-height:20rem;overflow:hidden}
.held-poster,.held-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 45%}
.held-video{opacity:0;transition:opacity 1.2s}.held-video.speelt{opacity:1}
.held-kaartje{position:absolute;left:var(--gut);bottom:-1.6rem;z-index:2;max-width:23rem;margin:0;background:var(--kaart);color:var(--inkt);
  font:500 1.05rem/1.35 var(--f-hand);padding:.9rem 1.2rem .9rem 2.2rem;transform:rotate(-2.5deg);
  clip-path:polygon(1.2rem 0,100% 0,100% 100%,1.2rem 100%,0 50%);animation:kaartjeIn 1.1s .6s both cubic-bezier(.2,.9,.3,1.2)}
.held-kaartje::before{content:"";position:absolute;left:.75rem;top:50%;width:.55rem;height:.55rem;margin-top:-.27rem;border-radius:50%;background:var(--papier)}
.held-kaartje span{font-weight:750;display:block}
@keyframes kaartjeIn{from{transform:rotate(-14deg) translateY(1.5rem);opacity:0}to{transform:rotate(-2.5deg);opacity:1}}
@media (min-width:701px) and (max-width:1180px) and (orientation:portrait){.held-film{height:min(calc(100svh - var(--kop) - 10rem),82vw)}}
@media (max-width:700px){
  .held-film{height:auto;min-height:0}
  .held-film::before{content:"";display:block;padding-top:min(125%,calc(100svh - var(--kop) - 3rem))}
  .held-poster,.held-video{object-position:50% 50%}
  .held-kaartje{right:var(--gut);max-width:none;font-size:1rem}
}

/* ---------- intro ---------- */
.intro{padding:clamp(4.5rem,9vw,8rem) 0 clamp(3rem,6vw,5.5rem)}
.intro-in{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(2rem,5vw,6rem);align-items:end}
.intro-groot{font:700 clamp(1.7rem,3.4vw,3.1rem)/1.14 var(--f-kop);margin:0;text-wrap:pretty;hyphens:manual}
.intro-groot a{color:var(--magenta);text-decoration-thickness:.06em}
.intro-klein p{margin:0 0 1rem}
.intro-dus{font-size:1.5rem;transform:rotate(-2deg);transform-origin:left}
@media (max-width:860px){.intro-in{grid-template-columns:1fr}}

/* ---------- winkel nu ---------- */
.nu{position:relative;background:var(--nacht);color:#f6ece2;overflow:hidden;isolation:isolate}
.nu-film{position:absolute;inset:0;z-index:-1}
.nu-poster,.nu-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nu-video{opacity:0;transition:opacity 1.2s}.nu-video.speelt{opacity:1}
.nu-film::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,14,25,.94) 0%,rgba(28,14,25,.82) 45%,rgba(28,14,25,.45) 100%),linear-gradient(0deg,rgba(28,14,25,.9),transparent 50%)}
.nu-in{padding:clamp(4rem,8vw,7.5rem) var(--gut)}
.nu-status{font:700 clamp(2.2rem,5.6vw,5rem)/1.02 var(--f-kop);max-width:15em;margin:0 0 .8rem}
.nu-status em{font-style:normal;color:var(--kaart)}
.nu-status .nu-dicht{color:#f3a6cf}
.nu-sub{font-size:clamp(1.1rem,1.5vw,1.35rem);margin:0 0 clamp(2.5rem,5vw,4rem);max-width:36em}
.nu-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,6rem);max-width:64rem}
.nu h3{font:600 1.15rem/1.2 var(--f-hand);color:var(--kaart);margin:0 0 .8rem}
.nu-dagen{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.18)}
.nu-dagen li{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.18);font-variant-numeric:tabular-nums}
.nu-dagen li span:first-child{text-transform:capitalize}
.nu-dagen li.vandaag{color:var(--kaart);font-weight:800}
.nu-dagen li.vandaag span:first-child::after{content:" · vandaag";font-weight:500;text-transform:none}
.nu-zondag{font-size:.95rem;opacity:.85;margin:.9rem 0 0}
.nu-brengen p{margin:0 0 1rem}
.nu-brengen a:not(.knop){color:var(--kaart)}
.nu-knoppen{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.5rem!important}
.nu .knop-lijn{color:#f6ece2}
@media (max-width:760px){.nu-grid{grid-template-columns:1fr}.nu-film::after{background:rgba(28,14,25,.84)}}

/* ---------- wat er binnenkomt: prijskaartjes ---------- */
.binnen{padding:clamp(4.5rem,9vw,8rem) 0}
.binnen .lead{margin:1.2rem 0 clamp(2.5rem,5vw,4rem)}
.pk-rij{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(1rem,2vw,2rem)}
.pk{position:relative;padding-top:1.4rem}
.pk:nth-child(even){margin-top:3.5rem}
.pk-beeld{position:relative;margin:0;border-radius:.3rem;overflow:hidden;background:var(--papier2)}
.pk-beeld::before{content:"";display:block;padding-top:125%}
.pk-beeld img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pk-kaart{position:absolute;left:14%;right:0;top:64%;display:grid;border:0;padding:0;background:none;cursor:pointer;text-align:left;
  perspective:900px;transform:rotate(calc(-4deg + var(--i) * 2deg));transform-origin:20% 0;animation:zwaai 5s calc(var(--i) * -.9s) ease-in-out infinite;color:var(--inkt)}
@keyframes zwaai{0%,100%{transform:rotate(calc(-4deg + var(--i) * 2deg))}50%{transform:rotate(calc(-1deg + var(--i) * 2deg))}}
.pk-touw{position:absolute;left:1.5rem;top:-2.2rem;width:1px;height:2.4rem;background:rgba(42,22,38,.6);transform:rotate(18deg);transform-origin:bottom}
.pk-voor,.pk-achter{background:var(--kaart);padding:.9rem 1rem .9rem 2.1rem;clip-path:polygon(1.1rem 0,100% 0,100% 100%,1.1rem 100%,0 1.4rem);
  min-height:4.4rem;position:relative;box-shadow:0 .4rem .9rem rgba(42,22,38,.18)}
.pk-voor::before,.pk-achter::before{content:"";position:absolute;left:.55rem;top:1.15rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--papier)}
.pk-voor{font:700 clamp(1.15rem,1.5vw,1.45rem)/1.1 var(--f-hand);display:flex;align-items:center;hyphens:none}
.pk-achter{position:absolute;left:0;right:0;top:0;min-height:100%;font:500 .95rem/1.38 var(--f-hand);display:none}
.pk-kaart[aria-expanded=true]{animation:omdraai .5s cubic-bezier(.3,.7,.2,1);z-index:3;transform:rotate(-1deg)}
.pk-kaart[aria-expanded=true] .pk-voor{visibility:hidden}
.pk-kaart[aria-expanded=true] .pk-achter{display:block}
@keyframes omdraai{0%{transform:rotate(calc(-4deg + var(--i) * 2deg)) scaleX(1)}45%{transform:rotate(-2deg) scaleX(.05)}100%{transform:rotate(-1deg) scaleX(1)}}
.pk-kaart:focus-visible{outline:none}.pk-kaart:focus-visible .pk-voor,.pk-kaart:focus-visible .pk-achter{outline:3px solid var(--blauw)}
@media (max-width:1100px){
  .pk-rij{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(14rem,36%);overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gut) 7rem;margin:0 calc(-1 * var(--gut));scrollbar-width:none}
  .pk-rij::-webkit-scrollbar{display:none}
  .pk{scroll-snap-align:start;scroll-margin-left:var(--gut)}
}
@media (max-width:600px){.pk-rij{grid-auto-columns:72%}.pk:nth-child(even){margin-top:2rem}}

/* ---------- de cheque ---------- */
.cheque{background:var(--papier2);padding:clamp(4.5rem,9vw,8rem) 0}
.ch-intro .lead{margin:1.2rem 0 clamp(2.5rem,5vw,4rem)}
.ch-tool{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);grid-template-areas:"jaren jaren" "buhne info";gap:1.5rem clamp(2rem,5vw,5rem);align-items:start}
.ch-jaren{grid-area:jaren;display:flex;flex-wrap:wrap;gap:.3rem clamp(.55rem,2vw,2rem);border-bottom:1px solid var(--lijn)}
.ch-jaar{font:700 clamp(1.08rem,2.2vw,2rem)/1 var(--f-kop);background:none;border:0;padding:.7rem .1rem .9rem;cursor:pointer;color:rgba(42,22,38,.45);position:relative;min-width:44px;min-height:44px}
.ch-jaar[aria-selected=true]{color:var(--magenta)}
.ch-jaar[aria-selected=true]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;background:var(--magenta);border-radius:2px}
.ch-buhne{grid-area:buhne;min-width:0}
.ch-stapel{position:relative;padding:1rem 1.2rem 1.6rem .4rem}
.ch-stapel::before,.ch-stapel::after{content:"";position:absolute;inset:1rem 1.2rem 1.6rem .4rem;background:#fff;border-radius:.4rem;box-shadow:0 .2rem .6rem rgba(42,22,38,.12)}
.ch-stapel::before{transform:rotate(2.6deg) translate(.6rem,.4rem)}
.ch-stapel::after{transform:rotate(1.2deg) translate(.3rem,.2rem)}
.ch-kaart{position:relative;z-index:1;background:#fff;border-radius:.4rem;overflow:hidden;padding:clamp(1rem,2.6vw,2.2rem) clamp(1rem,3vw,2.6rem) clamp(.9rem,2vw,1.6rem);
  box-shadow:0 1.2rem 2.4rem -1rem rgba(42,22,38,.35);transform:rotate(-1.2deg);container-type:inline-size;outline:none}
.ch-kaart.weg{animation:chWeg .38s ease-in forwards}.ch-kaart.erin{animation:chIn .5s cubic-bezier(.2,.9,.3,1.1)}
@keyframes chWeg{to{transform:translate(-30%,-6%) rotate(-9deg);opacity:0}}
@keyframes chIn{from{transform:translate(12%,4%) rotate(4deg);opacity:0}to{transform:rotate(-1.2deg);opacity:1}}
.ch-bokeh{position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(circle at 78% 22%,rgba(242,120,170,.55) 0 .4rem,transparent .45rem),radial-gradient(circle at 86% 40%,rgba(242,120,170,.4) 0 .3rem,transparent .35rem),
  radial-gradient(circle at 70% 60%,rgba(255,255,255,.9) 0 2.2rem,transparent 2.3rem),radial-gradient(circle at 92% 70%,rgba(230,210,240,.7) 0 1.6rem,transparent 1.7rem),
  radial-gradient(circle at 60% 12%,rgba(240,200,225,.55) 0 2.6rem,transparent 2.7rem),radial-gradient(circle at 18% 88%,rgba(240,200,225,.5) 0 1.4rem,transparent 1.5rem),
  radial-gradient(circle at 40% 70%,rgba(242,120,170,.45) 0 .25rem,transparent .3rem),radial-gradient(circle at 95% 15%,rgba(225,215,245,.8) 0 2rem,transparent 2.1rem),
  linear-gradient(120deg,#fff 30%,#f6eef6 70%,#f1e6f2)}
.ch-kopregel{position:relative;display:flex;align-items:flex-end;gap:.8rem;flex-wrap:wrap;margin-bottom:clamp(.6rem,2cqi,1.1rem)}
.ch-logo svg{width:clamp(5rem,20cqi,8rem);height:auto}
.ch-via{font-weight:650;font-size:clamp(.78rem,2.4cqi,1.1rem);color:#2c2742;padding-bottom:.2rem}
.ch-naam{position:relative;margin:0 0 clamp(.5rem,1.6cqi,.9rem);padding:clamp(.6rem,2.4cqi,1.2rem) clamp(.8rem,3cqi,1.5rem);max-width:78%;
  background:linear-gradient(100deg,#c8bdf0,#e9b8dc 70%,#f3c4dd);font:850 clamp(1rem,4.2cqi,2rem)/1.15 var(--f-tekst);color:#262040;border-radius:.15rem;min-height:2.6em;display:flex;align-items:center}
.ch-zin{position:relative;margin:0 0 clamp(.5rem,1.5cqi,.9rem);max-width:62%;font-size:clamp(.74rem,2.1cqi,1rem);line-height:1.35;color:#2c2742;font-weight:600}
.ch-bedrag{position:relative;display:flex;justify-content:flex-end;align-items:baseline;margin:0 0 clamp(.4rem,1.4cqi,.8rem)}
.ch-bedrag-in{display:inline-block;background:#dcd3f4;color:#6a4ec4;padding:.1em .5em .1em .45em;font:700 clamp(1.5rem,7cqi,3.4rem)/1.1 var(--f-hand);white-space:nowrap;
  clip-path:inset(0 0 0 0)}
.ch-is{font:700 clamp(1.5rem,7cqi,3.4rem)/1 var(--f-hand);color:#6a4ec4;background:#dcd3f4;padding:.1em .3em .1em 0}
.ch-kaart.erin .ch-bedrag-in{animation:schrijf 1.1s .25s steps(18,end) both}
@keyframes schrijf{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.ch-slot{position:relative;margin:0;text-align:center;font-weight:850;font-size:clamp(.9rem,3cqi,1.4rem);color:#262040}
.ch-bediening{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:.6rem}
.ch-pijl{width:3rem;height:3rem;border-radius:50%;border:2px solid var(--inkt);background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--inkt)}
.ch-pijl:hover{background:var(--inkt);color:var(--papier)}
.ch-teller{font:600 1.05rem var(--f-hand);margin:0;min-width:9rem;text-align:center}
.ch-jaar-info{grid-area:info;padding-top:1rem}
.ch-jaar-label{font:600 1.1rem var(--f-hand);margin:0}
.ch-jaar-totaal{font:700 clamp(2.4rem,4.6vw,4.2rem)/1 var(--f-kop);color:var(--magenta);margin:.2rem 0 .7rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.ch-jaar-sub{margin:0 0 1.4rem;font-size:.98rem}
.ch-lijst{list-style:none;margin:0 0 1.6rem;padding:0;border-top:1px solid var(--lijn)}
.ch-lijst button{width:100%;display:flex;justify-content:space-between;gap:1rem;background:none;border:0;border-bottom:1px solid var(--lijn);padding:.6rem 0;
  font:inherit;font-size:.98rem;text-align:left;cursor:pointer;color:inherit;min-height:44px;align-items:center}
.ch-lijst button span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:750}
.ch-lijst button[aria-current=true]{color:var(--magenta);font-weight:800}
.ch-sinds{font-size:1.02rem;margin:0}
.ch-sinds strong{font-family:var(--f-kop);font-size:1.35rem;white-space:nowrap}
.ch-alles{margin-top:clamp(2rem,4vw,3.5rem);border-top:1px solid var(--lijn);padding-top:1rem}
.ch-alles summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}
.ch-tabel{border-collapse:collapse;width:100%;max-width:40rem;margin-top:1rem}
.ch-tabel td,.ch-tabel th{padding:.45rem 0;border-bottom:1px solid var(--lijn);text-align:left}
.ch-tabel td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.ch-tabel-jaar th{font:700 1.3rem var(--f-kop);padding-top:1.4rem}
.ch-tabel-tot td{font-weight:850}
@media (max-width:600px){.ch-jaren{justify-content:space-between;gap:.2rem;flex-wrap:nowrap}.ch-jaar{font-size:clamp(.92rem,4.6vw,1.2rem);min-width:0;padding-inline:0}}
@media (max-width:900px){.ch-tool{grid-template-columns:1fr;grid-template-areas:"jaren" "buhne" "info"}
  .ch-naam{max-width:100%}.ch-zin{max-width:100%}}

/* ---------- citaten ---------- */
.citaat-band{padding:clamp(4rem,8vw,7rem) 0;background:var(--papier)}
.citaten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,6rem)}
.citaten blockquote{margin:0;position:relative;padding-top:2.6rem}
.citaten blockquote::before{content:"\201C";position:absolute;top:-1.4rem;left:-.2rem;font:700 6rem/1 var(--f-kop);color:var(--magenta)}
.citaten p{font:400 clamp(1.3rem,2.2vw,1.95rem)/1.3 var(--f-kop);margin:0 0 1rem}
.citaten footer{font:600 1rem var(--f-hand)}
@media (max-width:760px){.citaten{grid-template-columns:1fr}}

/* ---------- alpe ---------- */
.alpe{position:relative;background:var(--nacht);color:#f3e6d8;overflow:hidden;isolation:isolate}
.alpe-film{position:absolute;inset:0;z-index:-1}
.alpe-poster,.alpe-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.alpe-video{opacity:0;transition:opacity 1.2s}.alpe-video.speelt{opacity:1}
.alpe-film::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,9,16,.92),rgba(18,9,16,.55) 55%,rgba(18,9,16,.35))}
.alpe-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,7rem);align-items:center;padding-block:clamp(5rem,10vw,9rem)}
.alpe-tekst p{max-width:34em}
.alpe-cijfers{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;font:700 clamp(1.2rem,2vw,1.7rem)/1.2 var(--f-kop);color:var(--kaart);margin:1.2rem 0 1.4rem}
.alpe-cijfers span{white-space:nowrap}
.stapel{position:relative}
.st-lijst{list-style:none;margin:0;padding:0;position:relative;display:grid}
.st-foto{grid-area:1/1;background:#fff;padding:.7rem .7rem 2.6rem;box-shadow:0 1rem 2rem rgba(0,0,0,.45);transform:rotate(var(--r));transition:transform .55s cubic-bezier(.3,.8,.2,1),opacity .4s;
  cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.st-foto img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;pointer-events:none}
.st-onder{position:absolute;left:1rem;bottom:.6rem;font:600 1.05rem var(--f-hand);color:var(--inkt)}
.st-foto.weg{transform:translate(-120%,10%) rotate(-18deg);opacity:0}
.st-hint{margin:1.4rem 0 0;text-align:center}
.alpe .knop-lijn{color:#f3e6d8}
@media (max-width:860px){.alpe-in{grid-template-columns:1fr}.alpe-film::after{background:rgba(18,9,16,.78)}.stapel{max-width:30rem;width:92%;margin-inline:auto}}

/* ---------- tassen aan het touw ---------- */
.tassen{background:var(--muur);color:#fff3ea;padding:clamp(4.5rem,9vw,8rem) 0 clamp(3rem,6vw,5rem);overflow:hidden}
.tassen .kaartje{color:#fff3ea}.tassen .kaartje span::before{background:var(--muur)}
.tassen .hand{color:var(--kaart)}
.tassen-kop .lead{margin:1.2rem 0 2.5rem}
.tas-touw{position:relative;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;padding:0 var(--gut) 2rem}
.tas-touw::-webkit-scrollbar{display:none}
.tas-lijn{position:absolute;left:0;top:1.2rem;width:max(100%,calc(7 * 15rem));height:2.5rem;color:#d9b98a}
.tas-touw ul{list-style:none;margin:0;padding:2.2rem 0 0;display:flex;gap:clamp(1rem,2vw,2rem);width:max-content}
.tas{position:relative;width:clamp(11rem,17vw,15rem);flex-shrink:0;transform-origin:50% -1.5rem;animation:tasZwaai 6s var(--d) ease-in-out infinite}
.tas::before{content:"";position:absolute;left:50%;top:-1.25rem;width:.7rem;height:2.1rem;margin-left:-.35rem;background:linear-gradient(90deg,#c99a63,#e2b985 50%,#b98950);border-radius:.15rem;box-shadow:0 .2rem .3rem rgba(0,0,0,.3);z-index:1}
.tas img{width:100%;height:auto;background:#fff;padding:.5rem .5rem 1.6rem;box-shadow:0 .8rem 1.4rem rgba(0,0,0,.3);pointer-events:none}
.tas-touw.sleept .tas{animation:none;transform:rotate(var(--sw,0deg));transition:transform .3s}
@keyframes tasZwaai{0%,100%{transform:rotate(-1.2deg)}50%{transform:rotate(1.4deg)}}

/* ---------- kroonkurken ---------- */
.kurk{padding:clamp(4.5rem,9vw,8rem) 0}
.kurk-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,6vw,7rem);align-items:center}
.kurk-beeld{margin:0;position:relative}
.kurk-beeld img{width:100%;height:auto;border-radius:.3rem}
.kurk-beeld figcaption{position:absolute;right:.6rem;bottom:.5rem;font-size:.75rem;color:#fff;opacity:.8}
.kurk-tekst .lead{margin:1.2rem 0 1rem}
.kurk-tekst p{max-width:36em}
@media (max-width:700px){.kurk-in{grid-template-columns:1fr}.kurk-beeld{max-width:28rem}}

/* ---------- adressen / historie ---------- */
.adressen{background:var(--nacht2);color:#f3e6d8;padding:clamp(4.5rem,9vw,8rem) 0}
.adressen .kaartje{color:#f3e6d8}.adressen .kaartje span::before{background:var(--nacht2)}
.adressen-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(2rem,6vw,7rem);align-items:start}
.adressen .lead{margin-top:1.2rem}
.adressen .lead a{color:var(--kaart)}
.historie{list-style:none;margin:0;padding:0}
.historie li{display:grid;grid-template-columns:4.6rem minmax(0,1fr);gap:.1rem 1.2rem;padding:.75rem 0;border-bottom:1px solid currentColor;border-color:rgba(127,100,120,.3)}
.hi-jaar{font:700 1.25rem/1.3 var(--f-kop);color:var(--magenta);grid-row:span 2}
.adressen .hi-jaar{color:var(--kaart)}
.hi-plek{font-weight:800}
.hi-tekst{grid-column:2;opacity:.85;font-size:.98rem}
.historie-archief .hi-tekst,.historie-media .hi-plek{font-weight:500}
.historie-media .hi-jaar{font:600 .95rem/1.4 var(--f-hand);color:var(--inkt)}
.historie-media li{grid-template-columns:12rem minmax(0,1fr)}
@media (max-width:860px){.adressen-in{grid-template-columns:1fr}.historie-media li{grid-template-columns:1fr}.historie-media .hi-plek{grid-column:1}}

/* ---------- steun ---------- */
.steun{background:var(--magenta);color:#fff;padding:clamp(4.5rem,9vw,8rem) 0}
.steun .groot,.adressen .groot{font-size:clamp(2rem,4vw,3.6rem)}
.steun-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,7rem)}
.steun .lead{margin-top:1.2rem}
.steun-wegen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(1.5rem,3vw,3rem)}
.steun-weg{border-top:2px solid rgba(255,255,255,.5);padding:1.1rem 0 1.6rem}
.steun-weg h3{font:700 1.35rem/1.2 var(--f-kop);margin:0 0 .6rem}
.steun-weg p{margin:0 0 .8rem}
.iban{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;font:700 1.2rem/1.2 var(--f-hand)}
.iban span{white-space:nowrap}
@media (max-width:1180px){.steun-in{grid-template-columns:1fr}}
@media (max-width:560px){.steun-wegen{grid-template-columns:1fr}}

/* ---------- voet ---------- */
.voet{background:var(--nacht);color:#e9dcd0;padding:clamp(3.5rem,7vw,6rem) 0 2rem}
.voet-in{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:2rem clamp(1.5rem,4vw,4rem);padding-inline:var(--gut)}
.voet-merk .logo-svg{width:12rem;height:auto;background:var(--papier);padding:.8rem 1rem;border-radius:.4rem;box-sizing:content-box}
.voet-zin{font:600 1.3rem var(--f-hand);color:var(--kaart);transform:rotate(-2deg);transform-origin:left;margin:1.2rem 0 0}
.voet h2{font:600 1.05rem var(--f-hand);color:var(--kaart);margin:0 0 .7rem}
.voet ul{list-style:none;margin:0;padding:0}
.voet li{margin:0 0 .45rem;font-size:.96rem}
.voet a{color:#fff;text-decoration-color:rgba(255,255,255,.35)}
.voet a:hover{color:var(--kaart)}
.voet-tdg{padding:2.5rem var(--gut) 0;margin:0;font-size:.85rem;opacity:.7}
@media (max-width:900px){.voet-in{grid-template-columns:1fr 1fr}.voet-merk{grid-column:1/-1}}
@media (max-width:480px){.voet-in{grid-template-columns:1fr}}

/* ---------- subpagina's ---------- */
.pagkop{padding:clamp(3.5rem,7vw,6.5rem) 0 clamp(3rem,6vw,5rem);border-bottom:1px solid var(--lijn)}
.pagkop-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.pagkop h1{font-size:clamp(2.5rem,6.5vw,5.8rem)}
.pagkop-lang h1{font-size:clamp(2.1rem,4.6vw,4.3rem)}
.pagkop .lead{margin-top:1.3rem}
.pk-kopbeeld{margin:0;transform:rotate(1.5deg);background:#fff;padding:.7rem .7rem 2.4rem;box-shadow:0 1rem 2rem -.6rem rgba(42,22,38,.3)}
.pk-kopbeeld img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}
@media (max-width:860px){.pagkop-in{grid-template-columns:1fr}.pk-kopbeeld{max-width:34rem}}
.tekstblok{padding:clamp(3.5rem,7vw,6rem) 0;border-bottom:1px solid var(--lijn)}
.kol2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(1.5rem,6vw,7rem);align-items:start}
.kol2>div:first-child p{max-width:30em}
.leestekst{max-width:40em}
.leestekst p{margin:0 0 1.1rem}
.streep{list-style:none;padding:0;margin:0}
.streep li{padding:.7rem 0 .7rem 1.6rem;border-bottom:1px solid var(--lijn);position:relative}
.streep li::before{content:"";position:absolute;left:0;top:1.25rem;width:.8rem;height:.45rem;background:var(--kaart);clip-path:polygon(.25rem 0,100% 0,100% 100%,.25rem 100%,0 50%)}
.hi-poster{margin:1.5rem 0 0;max-width:16rem;transform:rotate(-2deg);box-shadow:0 .8rem 1.6rem -.5rem rgba(42,22,38,.35)}
@media (max-width:860px){.kol2{grid-template-columns:1fr}}
.fotorij{padding:clamp(3rem,6vw,5rem) 0}
.fotorij-in{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:clamp(1rem,2.5vw,2.5rem);align-items:start}
.fotorij figure{margin:0;background:#fff;padding:.6rem .6rem 0;box-shadow:0 .8rem 1.6rem -.6rem rgba(42,22,38,.3)}
.fotorij figure:nth-child(1){transform:rotate(-1.6deg)}.fotorij figure:nth-child(3){transform:rotate(1.8deg);margin-top:2.5rem}
.fotorij img{width:100%;height:auto}
.fotorij figcaption{font:600 1rem var(--f-hand);padding:.6rem .2rem .7rem}
.fotorij figure:not(:has(figcaption)){padding-bottom:.6rem}
@media (max-width:760px){.fotorij-in{grid-template-columns:1fr 1fr}.fotorij figure:nth-child(2){grid-column:1/-1;grid-row:1}.fotorij figure:nth-child(3){margin-top:0}}
.doelen{padding:clamp(3.5rem,7vw,6rem) 0;border-bottom:1px solid var(--lijn)}
.doelen-vast{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,6rem)}
.doel p{max-width:36em}
.doel-sinds{font:600 1.05rem var(--f-hand);color:var(--magenta);margin:0 0 .4rem}
.doel-klein{border-top:1px solid var(--lijn);padding:1rem 0}
.doel-klein h3{font:700 1.3rem var(--f-kop);margin:0 0 .5rem}
@media (max-width:760px){.doelen-vast{grid-template-columns:1fr}}
.toilet{background:#f7e2c9;padding:clamp(4rem,8vw,7rem) 0}
.toilet-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.toilet figure{margin:0;transform:rotate(-1.5deg);background:#fff;padding:.7rem;box-shadow:0 1rem 2rem -.6rem rgba(42,22,38,.35)}
.toilet .lead{margin:1.2rem 0 1.5rem}
@media (max-width:860px){.toilet-in{grid-template-columns:1fr}}
.mini{border-collapse:collapse;min-width:min(22rem,100%)}
.mini td{padding:.4rem 0;border-bottom:1px solid var(--lijn)}
.mini td:last-child{text-align:right;padding-left:2rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.mini-tot td{font-weight:850}
.bestuur,.contact{list-style:none;margin:0;padding:0}
.bestuur li,.contact li{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:.2rem 1.5rem;padding:.8rem 0;border-bottom:1px solid var(--lijn)}
.bestuur span,.contact span{font:600 1rem var(--f-hand);color:var(--magenta)}
.bestuur strong{font:700 1.3rem var(--f-kop)}
@media (max-width:600px){.bestuur li,.contact li{grid-template-columns:1fr}}
.pdfs{list-style:none;padding:0;margin:1.2rem 0}
.pdfs li{padding:.6rem 0;border-bottom:1px solid var(--lijn);display:flex;justify-content:space-between;gap:1rem}
.pdfs span{font:600 .9rem var(--f-hand);opacity:.7}
.sponsoren{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(1.5rem,3vw,3rem)}
.sponsoren li{border-top:1px solid var(--lijn);padding:1.1rem 0 1.4rem}
.sponsoren h3{font:700 1.3rem/1.2 var(--f-kop);margin:0 0 .4rem}
.sponsoren p{margin:0;font-size:.98rem}
@media (max-width:960px){.sponsoren{grid-template-columns:1fr 1fr}}@media (max-width:560px){.sponsoren{grid-template-columns:1fr}}
.privacy h2,.privacy h3,.privacy h4{font-family:var(--f-kop);margin:2rem 0 .6rem;font-size:1.4rem}

/* reveal */
.rv{opacity:0;transform:translateY(1.4rem);transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1)}
.rv.in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}}
