.newsletter-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; margin:0 0 22px; }
.newsletter-toolbar > a { margin-left:auto; color:#1855a2; font-size:.88rem; }
.newsletter-button-options { margin:22px 0; border-top:1px solid #e1e9f4; padding-top:18px; }
.newsletter-button-options summary,.community-panel > summary { cursor:pointer; font-weight:700; }
.newsletter-button-options label { display:block; margin:18px 0 7px; font-weight:600; font-size:.9rem; }
.newsletter-preview { display:block; width:100%; height:720px; border:1px solid #dae4f1; border-radius:14px; background:#eef4fc; margin-top:18px; }
#email-preview .community-actions form { margin:0; padding:0; border:0; box-shadow:none; width:auto; background:none; }
.community-button:disabled { opacity:.45; cursor:default; filter:none; }
.newsletter-counts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:22px 0; }
.newsletter-counts > span { padding:18px; border-radius:14px; background:#f2f7fe; font-size:.8rem; }
.newsletter-counts strong { display:block; font-size:1.7rem; color:#155dba; }
.newsletter-inline { margin:28px auto 0; max-width:780px; padding:28px; border:1px solid #bcd5f2; border-radius:20px; background:linear-gradient(120deg,#eaf3ff,#edf9f7); text-align:left; }
.newsletter-inline h3 { margin:0 0 8px; font-size:1.4rem; line-height:1.35; color:#183657; }
.newsletter-inline p { margin:0 0 18px; text-align:left; color:#536983; }
.newsletter-inline form { display:flex; flex-wrap:wrap; gap:12px; margin:0; padding:0; max-width:none; box-shadow:none; background:none; }
.newsletter-inline label { flex-basis:100%; font-weight:600; font-size:.9rem; color:#183657; }
.newsletter-inline input[type=email] { flex:1 1 230px; width:auto; min-width:0; padding:13px 16px; margin:0; border:1px solid #b6cbe5; border-radius:12px; color:#17283f; background:#fff; font:inherit; }
.newsletter-inline button { min-height:46px; padding:12px 24px; border:0; border-radius:999px; background:linear-gradient(120deg,#187bff,#0eaab0); color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.newsletter-inline small { flex-basis:100%; color:#5c7089; font-size:.8rem; line-height:1.6; }
.newsletter-inline small a { color:#1855a2; }
.newsletter-inline .newsletter-trap { display:none !important; }
@media(max-width:600px) { .newsletter-inline { padding:22px 18px; } .newsletter-inline button { width:100%; } .newsletter-preview { height:660px; } .newsletter-counts { grid-template-columns:1fr; } }

/* Prominent, compact signup immediately below the homepage hero. */
.newsletter-inline.newsletter-banner { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:center; gap:32px; width:calc(100% - 48px); max-width:1180px; margin:24px auto 0; padding:26px 32px; background:linear-gradient(115deg,#f9fcff,#e7f4ff 65%,#e8f8f4); border:1px solid #bfd6ee; box-shadow:0 8px 26px #14375d0b; scroll-margin-top:110px; }
.newsletter-eyebrow { display:block; margin-bottom:7px; color:#2464a2; font-size:.66rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.newsletter-banner h2 { margin:0 0 7px; color:#142f50; font-size:clamp(1.35rem,2.4vw,1.7rem); line-height:1.25; }
.newsletter-banner p { margin:0; max-width:420px; font-size:.88rem; line-height:1.65; }
.newsletter-inline.newsletter-banner form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:11px; min-width:0; }
.newsletter-banner input[type=email] { width:100%; min-width:0; padding:12px 14px; font-size:.9rem; }
.newsletter-inline.newsletter-banner button { width:auto; padding:12px 22px; font-size:.9rem; }
.newsletter-banner small { grid-column:1/-1; font-size:.72rem; }
.newsletter-banner .newsletter-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:800px) { .newsletter-inline.newsletter-banner { grid-template-columns:1fr; gap:18px; padding:24px; } .newsletter-banner p { max-width:none; } }
@media(max-width:480px) { .newsletter-inline.newsletter-banner { width:calc(100% - 28px); margin-top:18px; padding:21px 19px; border-radius:18px; gap:16px; } .newsletter-inline.newsletter-banner button { padding:12px 17px; } .newsletter-banner p { font-size:.83rem; } }
.newsletter-toolbar .newsletter-delete-form,.newsletter-recent .newsletter-delete-form { display:block; margin:0; padding:0; width:auto; max-width:none; border:0; background:none; box-shadow:none; flex-shrink:0; }
.newsletter-delete-button { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:8px 15px; border:1px solid #edc5ca; border-radius:999px; background:#fff4f5; color:#a33343; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer; }
.newsletter-delete-button:hover { background:#ffe7eb; }
.newsletter-delete-button:focus-visible { outline:3px solid #df9cab; outline-offset:3px; }
.newsletter-recent { margin-top:16px; padding:0; list-style:none; }
.newsletter-recent li { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:13px 0; border-top:1px solid #e3eaf3; }
.newsletter-recent li > div { min-width:0; overflow-wrap:anywhere; }
.newsletter-recent .community-muted { display:block; }
@media(max-width:480px) { .newsletter-recent li { flex-wrap:wrap; gap:10px; } }
