/* Weekly-dispatch newsletter signup, article footer. LIGHT reading surface.
   Reads the article's own :root tokens with hardcoded fallbacks so it works
   even on a page that hasn't defined them. Pairs with newsletter.js. */
.signup{
  border-top:1px solid var(--line,rgba(0,0,0,.12));
  border-bottom:1px solid var(--line,rgba(0,0,0,.12));
  background:var(--bg-2,#EFEDE7);
  padding:clamp(48px,7vw,84px) clamp(22px,5vw,24px);
}
.signup-inner{max-width:620px;margin:0 auto;text-align:center}
.signup-eyebrow{
  font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.28em;
  text-transform:uppercase;color:var(--muted-2,#9A948A);
}
.signup-h{
  font-family:'Archivo',sans-serif;font-weight:800;text-transform:uppercase;
  letter-spacing:.005em;font-size:clamp(25px,3.4vw,38px);line-height:1.06;
  color:var(--ink,#14130F);margin:15px auto 0;max-width:18ch;
}
.signup-sub{
  font-family:'Lora',Georgia,serif;font-size:clamp(16px,1.5vw,18px);
  line-height:1.6;color:var(--muted,#6E6A60);margin:16px auto 0;max-width:46ch;
}
.signup-form{
  display:flex;gap:10px;justify-content:center;align-items:stretch;
  margin:26px auto 0;max-width:460px;flex-wrap:wrap;
}
.signup-input{
  flex:1 1 240px;min-width:0;font-family:'Inter',sans-serif;font-size:15px;
  color:var(--ink,#14130F);background:var(--bg,#FAF9F6);
  border:1px solid var(--line-strong,rgba(0,0,0,.2));border-radius:2px;
  padding:13px 15px;transition:border-color .2s;
}
.signup-input::placeholder{color:var(--muted-2,#9A948A)}
.signup-input:focus{outline:none;border-color:var(--ink,#14130F)}
.signup-form.is-invalid .signup-input{border-color:#B3402F}
.signup-btn{
  font-family:'Inter',sans-serif;font-weight:600;font-size:12.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--bg,#FAF9F6);
  background:var(--ink,#14130F);border:1px solid var(--ink,#14130F);
  border-radius:2px;padding:13px 26px;cursor:pointer;transition:opacity .2s;
  white-space:nowrap;
}
.signup-btn:hover{opacity:.85}
.signup-btn:disabled{opacity:.5;cursor:default}
.signup-note{
  font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted-2,#9A948A);margin:15px auto 0;
}
.signup-note.is-error{color:#B3402F}
.signup-done{
  font-family:'Lora',Georgia,serif;font-style:italic;
  font-size:clamp(17px,1.7vw,20px);line-height:1.5;
  color:var(--ink,#14130F);margin:8px auto 0;max-width:42ch;
}
/* Hidden honeypot field. Off-screen, out of the tab order, invisible to people. */
.signup-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:480px){
  .signup-form{flex-direction:column}
  .signup-input{flex:0 0 auto}
  .signup-btn{width:100%}
}
