.newsletter{width:100%;max-width:32rem;text-align:left;margin-block:1rem}
.newsletter label{display:block;font-weight:650;margin-bottom:.65rem}
.newsletter-fields{display:flex;gap:.5rem}
.newsletter-fields input,.newsletter-fields button{box-sizing:border-box;min-height:46px;border-radius:12px;font:inherit;padding:.75rem 1rem}
.newsletter-fields input{min-width:0;flex:1;width:100%;border:1px solid #343b48;background:#111720;color:#f3f5f8;line-height:1.3}
.newsletter-fields input::placeholder{color:#a6acba;opacity:1}
.newsletter-fields button{flex-shrink:0;border:1px solid transparent;background:var(--lime,#c4ff4d);color:var(--lime-ink,#0a1400);font-weight:750;cursor:pointer;line-height:1.3}
.newsletter-fields button:hover{filter:brightness(1.06)}
.newsletter-fields button:disabled{opacity:.65;cursor:wait}
.newsletter-fields input:focus-visible,.newsletter-fields button:focus-visible{outline:2px solid var(--lime,#c4ff4d);outline-offset:3px}
.newsletter small{display:block;margin-top:.55rem;color:var(--muted,#a6acba)}
.newsletter-result{min-height:1.5em;margin:.5rem 0 0}
.newsletter .newsletter-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
footer:has(.newsletter){flex-wrap:wrap}
footer .newsletter{flex-basis:100%;max-width:32rem}
@media(max-width:420px){.newsletter-fields{flex-wrap:wrap}.newsletter-fields input{flex-basis:100%}.newsletter-fields button{width:100%}}
