.newsletter-page{max-width:860px;margin:32px auto;padding:32px;border:1px solid var(--border,#ddd);border-radius:18px;background:var(--surface,#fff)}
.newsletter-page>p{max-width:65ch;line-height:1.7}.newsletter-page h1{font-size:clamp(2rem,5vw,3.2rem);margin:0 0 16px}
.newsletter-page form{display:grid;gap:22px;margin-top:24px}.newsletter-page label{display:flex;gap:10px;align-items:flex-start;line-height:1.5}
.newsletter-page .newsletter-email{display:grid;gap:8px;font-weight:700}.newsletter-page input[type=email]{width:100%;min-height:48px;border:1px solid #aaa;border-radius:8px;padding:10px;font:inherit}
.newsletter-page input[type=checkbox]{width:19px;height:19px;flex:0 0 19px;margin:3px 0;accent-color:#b20d25}
.newsletter-page fieldset{border:1px solid var(--border,#ddd);border-radius:10px;padding:20px}.newsletter-page legend{font-weight:700;padding:0 8px}
.newsletter-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.newsletter-page button{justify-self:start;min-height:48px;background:#b20d25;color:#fff;border:0;border-radius:8px;padding:12px 20px;font:inherit;font-weight:700;cursor:pointer}
.newsletter-page [role=status],.newsletter-page [role=alert]{padding:16px;border-radius:8px;border:1px solid #9ab9a6;background:#eff8f2;color:#173d28}
.newsletter-page [role=alert]{border-color:#d49a9a;background:#fff1f1;color:#7d1717}.newsletter-page a{color:inherit;text-decoration:underline}
@media(max-width:600px){.newsletter-page{padding:20px;margin:16px 0}.newsletter-page button{width:100%}.newsletter-page fieldset{padding:12px}}
