/* Contact enquiry form */
.contact-enquiry-card{
  border:1px solid #eef3fb;
  border-radius:18px;
  box-shadow:0 14px 34px rgba(15,23,42,.08);
}
.contact-form-alert{
  padding:12px 14px;
  border-radius:12px;
  font-size:.95rem;
  margin-bottom:1rem;
}
.contact-form-alert--error{
  background:#fef2f2;
  border:1px solid #fecaca;
  color:#991b1b;
}
.contact-form-alert--success{
  background:#f0fdf4;
  border:1px solid #bbf7d0;
  color:#166534;
}
.form-group{margin-bottom:1rem}
.form-group label{font-weight:700;font-size:.9rem;margin-bottom:.35rem;display:block}
.form-input,.form-select,.form-textarea{
  width:100%;
  padding:.55rem .75rem;
  border:1px solid #dbe7f5;
  border-radius:10px;
  font-size:1rem;
}
.form-input:focus,.form-select:focus,.form-textarea:focus{
  border-color:var(--brand,#2587d2);
  outline:0;
  box-shadow:0 0 0 .2rem rgba(37,135,210,.15);
}
.form-input.is-invalid,.form-select.is-invalid,.form-textarea.is-invalid{
  border-color:#dc3545;
}
.form-field-error{
  color:#dc3545;
  font-size:.85rem;
  margin:.35rem 0 0;
}
.form-hint{font-size:.8rem;color:#64748b;margin-top:.25rem}
.contact-honeypot{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}
.contact-recaptcha-note{
  font-size:.78rem;
  color:#64748b;
  margin-top:.5rem;
}
.contact-recaptcha-wrap.is-invalid .contact-recaptcha-note{color:#dc3545}
#contact-recaptcha-error{color:#dc3545;font-size:.85rem;margin-top:.35rem}

.map-embed{
  position:relative;
  padding-top:75%;
  overflow:hidden;
  border-radius:12px;
  border:1px solid rgba(37,135,210,.18);
  margin-top:1.25rem;
  background:#e2e8f0;
}
.map-embed iframe{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:100%;
  border:0;
}
