/* Annex Roofing — contact form states.
   Append to the site stylesheet, or enqueue separately. Uses Design System v2
   tokens only; no new colour is introduced. */

/* Honeypot: removed from layout, from tab order and from the accessibility tree. */
.cf-hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);
  clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}

/* Result states */
.cform-state{border-radius:6px;padding:22px 24px;margin-bottom:26px;scroll-margin-top:calc(var(--ph-h) + 16px)}
.cform-state:focus{outline:2px solid var(--annex-red-dark);outline-offset:2px}
.cform-state h3{margin:0 0 8px;font-size:20px;color:var(--annex-text)}
.cform-state p{margin:0;color:var(--annex-text-secondary)}
.cform-state--ok{background:var(--annex-light);border:1px solid var(--annex-divider);
  border-left:3px solid var(--annex-navy)}
.cform-state--error{background:var(--annex-white);border:1px solid var(--annex-divider);
  border-left:3px solid var(--annex-red-dark);color:var(--annex-text)}

/* Sending state */
.cform button[type="submit"][disabled]{opacity:.72;cursor:progress}

/* The mobile sticky CTA must never sit over a result message. */
@media (max-width:767px){
  .cform-state{margin-bottom:22px}
}
