.kerst-campaign{--k-sec1:#ebe8db;--k-sec1-light:#f2eee1;--k-ink:#1f1e1b;--k-ink-soft:#5c574b;--k-gold:#b08d4f;--k-gold-soft:#c9ac72;--k-gold-deep:#8a6a33;--k-cream:#f4efe3;--k-bordeaux:#7c312b;--k-green-deep:#0c1d15;--k-line:#cdc6b2;--k-serif:var(--font-heading), Georgia, serif;--k-sans:var(--font-sans), "Helvetica Neue", Arial, sans-serif;background:var(--k-sec1);color:var(--k-ink);font-family:var(--k-sans)}.kerst-campaign .k-hero{background:radial-gradient(1100px 640px at 72% 26%, #c9ac7229, transparent 60%), radial-gradient(880px 660px at 74% 42%, #e8cf9217, transparent 62%), radial-gradient(700px 500px at 18% 88%, #7c312b24, transparent 65%), linear-gradient(160deg, #14281e 0%, var(--k-green-deep) 62%, #081209 100%);grid-template-columns:1.05fr 1fr;min-height:92vh;display:grid;position:relative;overflow:hidden}.kerst-campaign .k-dust,.kerst-campaign .k-dust2{pointer-events:none;position:absolute;inset:0;overflow:hidden}.kerst-campaign .k-dust:before{content:"";border-radius:50%;width:2px;height:2px;animation:46s linear infinite k-fall;position:absolute;top:-4px;left:0;box-shadow:4vw -92vh #c9ac7273,12vw -60vh #c9ac7266,18vw -88vh #f4efe352,26vw -35vh #c9ac7273,33vw -70vh #c9ac7259,41vw -15vh #f4efe34d,48vw -55vh #c9ac7273,55vw -80vh #c9ac7266,63vw -28vh #f4efe352,70vw -65vh #c9ac7266,78vw -10vh #c9ac7273,85vw -48vh #f4efe34d,92vw -75vh #c9ac7266,8vw -20vh #c9ac7259,96vw -30vh #f4efe34d,6vw 15vh #c9ac7273,20vw 40vh #f4efe34d,35vw 70vh #c9ac7266,45vw 25vh #c9ac7273,58vw 60vh #f4efe352,68vw 85vh #c9ac7259,80vw 35vh #c9ac7273,88vw 65vh #f4efe34d,95vw 12vh #c9ac7266,28vw 90vh #c9ac7259,50vw 95vh #f4efe34d,73vw 50vh #c9ac7266,10vw 78vh #c9ac7259,42vw 48vh #f4efe34d,64vw 8vh #c9ac7273,3vw -45vh #c9ac7266,16vw 5vh #f4efe34d,23vw -75vh #c9ac7259,38vw -95vh #f4efe352,52vw 18vh #c9ac7266,60vw -42vh #c9ac7259,75vw -88vh #f4efe34d,83vw 82vh #c9ac7266,90vw -5vh #c9ac7259,99vw 55vh #f4efe34d}.kerst-campaign .k-dust2:before{content:"";border-radius:50%;width:1.5px;height:1.5px;animation:72s linear infinite k-fall;position:absolute;top:-3px;left:0;box-shadow:9vw -50vh #f4efe347,24vw -82vh #c9ac724d,39vw -40vh #f4efe340,53vw -12vh #c9ac724d,67vw -72vh #f4efe347,82vw -25vh #c9ac724d,94vw -58vh #f4efe340,15vw 30vh #c9ac724d,31vw 62vh #f4efe340,47vw 88vh #c9ac7247,61vw 38vh #f4efe340,76vw 74vh #c9ac724d,90vw 18vh #f4efe340,5vw 55vh #c9ac7247,20vw -18vh #f4efe342,44vw -65vh #c9ac7247,58vw 8vh #f4efe340,71vw -35vh #c9ac724d,98vw 42vh #f4efe342}@keyframes k-fall{to{transform:translateY(100vh)}}.kerst-campaign .k-hero-txt{z-index:2;flex-direction:column;justify-content:center;padding:90px 24px 90px 56px;display:flex;position:relative}.kerst-campaign .k-overline{letter-spacing:.3em;text-transform:uppercase;color:var(--k-gold-soft);margin-bottom:20px;font-size:11px;font-weight:600}.kerst-campaign .k-hero-txt h1{font-family:var(--k-serif);color:var(--k-cream);margin-bottom:18px;font-size:clamp(38px,5vw,56px);font-weight:400;line-height:1.07}.kerst-campaign .k-sub{color:#f4efe3d1;max-width:44ch;margin-bottom:12px;font-size:16.5px;line-height:1.65}.kerst-campaign .k-prijs{letter-spacing:.08em;color:#f4efe399;margin-bottom:34px;font-size:12px}.kerst-campaign .k-cta-row{flex-wrap:wrap;align-items:center;gap:26px;display:flex}.kerst-campaign .k-cta-gold{background:var(--k-gold);color:#151310;letter-spacing:.16em;text-transform:uppercase;min-height:44px;padding:17px 30px;font-size:12px;font-weight:700;text-decoration:none;display:inline-block}.kerst-campaign .k-ghost{letter-spacing:.14em;text-transform:uppercase;color:var(--k-gold-soft);border-bottom:1px solid #c9ac7280;padding-bottom:4px;font-size:12px;text-decoration:none}.kerst-campaign .k-ballenwrap{z-index:2;justify-content:center;align-items:flex-start;padding:0 30px;display:flex;position:relative}.kerst-campaign .k-ballenwrap svg{width:100%;max-width:880px;height:auto;overflow:visible}.kerst-campaign .k-hang{transform-box:fill-box;transform-origin:50% 0;cursor:pointer;animation:5.8s ease-in-out infinite alternate k-sway}.kerst-campaign .k-hang:first-of-type{animation-duration:5.4s;animation-delay:-1.1s}.kerst-campaign .k-hang:nth-of-type(2){animation-duration:6.2s;animation-delay:-2.6s}.kerst-campaign .k-hang:nth-of-type(3){animation-duration:5.1s;animation-delay:-.4s}.kerst-campaign .k-hang:nth-of-type(4){animation-duration:6.6s;animation-delay:-3.2s}.kerst-campaign .k-hang:nth-of-type(5){animation-duration:5.7s;animation-delay:-1.9s}.kerst-campaign .k-hang:nth-of-type(6){animation-duration:6s;animation-delay:-4.1s}.kerst-campaign .k-hang:nth-of-type(7){animation-duration:5.3s;animation-delay:-2.3s}@keyframes k-sway{0%{transform:rotate(-1.9deg)}to{transform:rotate(1.9deg)}}.kerst-campaign .k-draad{stroke:var(--k-gold-soft);stroke-width:.9px;opacity:.8}.kerst-campaign .k-gloed{opacity:0;fill:none;stroke:#e8cf92;stroke-width:.9px;transition:opacity .3s}.kerst-campaign .k-hang:hover .k-gloed,.kerst-campaign .k-hang:focus .k-gloed{opacity:.7}.kerst-campaign .k-balnaam{font-family:var(--k-sans);letter-spacing:.03em;text-anchor:middle;font-size:13.5px;font-weight:600}.kerst-campaign .k-balprijs{font-family:var(--k-sans);letter-spacing:.02em;text-anchor:middle;opacity:.92;font-size:10px}.kerst-campaign .k-tekst-licht{text-shadow:0 1px 2px #140a0859}.kerst-campaign .k-takken path{fill:none;stroke:var(--k-gold-soft);stroke-width:1.2px;stroke-linecap:round;opacity:.5}.kerst-campaign .k-spark{transform-box:fill-box;transform-origin:50%;opacity:0;fill:#fff;animation:5.2s ease-in-out infinite k-spark}@keyframes k-spark{0%,84%,to{opacity:0;transform:scale(.3)}90%{opacity:.95;transform:scale(1)}96%{opacity:0;transform:scale(.5)}}.kerst-campaign .k-sectiekop{text-align:center;padding:84px 24px 10px}.kerst-campaign .k-sectiekop .k-overline{color:var(--k-gold-deep)}.kerst-campaign .k-sectiekop h2{font-family:var(--k-serif);font-size:clamp(28px,4vw,36px);font-weight:400;line-height:1.15}.kerst-campaign .k-menusectie{background:var(--k-sec1);justify-content:center;padding:34px 24px 90px;display:flex}.kerst-campaign .k-kaart{background:var(--k-sec1-light);border:1px solid var(--k-line);text-align:center;width:100%;max-width:660px;padding:56px 54px 50px;position:relative}.kerst-campaign .k-kaart:before{content:"";border:1px solid var(--k-line);pointer-events:none;position:absolute;inset:9px}.kerst-campaign .k-monogram{border:1px solid var(--k-gold-deep);width:44px;height:44px;font-family:var(--k-serif);color:var(--k-gold-deep);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 24px;font-size:19px;display:flex}.kerst-campaign .k-course{text-align:left;align-items:baseline;gap:12px;margin-bottom:19px;display:flex}.kerst-campaign .k-course .k-naam{font-family:var(--k-serif);font-size:17px}.kerst-campaign .k-course .k-dots{border-bottom:1px dotted #b3ab93;flex:1;transform:translateY(-4px)}.kerst-campaign .k-course .k-det{letter-spacing:.18em;text-transform:uppercase;color:var(--k-ink-soft);white-space:nowrap;font-size:10px}.kerst-campaign .k-kaart hr{border:none;border-top:1px solid var(--k-line);margin:30px 0 24px}.kerst-campaign .k-prijsregel{font-family:var(--k-serif);margin-bottom:8px;font-size:21px}.kerst-campaign .k-prijsregel b{color:var(--k-bordeaux);font-weight:400}.kerst-campaign .k-prijsnoot{letter-spacing:.1em;text-transform:uppercase;color:var(--k-ink-soft);font-size:11px}.kerst-campaign .k-blokken{flex-direction:column;gap:56px;max-width:1180px;margin:0 auto;padding:10px 40px 90px;display:flex}.kerst-campaign .k-blok{background:var(--k-sec1-light);border:1px solid var(--k-line);grid-template-columns:1fr 1fr;align-items:center;gap:0;display:grid}.kerst-campaign .k-blok-spiegel .k-blok-beeld{order:2}.kerst-campaign .k-blok-spiegel .k-blok-tekst{order:1}.kerst-campaign .k-blok-beeld{aspect-ratio:4/3;background:linear-gradient(150deg,#3e5a48,#1b2e23);align-self:stretch;position:relative;overflow:hidden}.kerst-campaign .k-blok-beeld img{object-fit:cover;width:100%;height:100%}.kerst-campaign .k-blok-badge{z-index:1;letter-spacing:.16em;text-transform:uppercase;color:var(--k-cream);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1f1e1b9e;padding:6px 12px;font-size:10px;position:absolute;top:14px;left:14px}.kerst-campaign .k-blok-tekst{flex-direction:column;gap:12px;padding:34px 38px;display:flex}.kerst-campaign .k-blok-nummer{letter-spacing:.18em;text-transform:uppercase;color:var(--k-gold-deep);font-size:11px;font-weight:700}.kerst-campaign .k-blok-kop{font-family:var(--k-serif);font-size:clamp(22px,2.6vw,30px);font-weight:700;line-height:1.15}.kerst-campaign .k-blok-zin{color:var(--k-ink-soft);font-size:14px;line-height:1.6}.kerst-campaign .k-blok-tags{flex-wrap:wrap;gap:8px;margin:2px 0 0;padding:0;list-style:none;display:flex}.kerst-campaign .k-blok-tags li{letter-spacing:.08em;text-transform:uppercase;color:var(--k-ink-soft);border:1px solid var(--k-line);padding:5px 10px;font-size:10.5px}.kerst-campaign .k-blok-prijs{font-family:var(--k-serif);margin-top:2px;font-size:17px}.kerst-campaign .k-blok-cta{letter-spacing:.14em;text-transform:uppercase;color:var(--k-gold-deep);border-bottom:1px solid var(--k-gold-soft);align-self:flex-start;align-items:flex-end;min-height:44px;padding:10px 0 4px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.kerst-campaign .k-blok-cta:hover,.kerst-campaign .k-blok-cta:focus-visible{color:var(--k-bordeaux);border-bottom-color:var(--k-bordeaux)}.kerst-campaign .k-stickybar{z-index:40;background:var(--k-ink);color:var(--k-cream);flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;padding:13px 18px;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.kerst-campaign .k-stickybar.k-show{transform:none}.kerst-campaign .k-sticky-t{letter-spacing:.1em;align-items:baseline;gap:10px;font-size:12px;display:inline-flex}.kerst-campaign .k-sticky-t b{font-family:var(--k-serif);letter-spacing:0;font-size:15px;font-weight:400}.kerst-campaign .k-sticky-p{color:#f4efe3bf}.kerst-campaign .k-sticky-cta{background:var(--k-gold);color:#151310;letter-spacing:.14em;text-transform:uppercase;align-items:center;min-height:44px;padding:12px 22px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}@media (prefers-reduced-motion:no-preference){.kerst-campaign .k-stickybar{transition:transform .4s}}@media (prefers-reduced-motion:reduce){.kerst-campaign .k-dust,.kerst-campaign .k-dust2,.kerst-campaign .on-bubbels{display:none}.kerst-campaign .k-hang,.kerst-campaign .k-spark{animation:none}}@media (max-width:860px){.kerst-campaign .k-hero{grid-template-columns:1fr;min-height:auto}.kerst-campaign .k-hero-txt{padding:64px 26px 8px}.kerst-campaign .k-ballenwrap{padding:10px 12px 0}.kerst-campaign .k-ballenwrap svg{max-width:560px;max-height:90svh}.kerst-campaign .k-kaart{padding:42px 24px 40px}.kerst-campaign .k-blokken{gap:34px;padding-left:22px;padding-right:22px}.kerst-campaign .k-blok,.kerst-campaign .k-blok-spiegel{grid-template-columns:1fr}.kerst-campaign .k-blok-spiegel .k-blok-beeld{order:1}.kerst-campaign .k-blok-spiegel .k-blok-tekst{order:2}.kerst-campaign .k-blok-tekst{padding:24px 22px 28px}}.kerst-campaign.on-campagne{--on-midnight-deep:#0b1026;--on-midnight-mid:#141b3c;--on-champagne:#d9b87a;--on-champagne-light:#ebd4a0;--on-star:#f4efe3}.kerst-campaign.on-campagne .k-hero{background:radial-gradient(1100px 640px at 72% 26%, #d9b87a24, transparent 60%), radial-gradient(900px 700px at 30% 80%, #141b3cb3, transparent 70%), linear-gradient(165deg, var(--on-midnight-mid) 0%, var(--on-midnight-deep) 58%, #060918 100%)}.kerst-campaign.on-campagne .k-dust:before{width:2px;height:2px;animation:5.5s ease-in-out infinite alternate on-twinkel;box-shadow:4vw 8vh #f4efe3e6,11vw 22vh #f4efe380,17vw 5vh #ebd4a0bf,24vw 30vh #f4efe366,31vw 12vh #f4efe3d9,38vw 26vh #ebd4a080,45vw 7vh #f4efe3a6,52vw 19vh #f4efe373,59vw 4vh #ebd4a0cc,66vw 28vh #f4efe380,73vw 10vh #f4efe3e6,80vw 24vh #ebd4a073,87vw 6vh #f4efe3b3,94vw 16vh #f4efe38c,8vw 38vh #f4efe366,27vw 44vh #ebd4a059,49vw 40vh #f4efe373,70vw 42vh #f4efe359,90vw 38vh #ebd4a066,15vw 55vh #f4efe34d,41vw 58vh #f4efe359,63vw 54vh #ebd4a04d,85vw 57vh #f4efe34d}@keyframes on-twinkel{0%{opacity:.55}to{opacity:1}}.kerst-campaign.on-campagne .k-dust2:before{content:none}.kerst-campaign.on-campagne .on-bubbels{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.kerst-campaign.on-campagne .on-stroom{width:0;position:absolute;bottom:-8px}.kerst-campaign.on-campagne .on-bubbel{width:var(--maat);height:var(--maat);opacity:0;animation:on-bubbelstijg var(--duur) cubic-bezier(.5, 0, .85, .6) infinite;animation-delay:var(--vertraging);background:radial-gradient(circle at 32% 28%,#f4efe3f2 0 16%,#f4efe300 30%);border:1px solid #ebd4a0cc;border-radius:50%;position:absolute;bottom:0;left:0}@keyframes on-bubbelstijg{0%{opacity:0;transform:translate(0,0)scale(.55)}7%{opacity:.9}55%{opacity:.85;transform:translate(1px,-46vh)scale(.9)}93%{opacity:.75}to{opacity:0;transform:translate(-1px,-90vh)scale(1.25)}}.kerst-campaign.on-campagne .k-spark{animation:4.6s ease-in-out infinite on-vonkel}@keyframes on-vonkel{0%,87%,to{opacity:0;transform:scale(.3)rotate(0)}90%{opacity:1;transform:scale(1.2)rotate(20deg)}94%{opacity:.85;transform:scale(.95)rotate(45deg)}96%{opacity:0;transform:scale(.4)rotate(60deg)}}.kerst-campaign.on-campagne .k-draad{stroke:var(--on-champagne);opacity:.9}.kerst-campaign.on-campagne .k-hero-txt .k-overline{color:var(--on-champagne-light)}.kerst-campaign.on-campagne .k-sectiekop .k-overline{color:var(--k-ink-soft)}
