/* Kadoodle Nieuwsbrief — footerbalk, kaart onder producten, weggever */
.kd-nb{--nb-inkt:#1d1630;--nb-zacht:#4a4360;--nb-grijs:#7a7290;--nb-roze:#f0457a;--nb-oranje:#f7a33b;--nb-paars:#5b4fe9;--nb-rand:#efe3ea;
	color:var(--nb-inkt);font-family:var(--e-global-typography-text-font-family,inherit),system-ui,sans-serif;box-sizing:border-box}
.kd-nb *,.kd-nb *::before,.kd-nb *::after{box-sizing:border-box}
.kd-nb p{margin:0}

.kd-nb-label{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--nb-roze);margin-bottom:8px!important}
.kd-nb-ster{width:18px;height:18px;flex:none;color:var(--nb-inkt)}
.kd-nb-titel{margin:0 0 8px;font-family:var(--e-global-typography-primary-font-family,inherit),system-ui,sans-serif;font-weight:800;font-size:clamp(22px,2.6vw,30px);line-height:1.15;letter-spacing:-.01em;color:var(--nb-inkt)}
.kd-nb-tekst{font-size:16px;line-height:1.6;color:var(--nb-zacht);margin-bottom:18px!important}

/* formulier */
.kd-nb-velden{display:grid;gap:10px;grid-template-columns:1fr}
.kd-nb-veld{display:flex;flex-direction:column;gap:4px;min-width:0}
.kd-nb .kd-nb-veld label{display:block;margin:0;font-size:13px;font-weight:700;color:var(--nb-zacht);padding-left:14px}
.kd-nb .kd-nb-form .kd-nb-veld input{width:100%;height:auto;min-height:50px;margin:0;padding:12px 18px;border:1.5px solid var(--nb-rand);border-radius:999px;background:#fff;font-family:inherit;font-size:16px;line-height:1.3;color:var(--nb-inkt);box-shadow:none;transition:border-color .15s,box-shadow .15s}
.kd-nb .kd-nb-form .kd-nb-veld input::placeholder{color:#a79fb8;opacity:1}
.kd-nb .kd-nb-form .kd-nb-veld input:focus{outline:none;border-color:var(--nb-roze);box-shadow:0 0 0 4px rgba(240,69,122,.16)}
.kd-nb-veld--knop{justify-content:flex-end}
.kd-nb .kd-nb-form .kd-nb-knop,.kd-nb .kd-nb-form .kd-nb-knop:hover,.kd-nb .kd-nb-form .kd-nb-knop:focus{min-height:50px;width:100%;margin:0;padding:12px 26px;border:0;border-radius:999px;cursor:pointer;font-family:inherit;font-size:16px;font-weight:800;line-height:1.2;letter-spacing:0;text-transform:none;text-decoration:none;color:#fff!important;background:linear-gradient(90deg,var(--nb-roze),var(--nb-oranje))!important;box-shadow:0 8px 20px rgba(240,69,122,.28);transition:transform .15s,box-shadow .15s,opacity .15s}
.kd-nb .kd-nb-form .kd-nb-knop:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(240,69,122,.34)}
.kd-nb .kd-nb-form .kd-nb-knop:focus-visible{outline:3px solid var(--nb-paars);outline-offset:3px}
.kd-nb .kd-nb-form .kd-nb-knop[disabled]{opacity:.65;cursor:wait;transform:none}
.kd-nb-vinkje{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;margin:2px 0;font-size:14px;line-height:1.5;color:var(--nb-zacht);cursor:pointer}
.kd-nb .kd-nb-form .kd-nb-vinkje input[type=checkbox]{-webkit-appearance:auto;appearance:auto;flex:none;width:20px;height:20px;min-height:0;margin:1px 0 0;padding:0;border:0;border-radius:4px;box-shadow:none;accent-color:var(--nb-roze)}
.kd-nb .kd-nb-form .kd-nb-vinkje input[type=checkbox]::before,.kd-nb .kd-nb-form .kd-nb-vinkje input[type=checkbox]::after{content:none;display:none}
.kd-nb-privacy{margin-top:10px!important;font-size:12.5px;line-height:1.5;color:var(--nb-grijs)}
.kd-nb-privacy a{color:inherit;text-decoration:underline}
.kd-nb-msg:empty{display:none}
.kd-nb-msg{margin-top:12px!important;padding:12px 16px;border-radius:16px;font-size:15px;line-height:1.5;font-weight:600;background:#fff2f2;color:#a3123f}
.kd-nb-form.is-klaar .kd-nb-msg{background:#ecfaf1;color:#156a3a}
.kd-nb-form.is-klaar .kd-nb-velden,.kd-nb-form.is-klaar .kd-nb-vinkje,.kd-nb-form.is-klaar .kd-nb-privacy{display:none}
.kd-nb-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* footerbalk */
.kd-nb-balk{position:relative;padding:clamp(28px,5vw,56px) 16px;background:linear-gradient(120deg,#fdf1ee 0%,#fbe3ea 50%,#ece6fb 100%)}
.kd-nb-balk__in{max-width:1180px;margin:0 auto;display:grid;gap:22px;padding:clamp(22px,4vw,40px);border-radius:28px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 50px rgba(120,60,110,.10)}
.kd-nb-balk .kd-nb-tekst{margin-bottom:0!important}

/* kaart (onder producten, shortcode, weggever) */
.kd-nb-kaart{position:relative;display:grid;gap:16px;grid-template-columns:1fr;max-width:860px;margin:clamp(28px,5vw,48px) auto;padding:clamp(22px,4vw,34px);border-radius:26px;background:linear-gradient(150deg,#fff 0%,#fff7f4 60%,#f6f1ff 100%);border:1.5px solid var(--nb-rand);box-shadow:0 14px 40px rgba(120,60,110,.09)}
.kd-nb-sticker{width:64px;height:64px;padding:8px;border-radius:20px;background:#fff;box-shadow:0 6px 16px rgba(120,60,110,.14);transform:rotate(-6deg)}
.kd-nb-sticker svg{display:block;width:100%;height:100%}
.kd-nb-kaart--weggever{background:linear-gradient(150deg,#fff 0%,#fff6e8 60%,#ffeef3 100%)}

@media (min-width:640px){
	.kd-nb-velden{grid-template-columns:1fr 1fr}
	.kd-nb-veld--knop{grid-column:1/-1}
	.kd-nb-kaart{grid-template-columns:64px 1fr;gap:22px}
}
@media (min-width:900px){
	.kd-nb-balk__in{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:40px}
	.kd-nb-balk .kd-nb-velden,.kd-nb-kaart .kd-nb-velden{grid-template-columns:1fr 1.3fr auto}
	.kd-nb-balk .kd-nb-veld--knop,.kd-nb-kaart .kd-nb-veld--knop{grid-column:auto}
	.kd-nb-kaart--compact .kd-nb-velden,.kd-nb-kaart--weggever .kd-nb-velden{grid-template-columns:1fr 1fr}
	.kd-nb-kaart--compact .kd-nb-veld--knop,.kd-nb-kaart--weggever .kd-nb-veld--knop{grid-column:1/-1;align-items:flex-start}
	.kd-nb-knop{width:auto;white-space:nowrap}
}
@media (prefers-reduced-motion:reduce){.kd-nb-knop{transition:none}.kd-nb-knop:hover{transform:none}}
