/* ---------------------------------------------------------------------
   Surface Noise — shared tokens, signup component and footer sign-up box.
   Loaded on every front-end page (the footer box is sitewide).
--------------------------------------------------------------------- */

:root{
  --snr-ink:#111;
  --snr-body:#555;
  --snr-muted:#888;
  --snr-muted-2:#999;
  --snr-rule:#e5e5e5;
  --snr-rule-2:#ddd;
  --snr-band:#f3f3f2;
  --snr-error:#b3261e;
  --snr-accent:#1f6f4a;       /* buy buttons + subscribe accents — same green as Release pages */
  --snr-accent-hover:#18543a;
  --snr-subscribe-bg:#eee;    /* "Notify me" style subscribe button */
  --snr-radius:4px;
  --snr-serif:Georgia,'Times New Roman',serif;
  --snr-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}

.snr-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.snr-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---- Signup component (hero, in-article, end row, footer) --------- */
.snr-signup,.snr-signup *{box-sizing:border-box}
.snr-signup__lead{font-size:14px;line-height:1.4;color:var(--snr-ink);margin:0 0 8px}
.snr-signup__form{margin:0}
.snr-signup__row{display:flex;gap:8px}
.snr-signup__input{
  flex:1 1 auto;min-width:0;min-height:44px;padding:0 12px;margin:0;
  font:15px/1.2 var(--snr-sans);color:var(--snr-ink);background:#fff;
  border:1px solid var(--snr-rule);border-radius:var(--snr-radius);box-shadow:none;
}
.snr-signup__input:focus{outline:none;border-color:var(--snr-accent);box-shadow:inset 0 0 0 1px var(--snr-accent)}
.snr-signup.is-error .snr-signup__input{border-color:var(--snr-error);box-shadow:inset 0 0 0 1px var(--snr-error)}
.snr-signup__button{
  flex:none;min-height:44px;padding:0 18px;margin:0;cursor:pointer;
  font:600 14px/1 var(--snr-sans);color:var(--snr-accent);background:var(--snr-subscribe-bg);
  border:1px solid var(--snr-accent);border-radius:var(--snr-radius);
}
.snr-signup__button:hover{background:#e2e2e2;color:var(--snr-accent-hover);border-color:var(--snr-accent-hover)}
.snr-signup__button[disabled]{opacity:.55;cursor:progress}
.snr-signup__msg{margin:6px 0 0;font-size:13px;line-height:1.35;color:var(--snr-error)}
.snr-signup__msg:empty{display:none}
.snr-signup__success{margin:0;padding:10px 0;font:600 15px/1.4 var(--snr-sans);color:var(--snr-ink)}
.snr-signup__success::before{content:"✓ ";color:var(--snr-accent)}

@media (max-width:767px){
  .snr-signup__input,.snr-signup__button{min-height:48px}
  .snr-signup__input{font-size:16px} /* 16px stops iOS zooming on focus */
}

/* ---- Footer sign-up box (sitewide, above the Kadence footer) ------ */
.snr-footer-signup{background:var(--snr-band);border-top:1px solid var(--snr-rule);border-bottom:1px solid var(--snr-rule);
  margin:56px 0 0;padding:44px 24px;font-family:var(--snr-sans);color:var(--snr-ink);text-align:center}
.snr-footer-signup__inner{max-width:560px;margin:0 auto}
.snr-footer-signup__kicker{margin:0 0 10px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--snr-muted)}
.snr-footer-signup__title{font:400 30px/1.15 var(--snr-serif);color:var(--snr-ink);margin:0 0 12px;letter-spacing:-.005em}
.snr-footer-signup__copy{font-size:15px;line-height:1.6;color:var(--snr-body);margin:0 0 22px}
.snr-footer-signup .snr-signup{max-width:460px;margin:0 auto;text-align:left}
.snr-footer-signup .snr-signup__success{text-align:center}
.snr-footer-signup__trust{font-size:12px;color:var(--snr-muted-2);margin:12px 0 0}
@media (max-width:767px){
  .snr-footer-signup{margin-top:40px;padding:32px 16px}
  .snr-footer-signup__title{font-size:24px}
}
