.newsletter-overlay{z-index:9999;background:#00000080;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.newsletter-popup{background:#fff;border-radius:1rem;width:90%;max-width:420px;padding:2rem;animation:.3s slideUp;position:relative;box-shadow:0 20px 60px #00000026}.newsletter-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.5rem;transition:background .2s;display:flex;position:absolute;top:.75rem;right:.75rem}.newsletter-close:hover{color:#374151;background:#f3f4f6}.newsletter-title{color:#111827;margin:0 0 .5rem;font-size:1.5rem;font-weight:700}.newsletter-desc{color:#6b7280;margin:0 0 1.25rem;line-height:1.5}.newsletter-form{gap:.5rem;display:flex}.newsletter-input{border:1px solid #d1d5db;border-radius:.5rem;outline:none;flex:1;padding:.625rem .875rem;font-size:.95rem;transition:border-color .2s}.newsletter-input:focus{border-color:var(--color-primary,#22c55e)}.newsletter-input:disabled{opacity:.6}.newsletter-submit{background:var(--color-primary,#22c55e);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:.5rem;padding:.625rem 1.25rem;font-weight:600;transition:opacity .2s}.newsletter-submit:hover{opacity:.9}.newsletter-submit:disabled{opacity:.6;cursor:not-allowed}.newsletter-error{color:#dc2626;margin:.5rem 0 0;font-size:.85rem}.newsletter-gdpr{color:#9ca3af;margin:.75rem 0 0;font-size:.75rem}.newsletter-success{text-align:center;padding:1rem 0}.newsletter-success-icon{width:48px;height:48px;color:var(--color-primary,#22c55e);background:#f0fdf4;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;font-size:1.5rem;display:flex}.newsletter-success h3{color:#111827;margin:0;font-size:1.1rem}.newsletter-siblings{background:#f9fafb;border-radius:.5rem;margin:.75rem 0 0;padding:.75rem}.newsletter-siblings-label{color:#374151;margin:0 0 .5rem;font-size:.85rem;font-weight:600}.newsletter-sibling-checkbox{color:#4b5563;cursor:pointer;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.85rem;display:flex}.newsletter-sibling-checkbox input[type=checkbox]{accent-color:var(--color-primary,#22c55e);cursor:pointer;width:16px;height:16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
