.newsletter {
  max-width: 1180px;
  margin: auto;
  padding: 84px 24px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  background: #fff;
}

.newsletter > div > p:last-child { color: var(--muted); max-width: 560px; }
.newsletter form { padding: 28px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; }
.newsletter-fields { display: grid; grid-template-columns: 1fr 1.5fr; gap: 12px; }
.newsletter label span { display: block; margin-bottom: 6px; font-size: 12px; font-weight: 700; color: var(--ink); }
.newsletter input[type="text"],
.newsletter input[type="email"],
.newsletter input:not([type]) { width: 100%; padding: 13px 14px; border: 1px solid var(--border); border-radius: 7px; font: inherit; background: #fff; }
.newsletter-consent { display: flex; align-items: flex-start; gap: 9px; margin: 16px 0; color: var(--muted); font-size: 12px; }
.newsletter-consent input { margin-top: 2px; }
.newsletter button { border: 0; cursor: pointer; }
.newsletter button:disabled { opacity: .6; cursor: wait; }
.newsletter-status { min-height: 20px; margin: 12px 0 0; color: var(--muted); font-size: 13px; }

.industry-brief-form { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; }
.industry-brief-form label { flex: 1 1 220px; }
.industry-brief-form .button { flex: 0 0 auto; }
.industry-brief-form .newsletter-status { flex-basis: 100%; }

@media (max-width: 760px) {
  .newsletter { grid-template-columns: 1fr; padding: 72px 18px; gap: 32px; }
  .newsletter-fields { grid-template-columns: 1fr; }
  .industry-brief-form { flex-direction: column; align-items: stretch; }
}
