.contact-hero{
  padding:90px 0 50px;
  text-align:center;
}
.contact-title{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(32px, 5vw, 56px);
  text-transform:uppercase;
  line-height:1.05;
  margin-bottom:18px;
}
.contact-sub{
  color:var(--muted);
  max-width:480px;
  margin:0 auto;
  font-size:15px;
}

.contact-form-section{
  padding:0 0 100px;
}
.contact-form{
  max-width:560px;
  margin:0 auto;
  padding:32px 30px 30px;
}

.form-field{
  margin-bottom:22px;
}
.form-field label{
  display:block;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:0.1em;
  color:var(--gold);
  margin-bottom:8px;
}
.form-field input,
.form-field textarea{
  width:100%;
  background:var(--void-2);
  border:1px solid var(--line);
  border-radius:3px;
  color:var(--ink);
  font-family:var(--font-body);
  font-size:14px;
  padding:12px 14px;
  resize:vertical;
  transition:border-color 0.2s ease;
}
.form-field input:focus,
.form-field textarea:focus{
  outline:none;
  border-color:var(--blob);
}
.form-field input:invalid:not(:placeholder-shown),
.form-field textarea:invalid:not(:placeholder-shown){
  border-color:var(--kronos);
}

.contact-form .btn{
  width:100%;
  border:none;
  cursor:pointer;
}
.contact-form .btn:disabled{
  opacity:0.5;
  cursor:not-allowed;
  transform:none;
}

.form-status{
  font-family:var(--font-mono);
  font-size:12.5px;
  min-height:18px;
  margin-bottom:16px;
}
.form-status.success{color:var(--blob);}
.form-status.error{color:var(--kronos);}
