/* Date Thuis */
:root{--nacht:#20122B;--pruim:#3A1D46;--wijn:#8E1E48;--wijn2:#A8285A;--kaars:#F3B04A;--blos:#F9E4E1;--room:#FFF8F4;--inkt:#2A1A2E;--grijs:#6D5A6F;--lijn:#EBDADD;--r:18px;--rs:12px;--sh:0 10px 30px -12px rgba(42,26,46,.28);--sh2:0 24px 60px -24px rgba(32,18,43,.45);--f1:"Gloock",Georgia,"Times New Roman",serif;--f2:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--ease:cubic-bezier(.2,.7,.2,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.dt{margin:0;background:var(--room);color:var(--inkt);font:17px/1.65 var(--f2);-webkit-font-smoothing:antialiased;overflow-x:hidden}
:where(.dt) img{max-width:100%;height:auto;display:block}
:where(.dt) a{color:var(--wijn)}
:where(.dt) :is(h1,h2,h3,h4){font-family:var(--f1);font-weight:400;line-height:1.12;margin:0 0 .5em;letter-spacing:-.01em;color:inherit}
:where(.dt) h1{font-size:clamp(2.3rem,5.4vw,4.2rem)}
:where(.dt) h2{font-size:clamp(1.8rem,3.4vw,2.7rem)}
:where(.dt) h3{font-size:1.35rem}
:where(.dt) p{margin:0 0 1em}
:where(.dt) :is(ul,ol){margin:0;padding:0}
:where(.dt) button{font:inherit;cursor:pointer}
.ic{width:1.25em;height:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.22em}
.flip-x{transform:scaleX(-1)}
.wrap{width:min(1200px,100% - 40px);margin-inline:auto}
.narrow{width:min(820px,100% - 40px)}
.center{text-align:center}.mt{margin-top:1.4em!important}.h-sm{font-size:1.5rem!important}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:8px 14px;border-radius:8px;z-index:200}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--kaars);outline-offset:3px;border-radius:6px}

/* Knoppen */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:.85em 1.5em;border-radius:999px;border:2px solid transparent;font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none;transition:transform .25s var(--ease),box-shadow .25s,background .25s,color .25s;white-space:nowrap;position:relative;overflow:hidden}
.btn:hover{transform:translateY(-2px)}
.btn-sm{padding:.6em 1.1em;font-size:.93rem}.btn-lg{padding:1em 1.8em;font-size:1.06rem}
.dt .btn-wijn{background:var(--wijn);color:#fff;box-shadow:0 10px 24px -10px rgba(142,30,72,.7)}.dt .btn-wijn:hover{background:var(--wijn2)}
.dt .btn-kaars{background:var(--kaars);color:var(--nacht);box-shadow:0 10px 30px -10px rgba(243,176,74,.8)}.dt .btn-kaars:hover{background:#FFC35E}
.dt .btn-ghost-light{border-color:rgba(255,248,244,.35);color:var(--room);background:rgba(255,255,255,.04)}.dt .btn-ghost-light:hover{border-color:var(--kaars);color:var(--kaars)}
.dt .btn-line{border-color:var(--inkt);color:var(--inkt);background:transparent}.dt .btn-line:hover{background:var(--inkt);color:var(--room)}
.dt .btn-wa{background:#1FA855;color:#fff}.dt .btn-wa:hover{background:#178a45}
.btn-shine::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);animation:shine 4.5s ease-in-out infinite}
@keyframes shine{0%,60%{transform:translateX(-120%)}80%,100%{transform:translateX(120%)}}
.btn-link{background:none;border:0;color:var(--wijn);text-decoration:underline;padding:0}
.btn-ic{width:46px;height:46px;border-radius:50%;border:2px solid var(--lijn);background:#fff;color:var(--inkt);display:inline-grid;place-items:center;transition:.2s}.btn-ic:hover{border-color:var(--wijn);color:var(--wijn);transform:translateY(-2px)}
.kicker{display:inline-block;font:600 .78rem/1.45 var(--f2);letter-spacing:.16em;text-transform:uppercase;color:var(--wijn);margin-bottom:1em;text-decoration:none}
.kicker-light{color:var(--kaars)}
.lead{font-size:clamp(1.08rem,1.6vw,1.25rem);opacity:.9;max-width:36em}

/* Animaties */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease) var(--d,0ms),transform .8s var(--ease) var(--d,0ms)}
.reveal.in{opacity:1;transform:none}
.fade-up{animation:fadeUp .9s var(--ease) both}.fade-in{animation:fadeIn 1.2s var(--ease) both}
.d1{animation-delay:.1s}.d2{animation-delay:.22s}.d3{animation-delay:.34s}.d4{animation-delay:.46s}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0;transform:scale(.97)}to{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}.reveal{opacity:1;transform:none}}
.no-js .reveal{opacity:1;transform:none}

