/* contact.css — Kontakt V5 (0.11.0), hand-written. Loaded after contact-design.css (generated, never edit) on the
   shell page `contact` only. HTML Forms' own stylesheet is off (its setting `load_stylesheet` = 0): the fields stay
   the design's. Design tokens only. */

/* HTML Forms wraps the markup in div.hf-fields-wrap inside our form.ct-form */
.ct-form .hf-fields-wrap > h2:first-child { margin-top: 0; }

/* stat row without the second stat (owner question §5/1): one stat spans the card */
.ct-stats .ct-stat:only-child { grid-column: 1 / -1; }

/* result notice (HTML Forms inserts p.hf-message[role=alert] into .hf-messages) */
.ct-form .hf-messages:empty { display: none; }
.ct-form .hf-message { margin: 16px 0 0; padding: 14px 18px; border: 1.5px solid var(--line); border-left: 4px solid var(--blue); border-radius: 12px; background: #fff; color: var(--ink); font-size: 15px; line-height: 1.5; }
.ct-form .hf-message-success { border-color: var(--adm-success); border-left-color: var(--adm-success); background: var(--adm-success-tint); color: var(--ink); }
.ct-form .hf-message-warning { border-color: var(--dpd-red); border-left-color: var(--dpd-red); background: #fff; color: var(--ink); }
.ct-form .hf-message b { font-weight: 600; overflow-wrap: anywhere; }
.ct-form .hf-message:focus { outline: 3px solid var(--navy); outline-offset: 2px; }

/* the field the server rejected (contact.js sets aria-invalid) */
.ct-f [aria-invalid="true"] { border-color: var(--dpd-red); }

/* sending state */
.ct-form.mc4wp-loading .ct-submit { cursor: progress; opacity: .8; }
.ct-submit:focus-visible { outline: 3px solid var(--navy); outline-offset: 2px; }

/* no JavaScript: HTML Forms prints a <noscript> line inside the form */
.ct-form noscript { display: block; margin-top: 12px; font-size: 14px; color: var(--muted); }
