.contact-page{
  padding-top:clamp(130px, 18vh, 190px);
}

.form-wrap{
  max-width:660px;
}
.field{
  display:flex;
  flex-direction:column;
  gap:0.5rem;
  margin-bottom:1.5rem;
}
.field label{
  font-size:0.72rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:var(--muted);
}
.field label .optional{
  margin-left:0.5rem;
  color:var(--faint);
  text-transform:none;
  letter-spacing:0.02em;
  font-size:0.7rem;
}
.field input,
.field select,
.field textarea{
  width:100%;
  font-family:'Archivo',sans-serif;
  font-size:0.95rem;
  color:var(--bone);
  background:rgba(244,241,233,0.02);
  border:1px solid var(--line);
  border-radius:5px;
  padding:0.85rem 1rem;
  transition:border-color .3s var(--ease), background .3s var(--ease);
}
.field textarea{
  min-height:160px;
  resize:vertical;
  line-height:1.6;
}
.field input:focus,
.field select:focus,
.field textarea:focus{
  outline:none;
  border-color:rgba(184,146,92,0.7);
  background:rgba(244,241,233,0.04);
}
.field input::placeholder,
.field textarea::placeholder{
  color:rgba(244,241,233,0.35);
}
.field select{
  appearance:none;
  -webkit-appearance:none;
  background-image:linear-gradient(45deg, transparent 50%, var(--brass) 50%), linear-gradient(135deg, var(--brass) 50%, transparent 50%);
  background-position:calc(100% - 20px) calc(1.15rem), calc(100% - 15px) calc(1.15rem);
  background-size:5px 5px, 5px 5px;
  background-repeat:no-repeat;
  padding-right:2.5rem;
}
.field select option{color:#0b0b0a;}
.form-intro{
  display:flex;
  flex-direction:column;
  gap:0.8rem;
  max-width:54ch;
  margin-bottom:2.6rem;
}
.form-intro .form-lead{
  color:var(--bone);
  font-size:1.08rem;
  line-height:1.5;
}
.form-intro p{
  color:var(--muted);
  font-size:0.95rem;
  line-height:1.65;
}
.btn{
  display:inline-flex;
  align-items:center;
  gap:0.6rem;
  font-family:'Archivo',sans-serif;
  font-size:0.72rem;
  font-weight:500;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--ink);
  background:var(--brass);
  border:1px solid var(--brass);
  border-radius:5px;
  padding:0.95rem 2.1rem;
  cursor:pointer;
  transition:background .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease);
}
.btn:hover{
  background:var(--brass-dim);
  border-color:var(--brass-dim);
  transform:translateY(-2px);
}

input:focus-visible, select:focus-visible, textarea:focus-visible{
  outline:2px solid var(--brass);
  outline-offset:3px;
}
