/* Contact-only enhancement; preserves the approved site colour and type system. */
.hero-coverage { display:none; }
@media (min-width:1025px) {
  .trust-strip { display:none; }
  .hero-copy .hero-coverage {
    display:block; max-width:430px; margin:22px 0 0;
    font-size:.82rem; font-weight:500; line-height:1.8;
    color:rgba(255,255,255,.82); letter-spacing:0;
  }
}
.contact-card { gap:16px; }
.contact-card label { font-size:.94rem; }
.contact-card input, .contact-card textarea { font-size:1rem; min-width:0; }
.contact-card textarea { resize:vertical; min-height:115px; }
.form-contact-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; min-width:0; }
.form-contact-row label { min-width:0; }
.contact-card .form-hint {
  color:var(--muted); font-size:.8rem; font-weight:400; line-height:1.5; margin:0;
}
.contact-card .form-attachments { margin:-4px 0 0; }
.contact-card .form-note { font-size:.76rem; line-height:1.55; }
.contact-card .form-privacy { margin-top:-9px; }
.form-privacy a { color:var(--blue-700); text-decoration:underline; text-underline-offset:2px; }
.form-submit { width:100%; gap:10px; }
.form-submit:disabled { opacity:.75; cursor:wait; transform:none; }
.form-spinner { display:none; width:18px; height:18px; border:2px solid rgba(255,255,255,.35); border-top-color:#fff; border-radius:50%; }
[data-sending='true'] .form-spinner { display:inline-block; animation:ckc-form-spin .8s linear infinite; }
@keyframes ckc-form-spin { to { transform:rotate(360deg); } }
.form-status { border-radius:14px; padding:15px 17px; border:1px solid var(--line); font-size:.92rem; line-height:1.55; scroll-margin-top:90px; }
.form-status p { margin:0; color:inherit; }
.form-status[data-state='success'] { color:#145b43; background:#edf8f3; border-color:#a3d9c0; }
.form-status[data-state='error'] { color:#763326; background:#fff4ef; border-color:#efc6b9; }
.form-recovery { display:flex; flex-wrap:wrap; gap:9px 18px; margin-top:10px; }
.form-recovery a { color:inherit; text-decoration:underline; text-underline-offset:3px; font-weight:700; font-size:.86rem; }
.contact-card [aria-invalid='true'] { border-color:#bb5747; }
.form-honeypot { display:none !important; }
@media (max-width:620px) {
  .form-contact-row { grid-template-columns:1fr; gap:16px; }
  .contact-card { padding:22px 18px; }
}
@media (prefers-reduced-motion:reduce) { .form-spinner { animation:none; } }
