/* Signup + site footer for inner, legal and contact pages.
   Uses each page's existing colour tokens so cream and dark surfaces both work. */

.ha-sr{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

.ha-signup{
  border-top:1px solid var(--line, rgba(26,22,16,.12));
  background:var(--bg-2, #f4efe6);
  padding:clamp(44px,6vw,80px) 0;
}
.ha-signup .wrap{max-width:720px;margin:0 auto;padding:0 clamp(20px,3vw,40px)}
.ha-signup-kicker{
  font-size:11px;letter-spacing:.32em;text-transform:uppercase;
  color:var(--gold, #b49461);font-weight:500;
  display:flex;align-items:center;gap:12px;margin:0;
}
.ha-signup-kicker::before{content:"";width:34px;height:1px;background:var(--gold-bright, #c9a227)}
.ha-signup h2{
  font-family:var(--serif);font-weight:600;font-size:clamp(26px,3.4vw,36px);
  line-height:1.12;color:var(--heading, #1a1610);
  margin:14px 0 10px;border:0;padding:0;
}
.ha-signup > .wrap > p,
.ha-signup .ha-signup-lead{
  font-size:15px;line-height:1.75;color:var(--ink, #4a4338);
  max-width:40em;margin:0 0 22px;font-weight:300;
}
.ha-signup-form{
  display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:stretch;
}
.ha-signup-form input[type=text],
.ha-signup-form input[type=email]{
  background:var(--bg-3, #fff);
  border:1px solid var(--line-strong, rgba(26,22,16,.2));
  color:var(--heading, #1a1610);
  padding:13px 14px;font-family:inherit;font-size:13px;border-radius:2px;width:100%;
}
.ha-signup-form button{
  font-family:inherit;font-size:12px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:500;padding:0 22px;min-height:46px;
  border:1px solid var(--line-strong, rgba(26,22,16,.2));
  background:transparent;color:var(--heading, #1a1610);
  cursor:pointer;border-radius:2px;white-space:nowrap;
}
.ha-signup-form button:hover{border-color:var(--gold, #b49461);color:var(--gold-light, #7a6234)}
.ha-signup-form button:disabled{opacity:.6;cursor:wait}
.ha-signup-consent{
  grid-column:1/-1;font-size:12px;color:var(--muted, #6b6254);
  line-height:1.55;margin:4px 0 0;display:flex;gap:10px;align-items:flex-start;
  font-weight:300;
}
.ha-signup-consent input{width:auto;margin-top:3px;flex:none}
.ha-signup-privacy{
  grid-column:1/-1;font-size:12px;color:var(--muted, #6b6254);
  line-height:1.55;margin:0;
}
.ha-signup-privacy a{color:var(--gold-light, #7a6234)}
.ha-signup-thanks{
  font-family:var(--serif);font-size:20px;color:var(--gold-light, #7a6234);margin:0;
}

footer.ha-foot{
  border-top:1px solid rgba(241,233,216,.12);
  background:#080604;padding:40px 0 56px;font-size:13px;color:#8f8f8f;
}
footer.ha-foot .wrap{max-width:1520px;margin:0 auto;padding:0 clamp(20px,3vw,40px);display:block}
footer.ha-foot .ha-foot-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:28px 36px;
  padding-bottom:28px;border-bottom:1px solid rgba(241,233,216,.12);margin-bottom:18px;
}
footer.ha-foot .ha-foot-brand{
  font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:.16em;color:#f6f1e6;
}
footer.ha-foot .ha-foot-brand span{color:#b49461}
footer.ha-foot .ha-foot-brand p{
  margin:12px 0 0;font-size:13.5px;line-height:1.7;font-family:var(--sans, inherit);
  letter-spacing:0;font-weight:300;color:#8f8f8f;text-transform:none;
}
footer.ha-foot h3{
  font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:#b49461;
  margin:0 0 12px;font-weight:500;font-family:var(--sans, inherit);border:0;padding:0;
}
footer.ha-foot .ha-foot-col a,
footer.ha-foot .ha-foot-col span{display:block;font-size:13.5px;padding:4px 0;color:#8f8f8f}
footer.ha-foot .ha-foot-col a:hover{color:#cfae7c}
footer.ha-foot .ha-foot-legal{
  display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 14px;
}
footer.ha-foot .ha-foot-legal a{font-size:12px;color:#8f8f8f}
footer.ha-foot .ha-foot-legal a:hover{color:#cfae7c}
footer.ha-foot .ha-foot-copy{font-size:12px;line-height:1.7;color:#7d7d7d;margin:0;max-width:62em}
footer.ha-foot .ha-aura-inline,
.ha-aura-inline{
  background:none;border:0;padding:0;margin:0;cursor:pointer;font:inherit;
  color:#b49461;text-decoration:underline;text-underline-offset:2px;
}
footer.ha-foot .ha-aura-inline:hover,
.ha-aura-inline:hover{color:#cfae7c}

@media (max-width:800px){
  .ha-signup-form{grid-template-columns:1fr}
  footer.ha-foot .ha-foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
  footer.ha-foot .ha-foot-grid{grid-template-columns:1fr}
}
