/* ABN newsletter signup (footer band + inline box + [abn_newsletter]) - 2026-08-18 */
.abn-nl-band{background:var(--color-bg-muted);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-top:var(--space-16);padding:var(--space-8) 0}
.site-footer{margin-top:0 !important}
.abn-nl{display:grid;gap:var(--space-4);align-items:center;position:relative}
.abn-nl--inline{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-left:4px solid var(--color-breaking);border-radius:var(--radius-md);padding:var(--space-5);margin:var(--space-8) 0}
.abn-nl-title{font-family:var(--font-headline);font-size:1.25rem;line-height:1.25;color:var(--color-text);margin:0 0 var(--space-2)}
.abn-nl--footer .abn-nl-title{font-family:var(--font-display);font-size:1.35rem;letter-spacing:-.01em}
.abn-nl-text{font-size:.95rem;line-height:1.5;color:var(--color-text-muted);margin:0}
.abn-nl-form{display:flex;flex-direction:column;gap:var(--space-2)}
.abn-nl-input{width:100%;min-width:0;padding:.8rem .9rem;font:inherit;font-size:1rem;color:var(--color-text);background:var(--color-bg-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}
.abn-nl-input:focus{outline:2px solid var(--color-breaking);outline-offset:1px;border-color:var(--color-breaking)}
.abn-nl-btn{padding:.8rem 1.4rem;font:inherit;font-weight:700;font-size:1rem;color:#fff;background:var(--color-breaking);border:0;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast)}
.abn-nl-btn:hover,.abn-nl-btn:focus-visible{background:var(--color-breaking-dark)}
.abn-nl-fine{font-size:.75rem;color:var(--color-text-subtle);margin:var(--space-2) 0 0}
.abn-nl-notice{margin:0 0 var(--space-2);padding:.5rem .7rem;border-radius:var(--radius-sm);background:#fdecea;border:1px solid #f5c2c0;color:#8a1c13;font-size:.9rem;line-height:1.35}
@media(prefers-color-scheme:dark){.abn-nl-notice{background:#3b1210;border-color:#7f1d1d;color:#fecaca}}
@media(min-width:640px){
  .abn-nl-form{flex-direction:row}
  .abn-nl-input{flex:1 1 auto}
  .abn-nl-btn{flex:0 0 auto}
}
@media(min-width:900px){
  .abn-nl--footer{grid-template-columns:1fr 1fr;gap:var(--space-8)}
  .abn-nl--inline{grid-template-columns:5fr 6fr;gap:var(--space-6)}
}
