.newsletter-section { padding-block: clamp(70px, 9vw, 118px); background: #e7eee2; }
.newsletter-layout { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr); gap:clamp(42px,8vw,118px); align-items:start; }
.newsletter-copy { max-width:490px; }
.newsletter-copy h2 { margin-bottom:22px; }
.newsletter-copy p { color:#5e6c5d; }
.newsletter-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:clamp(26px,4vw,42px); background:#fffdf8; }
.newsletter-form label { display:grid; gap:7px; color:var(--brand-green); font-size:.82rem; font-weight:600; }
.newsletter-form label.newsletter-email { grid-column:1 / -1; }
.newsletter-form input[type="text"],.newsletter-form input[type="email"] { width:100%; min-width:0; padding:13px 14px; border:1px solid rgba(82,107,93,.28); border-radius:0; background:#fffdf8; color:var(--brand-ink); font:inherit; }
.newsletter-form input:focus { outline:2px solid rgba(190,101,64,.46); outline-offset:2px; }
.newsletter-form button { justify-self:start; grid-column:1 / -1; margin-top:4px; padding:13px 21px; border:0; border-radius:var(--action-radius); background:var(--action); color:var(--action-ivory); font:inherit; font-weight:600; cursor:pointer; }
.newsletter-form button:hover { background:var(--action-hover); }
.newsletter-form .newsletter-privacy { grid-column:1 / -1; margin:4px 0 0; color:#687466; font-size:.8rem; line-height:1.55; }
.newsletter-form .newsletter-privacy a { color:var(--brand-rust); }
.newsletter-form .turnstile-slot { grid-column:1 / -1; }
.newsletter-status { grid-column:1 / -1; font-size:.9rem; line-height:1.5; }
.newsletter-status:empty { display:none; }
.newsletter-status.is-success { padding:12px 14px; background:rgba(181,183,152,.3); color:var(--brand-green); }
.newsletter-status.is-error { padding:12px 14px; background:rgba(190,101,64,.12); color:#87452e; }
.newsletter-honeypot { position:absolute!important; left:-9999px!important; }
@media(max-width:760px){.newsletter-layout{grid-template-columns:1fr;gap:30px}}
@media(max-width:560px){.newsletter-form{grid-template-columns:1fr;padding:24px 20px}.newsletter-form label.newsletter-email{grid-column:auto}}
