.newsletter-band { padding: 74px 0; border-block: 1px solid #171713; background: #78c8f6; color: #171713; }
.newsletter-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 520px); gap: 72px; align-items: center; }
.newsletter-copy h2 { max-width: 760px; margin: 0; font-size: 4.8rem; line-height: .92; }
.newsletter-copy > p:last-child { max-width: 620px; margin: 22px 0 0; font-size: 1.05rem; }
.newsletter-form { padding-left: 34px; border-left: 3px solid #171713; }
.newsletter-form > label:first-child { display: block; margin-bottom: 8px; font-size: .74rem; font-weight: 900; text-transform: uppercase; }
.newsletter-input-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.newsletter-input-row input { min-width: 0; height: 52px; padding: 0 15px; border: 2px solid #171713; border-radius: 5px; background: #fff; color: #171713; font: inherit; }
.newsletter-input-row button { min-width: 112px; height: 52px; padding: 0 18px; border: 2px solid #171713; border-radius: 5px; background: #c8f04b; color: #171713; font: inherit; font-weight: 900; cursor: pointer; }
.newsletter-input-row button:hover { background: #171713; color: #fff; }
.newsletter-input-row button:disabled { cursor: wait; opacity: .7; }
.newsletter-consent { display: flex; align-items: flex-start; gap: 9px; margin-top: 13px; font-size: .74rem; font-weight: 600; line-height: 1.45; }
.newsletter-consent input { width: 17px; height: 17px; margin: 1px 0 0; accent-color: #171713; }
.newsletter-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.newsletter-status { min-height: 1.5em; margin: 12px 0 0; font-size: .78rem; font-weight: 800; }
@media (max-width: 900px) {
  .newsletter-grid { grid-template-columns: 1fr; gap: 38px; }
  .newsletter-form { max-width: 620px; padding-left: 0; border-left: 0; }
}
@media (max-width: 700px) {
  .newsletter-band { padding: 56px 0; }
  .newsletter-copy h2 { font-size: 3.5rem; }
  .newsletter-input-row { grid-template-columns: 1fr; }
  .newsletter-input-row button { width: 100%; }
}

