/* SBZ Nieuwsbrief — formulier en meldingspagina's.
   In de footer bepaalt het thema de vorm van het formulier (.site-footer .newsletter form);
   dit bestand voegt alleen de melding, de privacyregel en de losse pagina's toe. */

.sbz-nb{display:flex;flex-direction:column;gap:9px;min-width:0}
.sbz-nb__hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.sbz-nb form[hidden]{display:none!important}
.sbz-nb.is-bezig button{opacity:.75;cursor:progress}

.sbz-nb__privacy{margin:0;font-size:12px;line-height:1.4;opacity:.85}
.sbz-nb__privacy a{color:inherit;text-decoration:underline;text-underline-offset:2px}

.sbz-nb__melding{margin:0;padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.45}
.sbz-nb__melding.is-fout{background:#fff4ee;color:#8f2d05;box-shadow:inset 0 0 0 1px rgba(143,45,5,.18)}
.sbz-nb__melding.is-ok{display:flex;gap:12px;align-items:flex-start;padding:15px 18px;border-radius:15px;background:#fff;color:#202328;font-size:15px;font-weight:500;box-shadow:0 10px 24px rgba(91,36,12,.18);outline:none}
.sbz-nb__melding.is-ok:before{content:"✓";flex:0 0 26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#f45b16;color:#fff;font-weight:700;font-size:14px}

/* Footer: ruimte voor het formulier naast de kop, op mobiel volle breedte. */
.site-footer .newsletter .sbz-nb{max-width:480px}
.site-footer .newsletter .sbz-nb__melding.is-fout{background:rgba(23,25,28,.22);color:#fff;box-shadow:none}
@media (max-width:620px){
  .site-footer .newsletter .sbz-nb{width:100%;max-width:none}
}

/* Formulier elders (shortcode of meldingspagina). */
.sbz-nb-pagina .sbz-nb form,
.entry-content .sbz-nb form{display:flex;overflow:hidden;border-radius:15px;background:#fff;box-shadow:inset 0 0 0 1px #e1e3e6}
.sbz-nb-pagina .sbz-nb input[type=email],
.entry-content .sbz-nb input[type=email]{flex:1;min-width:0;min-height:52px;padding:0 16px;border:0;background:transparent;font:inherit;color:#202328}
.sbz-nb-pagina .sbz-nb button,
.entry-content .sbz-nb button{padding:0 20px;border:0;background:#262a2f;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.sbz-nb-pagina .sbz-nb__privacy,
.entry-content .sbz-nb__privacy{color:#6f7278}

/* Meldingspagina's (bevestigen, afmelden, …). */
.sbz-nb-pagina{background:linear-gradient(180deg,#fff4ee 0,#fff 420px)}
.sbz-nb-kaart{max-width:620px;margin:10px auto 0;padding:48px 44px;border-radius:26px;background:#fff;text-align:center;box-shadow:0 24px 60px rgba(38,45,55,.1),inset 0 0 0 1px rgba(38,45,55,.05)}
.sbz-nb-kaart__icoon{width:84px;height:84px;margin:0 auto 20px;display:grid;place-items:center;border-radius:26px;background:#fff1e9;font-size:40px;line-height:1}
.sbz-nb-kaart__eyebrow{display:block;margin-bottom:8px;color:#f45b16;font-size:12px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.sbz-nb-kaart h1{margin:0 0 16px;font-size:clamp(30px,4vw,40px);line-height:1.08;letter-spacing:-.03em;color:#17191c}
.sbz-nb-kaart p{margin:0 auto 14px;max-width:480px;color:#4b4f55;font-size:17px;line-height:1.55}
.sbz-nb-kaart p.sbz-nb-klein{font-size:14px;color:#6f7278}
.sbz-nb-kaart a:not(.sbz-nb-knop){color:#f45b16;font-weight:600}
.sbz-nb-pagina__form{max-width:460px;margin:24px auto 0;text-align:left}
.sbz-nb-pagina__actie{margin:22px 0 0}
.sbz-nb-pagina__terug{margin-top:22px!important}
.sbz-nb-knop{display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border:0;border-radius:13px;background:#f45b16;color:#fff;font:inherit;font-size:16px;font-weight:600;text-decoration:none;cursor:pointer;transition:transform .15s,box-shadow .15s}
.sbz-nb-knop:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(244,91,22,.28);color:#fff}
.sbz-nb-knop--licht{background:#fff;color:#17191c;box-shadow:inset 0 0 0 2px #17191c}
.sbz-nb-knop--licht:hover{color:#17191c;box-shadow:inset 0 0 0 2px #17191c,0 10px 22px rgba(38,45,55,.12)}
.sbz-nb-pagina__actie + .sbz-nb-pagina__terug .sbz-nb-knop{background:none;color:#6f7278;padding:8px;box-shadow:none;font-size:14px}
@media (max-width:620px){
  .sbz-nb-kaart{padding:34px 22px;border-radius:20px}
  .sbz-nb-kaart p{font-size:16px}
}
