/* Nieuwsbrief-blok voor de homepage (die laadt style.css niet). Kopie van de regels in style.css. */
.newsletter-section{--accent:#10b981;--r-pill:64px;--head:"Blauer Neue","Inter",-apple-system,system-ui,sans-serif;--body:"Blauer Neue","Inter",-apple-system,system-ui,sans-serif}
.newsletter-section .wrap{max-width:1340px;margin:0 auto;padding:0 56px}@media(max-width:760px){.newsletter-section .wrap{padding:0 24px}}
.newsletter-section{
  background:radial-gradient(ellipse 90% 200% at 70% 50%,rgba(16,185,129,.28) 0%,rgba(16,185,129,.06) 55%,transparent 78%),
             linear-gradient(180deg,#0c1f18 0%,#080e0b 100%);
  padding:72px 0;
  border-top:1px solid rgba(16,185,129,.30);
  border-bottom:1px solid rgba(16,185,129,.15);
}
.newsletter-inner{display:flex;align-items:center;gap:56px}
@media(max-width:780px){.newsletter-inner{flex-direction:column;gap:28px}}
.newsletter-text{flex:0 0 360px}
@media(max-width:780px){.newsletter-text{flex:none}}
.newsletter-title{font-family:var(--head);font-size:clamp(22px,3vw,30px);font-weight:800;color:#fff;margin:0 0 10px;letter-spacing:-.01em}
.newsletter-sub{font-size:15px;color:rgba(255,255,255,.55);margin:0;line-height:1.6}
.newsletter-form{flex:1}
.newsletter-fields{display:flex;gap:10px;flex-wrap:wrap}
.newsletter-fields input{
  flex:1;min-width:160px;font-family:var(--body);font-size:14px;
  border:1.5px solid rgba(255,255,255,.15);border-radius:var(--r-pill);
  padding:12px 18px;background:rgba(255,255,255,.07);color:#fff;
  outline:none;transition:border-color .2s,background .2s;
}
.newsletter-fields input::placeholder{color:rgba(255,255,255,.35)}
.newsletter-fields input:focus{border-color:var(--accent);background:rgba(255,255,255,.10)}
.btn--outline-light{
  font-family:var(--head);font-weight:700;font-size:14px;padding:12px 26px;
  border-radius:var(--r-pill);background:var(--accent);color:#fff;
  border:none;cursor:pointer;
  transition:opacity .2s,transform .15s;white-space:nowrap;
  box-shadow:0 0 18px rgba(16,185,129,.35);
}
.btn--outline-light:hover{opacity:.88;transform:translateY(-1px)}
.newsletter-disclaimer{font-size:12px;color:#fff;margin:10px 0 0;text-align:right}
.newsletter-msg{font-size:14px;margin:10px 0 0;font-weight:500}
.newsletter-msg--ok{color:var(--accent)}
.newsletter-msg--err{color:#f87171}

