/* Truman Forms - front end */
.tf-form{
  --tf-ink:#4A4436;
  --tf-head:#100F0D;
  --tf-accent:#8E6B45;
  --tf-line:rgba(168,130,92,.34);
  --tf-field:#FFFFFF;
  --tf-btn-bg:#8E6B45;
  --tf-btn-text:#FFFFFF;
  --tf-radius:0px;
  --tf-maxw:820px;
  max-width:var(--tf-maxw);
  margin:0 auto;
  font-family:'Lora',Georgia,serif;
  color:var(--tf-ink);
  text-align:left;
}
.tf-form *{box-sizing:border-box}

.tf-form__head{margin-bottom:26px}
.tf-form__title{
  font-family:'Playfair Display',Georgia,serif;
  font-weight:600;
  font-size:clamp(24px,2.6vw,36px);
  line-height:1.12;
  color:var(--tf-head);
  margin:0 0 12px;
}
.tf-form__sub{font-size:15.5px;line-height:1.8;margin:0;color:var(--tf-ink)}

.tf-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.tf-field--full{grid-column:1 / -1}
.tf-field--half{grid-column:span 1}

.tf-field label{
  display:block;
  font-family:'Karla',Helvetica,Arial,sans-serif;
  font-weight:600;
  font-size:11.5px;
  letter-spacing:.18em;
  text-transform:none;
  color:var(--tf-accent);
  margin-bottom:8px;
}
.tf-req{color:var(--tf-accent)}

.tf-form input[type=text],
.tf-form input[type=email],
.tf-form input[type=tel],
.tf-form input[type=number],
.tf-form input[type=date],
.tf-form input[type=file],
.tf-form select,
.tf-form textarea{
  width:100%;
  padding:14px 16px;
  background:var(--tf-field);
  border:1px solid var(--tf-line);
  border-radius:var(--tf-radius);
  font-family:'Lora',Georgia,serif;
  font-size:15.5px;
  color:var(--tf-head);
  outline:none;
  transition:border-color .3s ease,box-shadow .3s ease;
  appearance:none;
  -webkit-appearance:none;
}
.tf-form textarea{min-height:130px;resize:vertical}
.tf-form select{
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238E6B45' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  padding-right:42px;
}
.tf-form input:focus,.tf-form select:focus,.tf-form textarea:focus{
  border-color:var(--tf-accent);
  box-shadow:0 0 0 1px var(--tf-accent);
}
.tf-form input.tf-invalid,.tf-form select.tf-invalid,.tf-form textarea.tf-invalid{
  border-color:#B3261E;box-shadow:0 0 0 1px #B3261E;
}
.tf-form ::placeholder{color:#9A9384;opacity:1}

.tf-check{display:flex;align-items:flex-start;gap:10px;font-family:'Lora',Georgia,serif;font-size:14.5px;letter-spacing:0;color:var(--tf-ink);text-transform:none;font-weight:400}
.tf-check input{width:auto;margin-top:3px}

.tf-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.tf-form__foot{margin-top:26px}
.tf-form button.tf-form__submit{
  display:inline-block;
  border:0;
  cursor:pointer;
  background:var(--tf-btn-bg);
  color:var(--tf-btn-text);
  padding:17px 42px;
  border-radius:var(--tf-radius);
  font-family:'Karla',Helvetica,Arial,sans-serif;
  font-weight:600;
  font-size:12.5px;
  letter-spacing:.16em;
  transition:background .35s ease,opacity .35s ease;
}
.tf-form button.tf-form__submit:hover{background:#755635}
.tf-form button.tf-form__submit[disabled]{opacity:.55;cursor:default}

.tf-form__note{
  margin:16px 0 0;
  font-size:13px;
  line-height:1.7;
  color:#7A7365;
}
.tf-form__msg{margin-top:16px;font-size:14.5px;line-height:1.7;display:none}
.tf-form__msg.is-on{display:block}
.tf-form__msg.is-ok{color:#2F6B45}
.tf-form__msg.is-err{color:#B3261E}
.tf-form__msg ul{margin:8px 0 0 18px;padding:0}

/* On dark backgrounds */
.tf-form--dark{--tf-ink:rgba(255,255,255,.86);--tf-head:#FFFFFF;--tf-field:rgba(255,255,255,.06);--tf-line:rgba(255,255,255,.3);--tf-accent:#C9A87D}
.tf-form--dark ::placeholder{color:rgba(255,255,255,.45)}

@media(max-width:680px){
  .tf-form__grid{grid-template-columns:1fr}
  .tf-field--half{grid-column:1 / -1}
  .tf-form button.tf-form__submit{width:100%;text-align:center}
}
