/* Contact Form 7: retain its existing fields, submission and anti-spam behaviour. */
.wpcf7 .contact-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:22px 24px;
  margin:24px 0 0;
  min-width:0;
}
.wpcf7 .contact-form > .col-1,
.wpcf7 .contact-form > .col-2 {
  float:none;
  width:auto;
  max-width:none;
  min-width:0;
  padding:0;
  margin:0;
}
.wpcf7 .contact-form > .col-1 {display:grid;align-content:start;gap:14px}
.wpcf7 .contact-form > .col-2 {display:flex;flex-direction:column}
.wpcf7 .contact-form p {margin:0;padding:0}
.wpcf7 .contact-form > p:empty {display:none}
.wpcf7 .contact-form label {
  display:block;
  margin:0 0 7px;
  color:var(--text,#222);
  font:inherit;
  font-size:14px;
  font-weight:400;
  line-height:1.5;
}
.wpcf7 .contact-form .required {color:#c62828}
.wpcf7 .contact-form .wpcf7-form-control-wrap {display:block;min-width:0;width:100%}
.wpcf7 .contact-form input:is([type="text"],[type="email"],[type="tel"],[type="url"],[type="number"],[type="date"]),
.wpcf7 .contact-form select,
.wpcf7 .contact-form textarea {
  display:block;
  box-sizing:border-box;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:10px 12px;
  border:1px solid #dedede;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  color:var(--text,#222);
  font:inherit;
  font-size:15px;
  line-height:1.4;
  transition:border-color .15s,box-shadow .15s;
}
.wpcf7 .contact-form input:is([type="text"],[type="email"],[type="tel"],[type="url"],[type="number"],[type="date"]),
.wpcf7 .contact-form select {height:42px}
.wpcf7 .contact-form > .col-2 > p {display:flex;flex:1;flex-direction:column}
.wpcf7 .contact-form > .col-2 .wpcf7-form-control-wrap {display:flex;flex:1;flex-direction:column}
.wpcf7 .contact-form textarea {flex:1;height:100%;min-height:190px;resize:vertical}
.wpcf7 .contact-form :is(input,select,textarea):focus-visible {
  border-color:var(--blue,#0a86c9);
  outline:2px solid transparent;
  box-shadow:0 0 0 3px rgb(10 134 201 / 14%);
}
.wpcf7 .contact-form .wpcf7-not-valid {border-color:#c62828}
.wpcf7 .contact-form .wpcf7-not-valid-tip {display:block;margin-top:6px;color:#b42318;font-size:13px;line-height:1.45}
.wpcf7 .contact-form > :is(.cf7-cf-turnstile,.wpcf7-acceptance,.sumbit-contact,.submit-contact) {grid-column:1 / -1;min-width:0}
.wpcf7 .contact-form > .cf7-cf-turnstile {justify-self:start;margin:0!important;max-width:100%}
.wpcf7 .contact-form .cf-turnstile-failed-text {font-size:13px;line-height:1.5;color:#b42318;overflow-wrap:anywhere}
.wpcf7 .contact-form > :is(.sumbit-contact,.submit-contact) {text-align:center;margin-top:4px}
.wpcf7 .contact-form :is(.sumbit-contact,.submit-contact) p {position:relative;display:inline-block;max-width:100%}
.wpcf7 .contact-form .wpcf7-submit {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:auto;
  min-width:122px;
  min-height:42px;
  margin:0;
  padding:11px 25px;
  border:1px solid #3f3f3f;
  border-radius:0;
  background:#3f3f3f;
  box-shadow:none;
  color:#fff;
  font-family:var(--font-cond,'Arial Narrow',Arial,sans-serif);
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .15s,border-color .15s;
}
.wpcf7 .contact-form .wpcf7-submit:hover:not(:disabled) {border-color:var(--blue,#0a86c9);background:var(--blue,#0a86c9)}
.wpcf7 .contact-form .wpcf7-submit:disabled {cursor:not-allowed}
.wpcf7 .contact-form .wpcf7-spinner {position:absolute;left:100%;top:50%;margin:-12px 0 0 10px}
.wpcf7 form .wpcf7-response-output {margin:22px 0 0;padding:12px 16px;border-width:1px;font-size:14px;line-height:1.6}
.wpcf7 form:is(.invalid,.unaccepted,.failed,.aborted) .wpcf7-response-output {color:#8a4100;background:#fff8ed}
.wpcf7 form.sent .wpcf7-response-output {color:#256b36;background:#f0faf2}
@media(max-width:640px) {
  .wpcf7 .contact-form {grid-template-columns:minmax(0,1fr);gap:18px}
  .wpcf7 .contact-form textarea {min-height:180px}
  .wpcf7 .contact-form > :is(.sumbit-contact,.submit-contact) {text-align:left;margin-top:0}
  .wpcf7 .contact-form .wpcf7-spinner {position:static;margin:0 0 0 10px;vertical-align:middle}
}
@media(prefers-reduced-motion:reduce) {.wpcf7 .contact-form :is(input,select,textarea){transition:none}}