/* Header */
.hd{position:sticky;top:0;z-index:100;background:rgba(255,248,244,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:background .3s,border-color .3s,box-shadow .3s}
.admin-bar .hd{top:32px}@media (max-width:782px){.admin-bar .hd{top:0}}
.hd-in{display:flex;align-items:center;gap:24px;height:74px}
.hd.scrolled{border-color:var(--lijn);box-shadow:0 8px 30px -20px rgba(42,26,46,.4)}
.hd-dark{background:rgba(32,18,43,.72);color:var(--room)}
.hd-dark.scrolled{background:rgba(32,18,43,.94);border-color:rgba(255,255,255,.06)}
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:inherit!important;font:1.45rem/1 var(--f1)}
.logo em{font-style:normal;color:var(--wijn)}.hd-dark .logo em,.ft .logo em,.dp-hero .logo em{color:var(--kaars)}
.logo-mark{width:38px;height:38px;flex:none}
.logo-mark .vlam{transform-origin:20px 26px;animation:flick 2.6s ease-in-out infinite}
@keyframes flick{0%,100%{transform:scale(1) rotate(0)}25%{transform:scale(1.04,.96) rotate(-2deg)}50%{transform:scale(.97,1.05) rotate(1.5deg)}75%{transform:scale(1.02,.98) rotate(-1deg)}}
.nav{margin-left:auto}
.nav ul{list-style:none;display:flex;gap:4px;align-items:center}
.nav a{display:inline-flex;align-items:center;gap:6px;padding:.55em .9em;border-radius:999px;color:inherit;text-decoration:none;font-weight:500;font-size:.97rem;transition:background .2s,color .2s}
.nav a:hover,.nav a[aria-current]{background:rgba(142,30,72,.09);color:var(--wijn)}
.hd-dark .nav a:hover,.hd-dark .nav a[aria-current]{background:rgba(243,176,74,.12);color:var(--kaars)}
.nav-wa{display:none}
.burger{display:none;margin-left:auto;width:46px;height:46px;border:0;background:transparent;border-radius:12px;position:relative;color:inherit}
.burger span{position:absolute;left:12px;right:12px;height:2px;background:currentColor;border-radius:2px;transition:.3s var(--ease)}
.burger span:nth-child(1){top:16px}.burger span:nth-child(2){top:22px}.burger span:nth-child(3){top:28px}
.nav-open .burger span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-open .burger span:nth-child(2){opacity:0}.nav-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media (max-width:980px){
.hd-cta{display:none}.burger{display:block}
.nav{position:fixed;inset:74px 0 auto 0;background:var(--nacht);color:var(--room);padding:18px 20px 28px;transform:translateY(-12px);opacity:0;visibility:hidden;transition:.3s var(--ease);box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.admin-bar .nav{top:120px}
.nav-open .nav{transform:none;opacity:1;visibility:visible}
.nav ul{flex-direction:column;align-items:stretch}
.nav a{font-size:1.15rem;padding:.8em 1em}
.nav-wa{display:block}.nav-wa a{color:#6BE39A}
}

/* Hero */
.hero,.phero,.prod,.dp-hero{position:relative;background:var(--nacht);color:var(--room);overflow:hidden;isolation:isolate}
.hero{margin-top:-74px;padding:150px 0 110px;min-height:min(100vh,900px);display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55}
.o1{width:520px;height:520px;background:radial-gradient(circle,#8E1E48,transparent 70%);left:-140px;top:-120px;animation:drift 16s ease-in-out infinite}
.o2{width:620px;height:620px;background:radial-gradient(circle,#F3B04A55,transparent 65%);right:-160px;top:10%;animation:drift 20s ease-in-out infinite reverse}
.o3{width:420px;height:420px;background:radial-gradient(circle,#3A1D46,transparent 70%);left:40%;bottom:-200px;animation:drift 18s ease-in-out infinite}
@keyframes drift{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,30px)}}
.spark{position:absolute;left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:#FFE3AE;box-shadow:0 0 10px 2px rgba(243,176,74,.7);animation:twinkle var(--t) ease-in-out var(--dl) infinite;opacity:0}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.4)}50%{opacity:.9;transform:scale(1)}}
.hero-in{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.hero h1{margin-bottom:.35em}
.hero h1::first-line{color:var(--room)}
.hero-btns{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0 26px}
.hero-usp{list-style:none;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:.95rem;opacity:.85}
.hero-usp li{display:flex;align-items:center;gap:8px}.hero-usp .ic{color:var(--kaars)}
.hero-art{position:relative;height:500px}
.candle{position:absolute;width:130px;left:4%;bottom:10px;filter:drop-shadow(0 20px 30px rgba(0,0,0,.4))}
.c-flame{transform-origin:60px 70px;animation:flick 2.2s ease-in-out infinite}
.c-glow{animation:glow 3s ease-in-out infinite}
@keyframes glow{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
.c-glow{transform-origin:60px 58px}
.candle.sm{position:static;width:54px;margin:0 auto 10px;filter:none}
.menu-card{position:absolute;right:0;top:20px;width:min(340px,78%);background:linear-gradient(160deg,#FFFDF9,#F7E9DE);color:var(--inkt);border-radius:14px;padding:26px 28px 22px;box-shadow:var(--sh2),0 0 0 1px rgba(255,255,255,.5) inset;transform:rotate(3.5deg);animation:float 7s ease-in-out infinite}
.menu-card::before{content:"";position:absolute;inset:9px;border:1px solid rgba(142,30,72,.3);border-radius:9px;pointer-events:none}
@keyframes float{0%,100%{transform:rotate(3.5deg) translateY(0)}50%{transform:rotate(2deg) translateY(-12px)}}
.menu-top{display:flex;align-items:center;gap:10px;font:1.6rem var(--f1);color:var(--wijn);margin-bottom:14px}
.menu-top i{flex:1;height:1px;background:linear-gradient(90deg,rgba(142,30,72,.4),transparent)}
.menu-page{display:none}
.menu-page.on{display:block;animation:pageIn .8s var(--ease)}
@keyframes pageIn{from{opacity:0;transform:translateY(10px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
.menu-ic{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--blos);color:var(--wijn);margin-bottom:8px}.menu-ic .ic{width:26px;height:26px}
.menu-page strong{display:block;font:400 1.45rem/1.15 var(--f1);margin-bottom:12px}
.menu-page ul{list-style:none}
.menu-page li{display:flex;gap:14px;padding:7px 0;border-top:1px dashed rgba(42,26,46,.15);font-size:.95rem}
.menu-page time{font-weight:600;color:var(--wijn);min-width:44px}
.menu-foot{margin-top:14px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--grijs);text-align:center}
.hero-note{position:absolute;left:28%;bottom:40px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;padding:12px 16px;font-size:.9rem;line-height:1.35;animation:float2 8s ease-in-out infinite}
.hero-note .ic{width:34px;height:34px;padding:7px;border-radius:50%;background:var(--wijn);color:#fff}
@keyframes float2{0%,100%{transform:translateY(0)}50%{transform:translateY(10px)}}
.scroll-cue{position:absolute;left:50%;bottom:26px;width:26px;height:42px;border:2px solid rgba(255,248,244,.4);border-radius:14px;transform:translateX(-50%)}
.scroll-cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--kaars);animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
@media (max-width:900px){.hero{padding:120px 0 90px;min-height:0}.hero-in{grid-template-columns:1fr;gap:30px}.hero-art{height:400px;max-width:480px;width:100%;margin:0 auto}.scroll-cue{display:none}}
@media (max-width:520px){.hero-art{height:360px}.candle{width:96px}.hero-note{left:auto;right:0;bottom:6px;font-size:.82rem}.menu-card{padding:20px 20px 16px}}

/* Marquee */
.marquee{background:var(--wijn);color:#fff;overflow:hidden;padding:16px 0;transform:rotate(-1.2deg);margin:-14px -10px 0;position:relative;z-index:2;box-shadow:0 14px 30px -18px rgba(142,30,72,.9)}
.marquee-track{display:flex;align-items:center;gap:26px;width:max-content;animation:marq 48s linear infinite;font:1.3rem var(--f1);white-space:nowrap}
.marquee i{color:var(--kaars);display:inline-flex}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-50%)}}

/* Secties */
.sec{padding:clamp(70px,9vw,120px) 0}
.sec-sm{padding:70px 0}.sec-top0{padding-top:20px}
.sec-blos{background:var(--blos)}
.sec-room{background:#FBF0EA}
.sec-dark{background:var(--nacht);color:var(--room)}
.sec-dark .kicker{color:var(--kaars)}
.sh{max-width:720px;margin-bottom:44px}
.sh-c{text-align:center;margin-inline:auto}
.sh p{font-size:1.1rem;color:var(--grijs)}.sec-dark .sh p{color:rgba(255,248,244,.75)}

/* Filterchips */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:-10px 0 38px}
.chip{border:1.5px solid var(--lijn);background:#fff;color:var(--inkt);border-radius:999px;padding:.55em 1.1em;font-weight:500;font-size:.95rem;transition:.2s}
.chip:hover{border-color:var(--wijn);color:var(--wijn)}
.chip.on{background:var(--inkt);border-color:var(--inkt);color:var(--room)}

/* Pakketkaarten */
.grid-pk{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}
.pk{background:#fff;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);display:flex;flex-direction:column;position:relative;transition:transform .45s var(--ease),box-shadow .45s var(--ease),opacity .8s var(--ease) var(--d,0ms)}
.pk.in:hover{transform:translateY(-8px);box-shadow:0 30px 60px -24px rgba(42,26,46,.45)}
.pk.hide{display:none}
.pk-img{display:block;position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--pk-bg,var(--pruim))}
.pk-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.pk:hover .pk-img img{transform:scale(1.06)}
.pk-price{position:absolute;right:14px;top:14px;background:var(--room);color:var(--inkt);font-weight:700;font-size:.95rem;padding:.4em .85em;border-radius:999px;box-shadow:0 6px 16px -6px rgba(0,0,0,.4)}
.pk-body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.pk-cat{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--wijn);margin-bottom:6px}
.pk-t{font-size:1.5rem!important;margin-bottom:.35em!important}
.pk-t a{color:var(--inkt);text-decoration:none}
.pk-t a::after{content:"";position:absolute;inset:0;z-index:1}
.pk-body p{color:var(--grijs);font-size:.96rem;flex:1}
.pk-meta{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.87rem;color:var(--grijs);margin-bottom:14px}
.pk-meta li{display:flex;align-items:center;gap:6px}.pk-meta .ic{color:var(--wijn)}
.pk-more{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--wijn);font-size:.95rem}
.pk-more .ic{transition:transform .3s}.pk:hover .pk-more .ic{transform:translateX(5px)}

.pk-tile{padding:34px 30px;justify-content:center;background:linear-gradient(160deg,#fff,var(--blos))}
.pk-tile p{color:var(--grijs);font-size:.98rem;flex:0 0 auto}
.pk-tile-dark{background:radial-gradient(circle at 80% 10%,rgba(243,176,74,.25),transparent 50%),linear-gradient(160deg,var(--pruim),var(--nacht));color:var(--room)}
.pk-tile-dark .pk-t a{color:#fff}.pk-tile-dark p{color:rgba(255,248,244,.75)}.pk-tile-dark .pk-more{color:var(--kaars)}
.pk-tile-ic{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:var(--wijn);color:var(--kaars);margin-bottom:22px}.pk-tile-ic .ic{width:34px;height:34px}
.pk-tile .pk-t{font-size:1.9rem!important}
/* Keuzehulp */
.quiz{background:#fff;border-radius:24px;box-shadow:var(--sh2);padding:clamp(24px,4vw,44px);position:relative;overflow:hidden;min-height:340px}
.quiz-bar{height:5px;background:var(--blos);border-radius:3px;margin-bottom:28px;overflow:hidden}
.quiz-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--wijn),var(--kaars));transition:width .5s var(--ease)}
.quiz-q,.quiz-res{display:none}
.quiz-q.on,.quiz-res.on{display:block;animation:pageIn .6s var(--ease)}
.quiz-n{font-size:.8rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--wijn)}
.quiz h3{font-size:clamp(1.5rem,3vw,2rem);margin:.3em 0 .9em}
.quiz-opts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.quiz-o{border:2px solid var(--lijn);background:var(--room);border-radius:14px;padding:18px 20px;text-align:left;font-weight:600;font-size:1.02rem;color:var(--inkt);transition:.2s}
.quiz-o:hover{border-color:var(--wijn);background:#fff;transform:translateY(-2px);box-shadow:var(--sh)}
@media (max-width:560px){.quiz-opts{grid-template-columns:1fr}}
.qb{display:grid;grid-template-columns:170px 1fr;gap:24px;align-items:center;margin:16px 0 20px;text-decoration:none;color:inherit}
.qb img{border-radius:14px;box-shadow:var(--sh)}
.qb h3{margin:.2em 0 .3em}.qb p{color:var(--grijs);margin-bottom:.8em}
@media (max-width:560px){.qb{grid-template-columns:1fr}.qb img{max-width:220px}}
.quiz-alt{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.quiz-alt a{border:1.5px solid var(--lijn);border-radius:999px;padding:.45em 1em;font-size:.92rem;text-decoration:none;color:var(--inkt)}.quiz-alt a:hover{border-color:var(--wijn);color:var(--wijn)}

/* Split + features */
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.split-rev .split-art{order:-1}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:40px}.split-rev .split-art{order:0}}
.feat{list-style:none;display:grid;gap:22px}
.feat li{display:flex;gap:18px}
.feat-ic{flex:none;width:52px;height:52px;border-radius:16px;background:var(--blos);color:var(--wijn);display:grid;place-items:center}.feat-ic .ic{width:28px;height:28px}
.feat h3{font:600 1.08rem/1.3 var(--f2);margin:4px 0 4px}.feat p{color:var(--grijs);font-size:.96rem;margin:0}

/* Telefoon */
.phone{width:300px;margin:0 auto;aspect-ratio:9/18.5;background:#15091c;border-radius:44px;padding:12px;box-shadow:var(--sh2),0 0 0 2px #3a2a44 inset;position:relative;transform:rotate(-3deg);transition:transform .6s var(--ease)}
.phone:hover{transform:rotate(0) scale(1.02)}
.phone-notch{position:absolute;top:18px;left:50%;width:90px;height:22px;margin-left:-45px;background:#15091c;border-radius:12px;z-index:2}
.phone-scr{background:var(--room);border-radius:34px;height:100%;overflow:hidden;font-size:.82rem}
.pm-top{color:#fff;padding:52px 18px 16px}.pm-top small{display:block;color:var(--kaars);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}.pm-top strong{font:1.35rem/1.1 var(--f1)}
.pm-tabs{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid var(--lijn);overflow:hidden}
.pm-tabs span{padding:4px 10px;border-radius:999px;font-weight:600;font-size:.72rem;white-space:nowrap;color:var(--grijs)}.pm-tabs .on{background:var(--inkt);color:#fff}
.dt .pm-list{list-style:none;padding:8px 16px}
.pm-list li{display:flex;gap:10px;padding:8px 0;border-bottom:1px dashed var(--lijn);opacity:0;transform:translateX(-8px);transition:.6s var(--ease) var(--d)}
.split-art.in .pm-list li{opacity:1;transform:none}
.pm-list time{font-weight:700;color:var(--wijn)}
.pm-check{display:flex;align-items:center;gap:10px;margin:6px 16px;padding:10px;background:#fff;border-radius:10px;box-shadow:0 4px 12px -8px rgba(0,0,0,.3)}
.pm-box{flex:none;width:18px;height:18px;border:2px solid var(--wijn);border-radius:5px;display:grid;place-items:center}
.pm-check.done .pm-box{background:var(--wijn);color:#fff}.pm-check.done span:last-child{text-decoration:line-through;color:var(--grijs)}
.pm-box .ic{width:12px;height:12px;stroke-width:5}

/* Stappen */
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
.step{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:28px 24px;position:relative;transition:transform .4s var(--ease),background .3s,opacity .8s var(--ease) var(--d,0ms)}
.step:hover{background:rgba(255,255,255,.09);transform:translateY(-6px)}
.step-n{position:absolute;top:18px;right:22px;font:3rem/1 var(--f1);color:rgba(243,176,74,.28)}
.step-ic{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--wijn);color:#fff;margin-bottom:18px}.step-ic .ic{width:28px;height:28px}
.step h3{font-size:1.3rem}.step p{opacity:.78;font-size:.96rem;margin:0}
.art .steps,.sec:not(.sec-dark) .steps{grid-template-columns:repeat(2,1fr)}
.art .step,.sec:not(.sec-dark) .step{background:#fff;border-color:var(--lijn);box-shadow:var(--sh)}
.art .step-n{color:rgba(142,30,72,.18)}
@media (max-width:980px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.steps,.art .steps{grid-template-columns:1fr}}

/* Kaartdeck */
.deck{max-width:420px;margin:0 auto;user-select:none}
.deck-stack{position:relative;aspect-ratio:4/3.1;perspective:1400px}
.dcard{position:absolute;inset:0;border-radius:22px;border:0;padding:0;background:transparent}
.dcard-b,.dcard-m{background:var(--pruim);box-shadow:var(--sh)}
.dcard-b{transform:rotate(-6deg) translate(-10px,8px);opacity:.45}
.dcard-m{transform:rotate(3deg) translate(8px,4px);opacity:.7}
.dcard-f{cursor:pointer;z-index:2;transition:transform .5s var(--ease),opacity .4s}
.dcard-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .7s var(--ease);display:block}
.dcard-f.flipped .dcard-in{transform:rotateY(180deg)}
.dcard-front,.dcard-back{position:absolute;inset:0;border-radius:22px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;box-shadow:var(--sh2)}
.dcard-front{background:linear-gradient(155deg,#fff,#FBEDE7);color:var(--inkt)}
.dcard-front::before,.dcard-back::before{content:"";position:absolute;inset:10px;border:1px solid rgba(142,30,72,.25);border-radius:14px;pointer-events:none}
.dcard-back{background:linear-gradient(155deg,var(--wijn),#5E1231);color:#fff;transform:rotateY(180deg)}
.dc-g,.dcard-back small{position:absolute;top:22px;left:0;right:0;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--wijn)}
.dcard-back small{color:var(--kaars)}
.dc-q,.dc-a{font:clamp(1.15rem,2.4vw,1.5rem)/1.3 var(--f1)}
.dc-hint{position:absolute;bottom:20px;left:0;right:0;font-size:.78rem;color:var(--grijs)}
.dcard-f.out{transform:translateX(120%) rotate(18deg);opacity:0}
.dcard-f.outl{transform:translateX(-120%) rotate(-18deg);opacity:0}
.dcard-f.inn{animation:cardIn .5s var(--ease)}
@keyframes cardIn{from{transform:translateY(20px) scale(.94);opacity:0}to{transform:none;opacity:1}}
.deck-ctl{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px}
.deck-n{min-width:70px;text-align:center;font-weight:600;color:var(--grijs);font-size:.92rem}
.sec-dark .btn-ic{background:transparent;color:var(--room);border-color:rgba(255,255,255,.2)}

/* Gidsen */
.grid-gd{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;margin-bottom:34px}
.gd{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);padding:28px;text-decoration:none;color:var(--inkt)!important;box-shadow:var(--sh);transition:transform .4s var(--ease),box-shadow .4s,opacity .8s var(--ease) var(--d,0ms);border:1px solid transparent}
.gd:hover{transform:translateY(-6px);border-color:var(--blos);box-shadow:0 26px 50px -24px rgba(42,26,46,.4)}
.gd-ic{width:56px;height:56px;border-radius:18px;background:linear-gradient(140deg,var(--wijn),var(--pruim));color:var(--kaars);display:grid;place-items:center;margin-bottom:18px}.gd-ic .ic{width:30px;height:30px}
.gd h3{font-size:1.4rem}.gd p{color:var(--grijs);font-size:.95rem;flex:1}
.gd-more{font-weight:600;color:var(--wijn);display:inline-flex;align-items:center;gap:8px}

/* Tekst + FAQ */
.two{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
@media (max-width:900px){.two{grid-template-columns:1fr;gap:40px}}
.seo-txt h2{font-size:clamp(1.5rem,2.6vw,2rem)}
.seo-txt p{color:#4d3d50}.seo-txt>div+div{margin-top:1.8em}
.faq details{border-bottom:1px solid var(--lijn)}
.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;cursor:pointer;font-weight:600;font-size:1.05rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:none;width:30px;height:30px;border-radius:50%;background:var(--blos);position:relative;transition:.3s}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:9px;right:9px;top:14px;height:2px;background:var(--wijn);transition:transform .3s}
.faq summary i::after{transform:rotate(90deg)}
.faq details[open] summary i{background:var(--wijn)}
.faq details[open] summary i::before,.faq details[open] summary i::after{background:#fff;transform:rotate(180deg)}
.faq-a{padding:0 0 20px;color:#4d3d50;animation:pageIn .5s var(--ease)}
.faq-a p{margin:0}
.link-wa{display:inline-flex;align-items:center;gap:8px;font-weight:600;margin-top:22px;color:#178a45!important}

/* Jadagames */
.jg{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}@media (max-width:760px){.jg{grid-template-columns:1fr}}
.jg-i{display:block;padding:18px 20px;border-radius:14px;background:#fff;text-decoration:none;color:var(--inkt)!important;border:1px solid var(--lijn);transition:transform .3s var(--ease),border-color .3s,opacity .8s var(--ease) var(--d,0ms)}
.jg-i:hover{transform:translateY(-4px);border-color:var(--wijn)}
.jg-i strong{display:block;overflow-wrap:anywhere;font:1.1rem var(--f1);color:var(--wijn)}.jg-i span{font-size:.88rem;color:var(--grijs)}

/* CTA + footer */
.cta-band{background:linear-gradient(135deg,var(--wijn),#5A1030 60%,var(--pruim));color:#fff;padding:90px 0;text-align:center;position:relative;overflow:hidden}
.cta-band::before{content:"";position:absolute;inset:-50%;background:radial-gradient(circle at 50% 40%,rgba(243,176,74,.28),transparent 45%);animation:glow 5s ease-in-out infinite}
.cta-in{position:relative;max-width:680px}
.cta-in p{opacity:.85;font-size:1.1rem;margin-bottom:28px}
.ft{background:var(--nacht);color:rgba(255,248,244,.78);padding:80px 0 0;font-size:.94rem}
.ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px}
.ft .logo{color:#fff!important;margin-bottom:16px}
.ft h3{font:600 .82rem var(--f2);letter-spacing:.14em;text-transform:uppercase;color:var(--kaars);margin-bottom:14px}
.ft ul{list-style:none;display:grid;gap:7px}
.ft a{color:rgba(255,248,244,.78);text-decoration:none;transition:color .2s}.ft a:hover{color:var(--kaars)}
.ft .btn-ghost-light{color:var(--room)}
.ft-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid rgba(255,255,255,.08);margin-top:60px;padding:24px 0 30px;font-size:.85rem;opacity:.75}
@media (max-width:900px){.ft-grid{grid-template-columns:1fr 1fr}.ft-brand{grid-column:1/-1}}
@media (max-width:520px){.ft-grid{grid-template-columns:1fr}}
.scroll-top{position:fixed;left:20px;bottom:20px;z-index:90;opacity:0;visibility:hidden;transform:translateY(10px);transition:.3s}
.scroll-top.on{opacity:1;visibility:visible;transform:none}
.scroll-top button{width:46px;height:46px;border-radius:50%;border:0;background:var(--inkt);color:#fff;display:grid;place-items:center;box-shadow:var(--sh)}
.scroll-top .ic{transform:rotate(-90deg)}

/* Pagina-hero */
.phero{margin-top:-74px;padding:140px 0 80px}
.phero h1{max-width:18em}
.phero .lead a{color:var(--kaars)}
.phero-light{background:var(--blos);color:var(--inkt);margin-top:0;padding:60px 0 40px}
.phero-light .crumbs a{color:var(--grijs)}
.phero-sm{padding:40px 0 20px}.phero-sm h1{font-size:clamp(2rem,4vw,2.8rem)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem;margin-bottom:22px;opacity:.8}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}
.crumbs a{color:inherit;text-decoration:none}.crumbs a:hover{color:var(--kaars)}
.art-meta{display:flex;align-items:center;gap:8px;font-size:.92rem;opacity:.75}
.grid-cat{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.cat{background:#fff;border-radius:var(--r);padding:24px;text-decoration:none;color:var(--inkt)!important;border:1px solid var(--lijn);display:flex;flex-direction:column;gap:6px;transition:transform .35s var(--ease),border-color .3s,opacity .8s var(--ease) var(--d,0ms)}
.cat:hover{transform:translateY(-5px);border-color:var(--wijn)}
.cat strong{font:1.3rem var(--f1)}.cat span{color:var(--grijs);font-size:.94rem;flex:1}.cat em{font-style:normal;font-weight:600;color:var(--wijn);font-size:.88rem}
.pills{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.pill{padding:.6em 1.2em;border-radius:999px;background:#fff;border:1.5px solid var(--lijn);text-decoration:none;color:var(--inkt)!important;font-weight:500;transition:.2s}.pill:hover{border-color:var(--wijn)}
.pill-dark{background:var(--inkt);color:#fff!important;border-color:var(--inkt)}

/* Product */
.prod{margin-top:-74px;padding:130px 0 90px;background:radial-gradient(ellipse at 20% 30%,color-mix(in srgb,var(--pk-bg) 80%,#000 0%),var(--nacht) 70%)}
.prod-in{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:start}
.prod-img{position:sticky;top:100px;perspective:1200px}
.tilt{border-radius:22px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.08);transition:transform .3s ease-out;transform-style:preserve-3d}
.prod-txt h1{font-size:clamp(2.4rem,4.8vw,3.8rem)}
.chips-meta{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:26px 0}
.chips-meta li{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 14px}
.chips-meta .ic{color:var(--pk-ac,var(--kaars));width:26px;height:26px}
.chips-meta small{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;opacity:.65}
.chips-sm{display:flex;flex-wrap:wrap;margin:18px 0}.chips-sm li{padding:8px 12px;font-size:.9rem}.chips-sm .ic{width:20px;height:20px}
.prod-buy{display:flex;flex-wrap:wrap;align-items:center;gap:22px;padding:22px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.price strong{display:block;font:2.4rem/1 var(--f1);color:var(--kaars)}.price small{opacity:.7;font-size:.85rem}
.buy{margin:0}
.assure{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px;font-size:.92rem;opacity:.85}
.assure li{display:flex;align-items:center;gap:8px}.assure .ic{color:var(--kaars)}
@media (max-width:900px){.prod-in{grid-template-columns:1fr;gap:36px}.prod-img{position:relative;top:0;max-width:440px}}
.prose p{font-size:1.06rem;color:#4d3d50}
.surprise{display:flex;gap:14px;align-items:flex-start;background:var(--blos);border-radius:var(--rs);padding:18px 20px;margin-top:22px}
.surprise .ic{flex:none;color:var(--wijn);width:28px;height:28px}
.inside{background:var(--nacht);color:var(--room);border-radius:var(--r);padding:32px;position:sticky;top:100px}
.inside h2{font-size:1.6rem;display:flex;align-items:center;gap:10px}.inside h2 .ic{color:var(--kaars)}
.inside ul{list-style:none;display:grid;gap:10px}
.inside li{padding-left:24px;position:relative;font-size:.97rem}
.inside li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--kaars);box-shadow:0 0 10px var(--kaars)}
.timeline{list-style:none;max-width:860px;margin:0 auto;position:relative}
.timeline::before{content:"";position:absolute;left:84px;top:6px;bottom:6px;width:2px;background:linear-gradient(var(--pk-ac,var(--kaars)),transparent)}
.timeline li{display:grid;grid-template-columns:70px 1fr;gap:42px;padding:0 0 28px;position:relative}
.timeline li::before{content:"";position:absolute;left:79px;top:8px;width:12px;height:12px;border-radius:50%;background:var(--pk-ac,var(--kaars));box-shadow:0 0 0 5px rgba(243,176,74,.18)}
.timeline time{font:1.35rem var(--f1);color:var(--pk-ac,var(--kaars));text-align:right}
.timeline h3{margin-bottom:.2em}.timeline p{opacity:.78;margin:0}
.timeline-light::before{background:linear-gradient(var(--wijn),transparent)}
.timeline-light li::before{background:var(--wijn);box-shadow:0 0 0 5px var(--blos)}
.timeline-light time{color:var(--wijn)}
@media (max-width:560px){.timeline::before{left:10px}.timeline li{grid-template-columns:1fr;gap:4px;padding-left:36px}.timeline li::before{left:5px}.timeline time{text-align:left}}
.menu-sheet{max-width:900px;margin:0 auto;background:linear-gradient(160deg,#FFFDF9,#F7EBE2);border-radius:18px;padding:clamp(26px,5vw,56px);display:grid;grid-template-columns:1fr 1fr;gap:50px;box-shadow:var(--sh2);position:relative}
.menu-sheet::before{content:"";position:absolute;inset:12px;border:1px solid rgba(142,30,72,.25);border-radius:12px;pointer-events:none}
.ms-col h3{display:flex;align-items:center;gap:10px;color:var(--wijn);font-size:1.6rem}
.ms-col ul{list-style:none}
.ms-col li{padding:12px 0;border-bottom:1px dashed rgba(42,26,46,.18)}
.ms-col small{display:block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--wijn);font-weight:600}
.ms-col strong{font:1.15rem/1.3 var(--f1);font-weight:400}.ms-col em{display:block;font-style:normal;font-size:.85rem;color:var(--grijs)}
@media (max-width:700px){.menu-sheet{grid-template-columns:1fr;gap:20px}}
.games{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-bottom:60px}
.game{background:#fff;border:1px solid var(--lijn);border-radius:var(--r);padding:26px;transition:transform .35s var(--ease),opacity .8s var(--ease) var(--d,0ms)}
.game:hover{transform:translateY(-5px)}
.game-ic{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--blos);color:var(--wijn);margin-bottom:14px}
.game-ic .ic{width:26px;height:26px}.game-meta{font-size:.85rem;font-weight:600;color:var(--wijn)}
.game p:last-child{color:var(--grijs);font-size:.95rem;margin:0}
.demo-row{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;max-width:900px;margin:0 auto}
@media (max-width:760px){.demo-row{grid-template-columns:1fr}}
.mood{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mood-i{background:#fff;border-radius:var(--r);padding:28px;box-shadow:var(--sh);transition:opacity .8s var(--ease) var(--d,0ms),transform .8s var(--ease) var(--d,0ms)}
.mood-i>span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--nacht);color:var(--kaars);margin-bottom:16px}.mood-i>span .ic{width:28px;height:28px}
.mood-i h3{font-size:1.3rem}.mood-i ul{list-style:none;display:grid;gap:8px}.mood-i li,.mood-i p{font-size:.96rem;color:#4d3d50}
.mood-i>ul li{padding-left:18px;position:relative}.mood-i>ul li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--wijn)}
@media (max-width:900px){.mood{grid-template-columns:1fr}}
.buybar{position:fixed;left:0;right:0;bottom:0;z-index:95;background:rgba(32,18,43,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;display:none;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));transform:translateY(110%);transition:transform .35s var(--ease)}
.buybar.on{transform:none}
.buybar strong{display:block;font:1.05rem var(--f1)}.buybar span{color:var(--kaars);font-weight:700}
.buybar .btn{padding:.75em 1.2em;font-size:.95rem}
@media (max-width:900px){.buybar{display:flex}}

/* Gids */
.art-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:start}
@media (max-width:980px){.art-grid{grid-template-columns:1fr}}
.art{font-size:1.08rem}
.art p,.art li{color:#3F3042}
.art-intro{font-size:1.22rem;line-height:1.6;color:var(--inkt)!important}
.art h2{font-size:clamp(1.6rem,2.8vw,2.1rem);margin-top:1.6em}
.art-sec:first-child h2{margin-top:0}
.art-list{padding-left:1.4em!important;display:grid;gap:8px;margin-bottom:1.2em!important}
.art ol.art-list li::marker{color:var(--wijn);font-weight:700}
.art ul.art-list li::marker{color:var(--wijn)}
.toc{background:#fff;border:1px solid var(--lijn);border-radius:var(--rs);padding:22px 26px;margin:26px 0}
.toc strong{display:block;margin-bottom:8px}.toc ol{padding-left:1.2em;display:grid;gap:4px}.toc a{text-decoration:none}
.inline-cta{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:center;background:var(--nacht);color:var(--room);border-radius:var(--r);padding:22px;margin:40px 0}
.inline-cta img{border-radius:12px;width:120px;height:120px}
.inline-cta strong{display:block;font:1.4rem var(--f1)}.inline-cta p{color:rgba(255,248,244,.75)!important;font-size:.96rem;margin:.3em 0 .8em}
.inline-cta .kicker{color:var(--kaars);margin-bottom:.4em}
@media (max-width:520px){.inline-cta{grid-template-columns:1fr}}
.art-outro{border-left:4px solid var(--kaars);padding:6px 0 6px 22px;margin-top:40px;font-size:1.1rem}
.art-side{position:sticky;top:100px}
.side-box{background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--sh)}
.side-pk{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--lijn);text-decoration:none;color:var(--inkt)!important}
.side-pk img{width:60px;height:60px;border-radius:10px}
.side-pk strong{display:block;font:1.02rem var(--f1)}.side-pk em{font-style:normal;color:var(--wijn);font-weight:600;font-size:.9rem}
.side-box .btn{margin-top:16px;width:100%}
.wa-box{display:flex;gap:20px;align-items:center;background:#E7F7EC;border-radius:var(--r);padding:26px;margin-bottom:30px}
.wa-box>span{flex:none;width:64px;height:64px;border-radius:50%;background:#1FA855;color:#fff;display:grid;place-items:center}.wa-box>span .ic{width:34px;height:34px}
.wa-box h2{font-size:1.6rem;margin:0 0 .2em}.wa-box p{margin:0 0 .8em}

/* WooCommerce */
.wc-wrap{max-width:1000px}
.co-steps{list-style:none;display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;font-size:.88rem}
.co-steps li{padding:.4em 1em;border-radius:999px;background:#fff;color:var(--grijs)}.co-steps .done{color:var(--wijn)}.co-steps .on{background:var(--inkt);color:#fff}
.co-note{display:flex;gap:14px;align-items:center;background:var(--blos);padding:16px 20px;border-radius:var(--rs);margin-bottom:26px}.co-note .ic{color:var(--wijn);width:30px;height:30px}.co-note p{margin:0}
.dt .woocommerce form .form-row{margin:0 0 16px;padding:0}
.dt .woocommerce form .form-row label{font-weight:600;font-size:.92rem;margin-bottom:6px;display:block}
.dt .woocommerce input.input-text,.dt .woocommerce select,.dt .woocommerce textarea,.dt .select2-container .select2-selection--single{width:100%;border:1.5px solid var(--lijn);border-radius:12px;padding:.8em 1em;font:inherit;background:#fff;min-height:50px}
.dt .select2-container .select2-selection--single .select2-selection__rendered{line-height:28px;padding:0}
.dt .select2-container .select2-selection--single .select2-selection__arrow{top:11px;right:10px}
.dt .woocommerce input.input-text:focus{border-color:var(--wijn);outline:0;box-shadow:0 0 0 4px rgba(142,30,72,.12)}
.dt .woocommerce .col2-set,.dt .woocommerce-checkout #customer_details{width:100%}
.dt .woocommerce-checkout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.dt .woocommerce-checkout>.woocommerce-NoticeGroup,.dt .woocommerce-checkout>.co-note{grid-column:1/-1}
.dt .woocommerce-checkout #customer_details .col-1,.dt .woocommerce-checkout #customer_details .col-2{width:100%;float:none}
.dt .woocommerce-checkout #order_review_heading{display:none}
.dt #order_review{background:#fff;border-radius:var(--r);padding:26px;box-shadow:var(--sh)}
.dt .woocommerce table.shop_table{border:0;border-collapse:collapse;width:100%;margin-bottom:20px}
.dt .woocommerce table.shop_table th,.dt .woocommerce table.shop_table td{border:0;border-bottom:1px solid var(--lijn);padding:12px 6px;text-align:left}
.dt .woocommerce-checkout-payment{background:var(--room)!important;border-radius:14px!important}
.dt .woocommerce #payment #place_order,.dt .woocommerce button.button,.dt .woocommerce a.button{background:var(--wijn);color:#fff;border:0;border-radius:999px;padding:1em 1.6em;font-weight:600;font-size:1rem;cursor:pointer;text-decoration:none;display:inline-block}
.dt .woocommerce #payment #place_order{width:100%;font-size:1.08rem;padding:1.1em}
.dt .woocommerce button.button:hover,.dt .woocommerce a.button:hover{background:var(--wijn2)}
.dt .woocommerce-form-coupon-toggle{grid-column:1/-1}
.dt .woocommerce-info,.dt .woocommerce-message,.dt .woocommerce-error{list-style:none;background:#fff;border-left:4px solid var(--wijn);padding:14px 18px 14px 50px;position:relative;border-radius:8px;margin:0 0 20px}
.dt .woocommerce-error{border-color:#b32d2e}
@media (max-width:860px){.dt .woocommerce-checkout{grid-template-columns:1fr;gap:20px}}
.dt .woocommerce-MyAccount-navigation ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.dt .woocommerce-MyAccount-navigation a{display:block;padding:.5em 1em;border-radius:999px;background:#fff;text-decoration:none;color:var(--inkt)}
.dt .woocommerce-MyAccount-navigation .is-active a{background:var(--inkt);color:#fff}
.dt .woocommerce-order-overview{list-style:none;display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.dt .woocommerce-order-overview li{background:#fff;border-radius:12px;padding:12px 16px;font-size:.88rem}
.dt-order{margin-bottom:30px}
.dt-order-pk{display:grid;grid-template-columns:200px 1fr;gap:30px;align-items:center;background:var(--pk-bg,var(--nacht));color:var(--room);border-radius:22px;padding:26px;margin-bottom:16px;box-shadow:var(--sh2)}
.dt-order-pk img{border-radius:14px;width:200px;height:200px}
.dt-order-pk h2{color:#fff;font-size:2rem}.dt-order-pk p{opacity:.85}
@media (max-width:640px){.dt-order-pk{grid-template-columns:1fr}.dt-order-pk img{width:140px;height:140px}}
.dt-order-wait{display:flex;gap:18px;background:#fff;border-radius:var(--r);padding:24px;box-shadow:var(--sh)}.dt-order-wait .ic{width:36px;height:36px;color:var(--wijn)}

/* Date-pagina */
.dt-date{background:var(--room)}
.dp-preview{background:var(--kaars);color:var(--nacht);text-align:center;font-size:.88rem;font-weight:600;padding:8px}
.dp-hero{padding:26px 0 40px;background:radial-gradient(ellipse at 20% 0%,var(--pk-bg),var(--nacht) 75%)}
.dp-head{display:flex;gap:22px;align-items:center;margin-top:34px}
.dp-ic{flex:none;width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;color:var(--pk-ac,var(--kaars))}.dp-ic .ic{width:46px;height:46px}
.dp-head h1{font-size:clamp(2.1rem,5vw,3.4rem);margin:0 0 .15em}.dp-head p{opacity:.8;margin:0;max-width:40em}
.dp-head .kicker{margin-bottom:.5em}
@media (max-width:560px){.dp-head{flex-direction:column;align-items:flex-start;gap:14px}.dp-ic{width:64px;height:64px}}
.dp-actions{display:flex;flex-wrap:wrap;gap:10px}
.dp-tabs{position:sticky;top:0;z-index:50;background:rgba(255,248,244,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--lijn)}
.admin-bar .dp-tabs{top:32px}@media (max-width:782px){.admin-bar .dp-tabs{top:0}}
.dp-tabs-in{display:flex;gap:6px;overflow-x:auto;padding:10px 0;scrollbar-width:none}
.dp-tabs-in::-webkit-scrollbar{display:none}
.dp-tabs button{flex:none;display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--grijs);border-radius:999px;padding:.6em 1.05em;font-weight:600;font-size:.95rem;transition:.2s}
.dp-tabs button:hover{color:var(--wijn);background:rgba(142,30,72,.07)}
.dp-tabs button[aria-selected=true]{background:var(--inkt);color:#fff}
.dp-body{padding:40px 0 70px;max-width:980px}
.dp-panel{animation:pageIn .5s var(--ease)}
.dp-panel[hidden]{display:none}
.dp-h{font-size:clamp(1.7rem,3.2vw,2.3rem)!important;margin:10px 0 24px!important}
.dp-h:not(:first-child){margin-top:50px!important}
.prep{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.prep-b,.shop-b{background:#fff;border-radius:var(--r);padding:22px 24px;box-shadow:var(--sh)}
.prep-b h3,.shop-b h3{font-size:1.2rem;color:var(--wijn)}
.checks{list-style:none;display:grid;gap:4px}
.ck{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:6px 4px;border-radius:8px;transition:background .2s}
.ck:hover{background:rgba(142,30,72,.04)}
.ck input{position:absolute;opacity:0;pointer-events:none}
.ck-box{flex:none;width:22px;height:22px;border:2px solid var(--wijn);border-radius:7px;display:grid;place-items:center;margin-top:2px;transition:.25s var(--ease);color:#fff}
.ck-box .ic{width:14px;height:14px;stroke-width:5;transform:scale(0);transition:transform .25s var(--ease)}
.ck input:checked+.ck-box{background:var(--wijn)}
.ck input:checked+.ck-box .ic{transform:scale(1)}
.ck input:checked~.ck-t{text-decoration:line-through;color:#A7959F}
.ck input:focus-visible+.ck-box{outline:3px solid var(--kaars);outline-offset:2px}
.progress{background:var(--nacht);color:#fff;border-radius:var(--r);padding:20px 24px;margin-bottom:22px;position:sticky;top:64px;z-index:5}
.progress-bar{height:10px;background:rgba(255,255,255,.12);border-radius:6px;overflow:hidden;margin-bottom:10px}
.progress-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--kaars),#FFD58A);border-radius:6px;transition:width .5s var(--ease)}
.progress p{margin:0;font-size:.95rem}.progress-n{color:var(--kaars)}
.progress.done .progress-bar span{background:#6BE39A}
.shop-cols{columns:2 320px;column-gap:18px}
.shop-b{break-inside:avoid;margin-bottom:18px}
.dp-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.rc{background:#fff;border-radius:var(--r);box-shadow:var(--sh);margin-bottom:26px;overflow:hidden}
.rc header{padding:24px 28px 18px;border-bottom:1px solid var(--lijn);background:linear-gradient(120deg,#fff,var(--blos))}
.rc header small{font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--wijn)}
.rc header h3{font-size:1.7rem;margin:.2em 0 .2em}
.rc-time{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;color:var(--grijs)}
.rc-body{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;padding:24px 28px 28px}
.rc h4{font:600 .82rem var(--f2);letter-spacing:.12em;text-transform:uppercase;color:var(--grijs);margin-bottom:10px}
.rc-steps ol{counter-reset:st;list-style:none;display:grid;gap:14px}
.rc-steps li{counter-increment:st;position:relative;padding-left:44px}
.rc-steps li::before{content:counter(st);position:absolute;left:0;top:-2px;width:30px;height:30px;border-radius:50%;background:var(--nacht);color:var(--kaars);display:grid;place-items:center;font-weight:700;font-size:.88rem}
.rc-tip{display:flex;gap:10px;background:#FFF4DF;border-radius:12px;padding:14px 16px;margin:20px 0 0;font-size:.95rem}.rc-tip .ic{flex:none;color:#B77A12}
@media (max-width:720px){.rc-body{grid-template-columns:1fr;padding:20px}.rc header{padding:20px}}
.drinks .rc header{background:linear-gradient(120deg,#fff,#FFF1D9)}
.gm{background:#fff;border-radius:var(--r);box-shadow:var(--sh);padding:28px;margin-bottom:26px}
.gm header{display:flex;gap:16px;align-items:center;margin-bottom:18px}
.gm-ic{flex:none;width:54px;height:54px;border-radius:16px;background:var(--nacht);color:var(--kaars);display:grid;place-items:center}.gm-ic .ic{width:30px;height:30px}
.gm h3{font-size:1.6rem;margin:0}.gm header p{margin:0;font-size:.9rem;color:var(--grijs)}
.gm-how{padding-left:1.3em!important;display:grid;gap:8px;margin-bottom:26px!important;color:#3F3042}
.gm-how li::marker{color:var(--wijn);font-weight:700}
.bingo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:520px;margin:0 auto 14px}
.bingo-grid button{aspect-ratio:1/1;border:2px solid var(--lijn);background:var(--room);border-radius:14px;padding:8px;font-size:clamp(.72rem,2.2vw,.92rem);line-height:1.25;color:var(--inkt);transition:.25s var(--ease)}
.bingo-grid button.on{background:var(--wijn);border-color:var(--wijn);color:#fff;transform:scale(.96)}
.bingo-grid button.win{background:var(--kaars);border-color:var(--kaars);color:var(--nacht);animation:pulse 1s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.04)}}
.bingo{text-align:center}.bingo-msg{min-height:1.6em;font:1.4rem var(--f1);color:var(--wijn);margin-bottom:10px}
.rl{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}
.rl-stage{position:relative;max-width:340px;margin:0 auto;width:100%}
.rl-wheel{width:100%;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.rl-rot{transform-origin:0 0;transition:transform 5s cubic-bezier(.12,.7,.1,1)}
.rl-res{font:1.4rem/1.3 var(--f1);min-height:3em}.rl-res b{display:inline-block;min-width:1.8em;text-align:center;border-radius:8px;color:#fff;padding:0 .3em;margin-right:.2em}
.rl-hist{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.rl-hist li{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:.8rem;font-weight:700}
@media (max-width:640px){.rl{grid-template-columns:1fr}}
.pcards-row{display:flex;flex-wrap:wrap;gap:10px;min-height:120px}
.pc{width:78px;height:112px;border-radius:10px;background:#fff;border:1px solid var(--lijn);box-shadow:var(--sh);display:flex;flex-direction:column;justify-content:space-between;padding:8px;font:700 1.2rem/1 var(--f2);animation:deal .45s var(--ease)}
.pc span:last-child{align-self:flex-end;transform:rotate(180deg)}
.pc.red{color:#A31F34}.pc.blk{color:var(--inkt)}
@keyframes deal{from{transform:translate(-40px,-20px) rotate(-12deg);opacity:0}to{transform:none;opacity:1}}
.pcards-left{font-size:.88rem;color:var(--grijs);margin-top:8px}
.mood-light .mood-i .checks{display:grid}
.invite{background:var(--nacht);color:var(--room);border-radius:22px;padding:clamp(24px,4vw,40px);position:relative;overflow:hidden}
.invite::before{content:"";position:absolute;inset:10px;border:1px solid rgba(243,176,74,.35);border-radius:16px;pointer-events:none}
.invite-t{font:clamp(1.2rem,2.4vw,1.5rem)/1.45 var(--f1);position:relative}
.invite-help{font-size:.88rem;opacity:.7}
.invite .btn-line{border-color:rgba(255,255,255,.4);color:#fff}
.tips{list-style:none;counter-reset:tp;display:grid;gap:14px}
.tips li{counter-increment:tp;background:#fff;border-radius:14px;padding:18px 20px 18px 66px;position:relative;box-shadow:var(--sh)}
.tips li::before{content:counter(tp);position:absolute;left:18px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--blos);color:var(--wijn);display:grid;place-items:center;font:1.1rem var(--f1)}
.dp-foot{background:var(--nacht);color:rgba(255,248,244,.75);padding:40px 0 60px;font-size:.92rem}
.dp-foot a{color:var(--kaars)}.dp-link span{word-break:break-all;color:var(--room)}
.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);background:var(--inkt);color:#fff;padding:12px 20px;border-radius:999px;font-size:.92rem;opacity:0;transition:.3s;z-index:300;pointer-events:none}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* Print */
@media print{
@page{margin:14mm}
body.dt{background:#fff;font-size:11pt}
.hd,.ft,.cta-band,.dp-tabs,.dp-actions,.dp-btns,.buybar,.scroll-top,.hero-bg,.deck-ctl,[class^="elfsight"],.dp-foot,.dp-preview,.rl,.bingo,.pcards{display:none!important}
.dp-panel[hidden]{display:block!important}
.dp-hero{background:#fff!important;color:var(--inkt);padding:0}
.dp-ic{display:none}
.rc,.gm,.prep-b,.shop-b,.tips li,.invite{box-shadow:none!important;border:1px solid #ddd;break-inside:avoid}
.invite{background:#fff;color:var(--inkt)}
.progress{display:none}
.deck{display:none}
}
.dp .wrap{width:min(980px,100% - 40px)}
.wc-wrap h2{font-size:1.6rem}.wc-wrap h3{font-size:1.3rem}.dt .woocommerce-info::before,.dt .woocommerce-message::before{color:var(--wijn);left:18px;top:14px}
@media (max-width:900px){.inside,.art-side{position:static}}
@media (max-width:520px){.hero-note{display:none}.menu-card{width:74%;right:2%}.candle{left:0;bottom:30px}}
.ft-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;border-top:1px solid rgba(255,255,255,.08);padding:18px 0 calc(26px + env(safe-area-inset-bottom));font-size:.8rem;opacity:.7}
.ft-legal p{margin:0}.ft-legal nav{display:flex;flex-wrap:wrap;gap:4px 16px}.ft-legal a{text-decoration:underline;text-underline-offset:2px}
.company{background:#fff;border:1px solid var(--lijn);border-radius:var(--r);padding:26px 28px;margin:40px 0 10px;box-shadow:var(--sh)}
.company h2{font-size:1.6rem!important;margin:0 0 14px!important}
.company dl{display:grid;grid-template-columns:150px 1fr;gap:8px 18px;margin:0;font-size:.98rem}.company dt{font-weight:600}.company dd{margin:0;color:#4d3d50}
@media (max-width:560px){.company{padding:22px}.company dl{grid-template-columns:1fr;gap:0}.company dd{margin-bottom:10px}}
.wform{border:1.5px dashed var(--lijn);border-radius:var(--rs);background:#fff;padding:24px 26px;margin:6px 0 14px}.wform p{margin:0 0 .5em}.wform-l{display:block;border-bottom:1px solid #cdb9c0;height:1.6em;margin:0 0 16px}
@media (max-width:900px){.ft-legal{padding-bottom:calc(90px + env(safe-area-inset-bottom))}}
