:root {
  --pj-newsletter-accent: #f06529;
  --pj-newsletter-panel: #121518;
}
.pj-article-newsletter-card {
  box-sizing: border-box;
  min-width: 0;
  margin: 2.5rem auto;
  padding: clamp(1.25rem, 4vw, 2rem);
  width: min(100% - 2rem, 960px);
  max-width: 100%;
  color: #f3f4f6;
  background: linear-gradient(135deg, rgb(200 85 35 / 12%), var(--pj-newsletter-panel));
  border: 1px solid rgb(200 85 35 / 42%);
  border-radius: 14px;
}
.pj-article-newsletter-card *,
.pj-article-newsletter-card *::before,
.pj-article-newsletter-card *::after { box-sizing: border-box; }
.pj-article-newsletter-card :where(h2, p, label, span, a, .pj-newsletter-status) { min-width: 0; overflow-wrap: anywhere; }
.pj-article-newsletter-card .pj-newsletter-eyebrow { color: var(--pj-newsletter-accent); font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.pj-article-newsletter-card h2 { margin: .4rem 0 .7rem; color: #fff; font-size: clamp(1.35rem, 3vw, 1.8rem); }
.pj-article-newsletter-card p { line-height: 1.6; }
.pj-article-newsletter-card form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.25rem; min-width: 0; }
.pj-article-newsletter-card form > label:not(.pj-nl-consent) { display: grid; gap: .4rem; font-weight: 600; }
.pj-article-newsletter-card form input:not([type="checkbox"]) { min-width: 0; width: 100%; min-height: 48px; padding: .75rem 1rem; color: #fff; background: rgb(0 0 0 / 45%); border: 1px solid rgb(255 255 255 / 24%); border-radius: 8px; }
.pj-article-newsletter-card form .pj-nl-consent, .pj-article-newsletter-card form button, .pj-article-newsletter-card form .pj-newsletter-status { grid-column: 1 / -1; }
.pj-article-newsletter-card form .pj-nl-consent { display: flex; align-items: flex-start; gap: .65rem; min-width: 0; color: #c5c7ca; font-size: .85rem; line-height: 1.5; }
.pj-article-newsletter-card form .pj-nl-consent span { flex: 1 1 auto; }
.pj-article-newsletter-card form .pj-nl-consent input { flex: 0 0 auto; margin-top: .2rem; }
.pj-article-newsletter-card form a { color: #ff9b70; }
.pj-article-newsletter-card form button { min-width: 0; min-height: 48px; padding: .8rem 1.2rem; color: #fff; font-weight: 700; white-space: normal; overflow-wrap: anywhere; background: linear-gradient(135deg, #f06529, #c85523); border: 0; border-radius: 8px; cursor: pointer; }
.pj-article-newsletter-card form button:disabled { cursor: wait; opacity: .7; }
.pj-article-newsletter-card form .pj-newsletter-status { margin: 0; }
@media (max-width: 600px) { .pj-article-newsletter-card form { grid-template-columns: 1fr; } }

