/* contact page */
.form-required-note{
  font-size:.875rem;
  color:rgba(107,101,132,.85);
  margin-bottom:1.25rem;
  line-height:1.5;
}
.field-required{
  color:#991b1b;
  font-weight:700;
  letter-spacing:0;
  margin-left:-.12em;
}
.field-error{
  display:block;
  font-size:.8125rem;
  line-height:1.45;
  color:#991b1b;
  font-weight:500;
  padding-left:.125rem;
}
.field-error[hidden]{display:none;}
.form-field input.is-invalid,
.form-field textarea.is-invalid{
  border-color:#c24a4a;
  box-shadow:0 0 0 4px rgba(194,74,74,.12);
}
.form-field{display:flex;flex-direction:column;gap:.5rem;}
.form-field label{
  font-family:'Space Mono',monospace;
  font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(49,45,75,.55);font-weight:700;
}
.form-field input,
.form-field textarea,
.form-field select{
  width:100%;
  border:1px solid rgba(124,106,247,.15);
  background:#fff;
  border-radius:.875rem;
  padding:.875rem 1.125rem;
  font-family:'Space Grotesk',sans-serif;
  font-size:1rem;
  color:var(--color-bright);
  transition:border-color .25s,box-shadow .25s,background .25s;
  outline:none;
}
.form-field input::placeholder,
.form-field textarea::placeholder{color:rgba(107,101,132,.45);}
.form-field input:focus,
.form-field textarea:focus,
.form-field select:focus,
.form-field input:focus-visible,
.form-field textarea:focus-visible,
.form-field select:focus-visible{
  border-color:var(--color-em);
  box-shadow:0 0 0 4px rgba(124,106,247,.10);
  background:#fff;
}
.form-field textarea{min-height:140px;resize:vertical;line-height:1.5;}

.submit-btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:3rem;padding:0 2rem;
  background:linear-gradient(90deg, #a848ff, #ff6d6d);
  border-radius:99px;border:none;cursor:pointer;
  font-family:'Space Grotesk',sans-serif;
  font-size:.9375rem;font-weight:700;color:#fff;
  box-shadow:0 4px 24px rgba(168,72,255,.28),0 1px 4px rgba(255,109,109,.15);
  transition:transform .25s var(--ease-sig),box-shadow .25s;
}
.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 32px rgba(168,72,255,.38);}
.submit-btn:disabled{opacity:.65;cursor:not-allowed;transform:none;}
.submit-btn:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(143,51,233,.4),0 8px 32px rgba(168,72,255,.38);}

#contact-form[hidden]{display:none;}

.form-required-note[hidden]{display:none;}

#form-success,
#form-error{
  margin-top:1.5rem;
  padding:1.25rem 1.5rem;
  border-radius:1rem;
}
#form-success{
  background:rgba(124,106,247,.06);
  border:1px solid rgba(124,106,247,.2);
}
#form-error{
  background:rgba(194,74,74,.06);
  border:1px solid rgba(194,74,74,.22);
}
#form-success[hidden],
#form-error[hidden]{display:none;}

.info-card{
  background:#fff;
  border:1px solid rgba(124,106,247,.1);
  border-radius:1.25rem;
  padding:1.75rem;
  transition:border-color .35s,transform .35s,box-shadow .35s;
}
.info-card:hover{
  border-color:rgba(124,106,247,.3);
  transform:translateY(-3px);
  box-shadow:0 8px 28px rgba(124,106,247,.08);
}
.info-card:focus-within{
  border-color:rgba(124,106,247,.3);
  box-shadow:0 8px 28px rgba(124,106,247,.08);
}

@media(max-width:919px){
  section{padding-top:3.5rem !important;padding-bottom:3.5rem !important;}
  .hero-contact{padding:6rem 1.25rem 2rem !important;}
  .contact-form-card{padding:1.25rem !important;overflow:hidden;}
  .contact-form-card h2{font-size:clamp(1.25rem,5vw,1.5rem) !important;}
  .form-field label{font-size:.75rem !important;}
  .info-card{padding:1.25rem !important;}
  .netlify-recaptcha-wrap{max-width:100%;overflow-x:auto;}
  .netlify-recaptcha-wrap iframe{max-width:100%;}
}
@media(min-width:720px){
  .contact-grid{grid-template-columns:1.4fr 1fr !important;}
}
@media(max-width:767px){
  .name-row{grid-template-columns:1fr !important;}
}
