/* ==========================================================================
   Trexa - lead forms. Loaded only where a form is rendered.
   ========================================================================== */
.tform{max-width:640px}
.tform__group{border:0;margin:0 0 var(--sp-6);padding:0}
.tform__legend{font-size:11.5px;font-weight:700;letter-spacing:var(--ls-wide);
  text-transform:uppercase;color:var(--slate);padding:0;margin:0 0 var(--sp-4)}

/* path chooser */
.tform__paths{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}
.tpath{position:relative;display:block;cursor:pointer}
.tpath input{position:absolute;opacity:0;width:1px;height:1px}
.tpath span{display:block;border:1px solid var(--line);border-radius:var(--r-md);
  padding:20px 22px;transition:border-color .16s ease,background .16s ease}
.tpath b{display:block;font-size:var(--fs-md);font-weight:700;letter-spacing:-.015em;margin-bottom:5px}
.tpath em{display:block;font-style:normal;font-size:14px;line-height:1.5;color:var(--body)}
.tpath:hover span{border-color:var(--line-strong)}
.tpath input:checked + span{border-color:var(--blue);background:var(--wash);box-shadow:inset 0 0 0 1px var(--blue)}
.tpath input:focus-visible + span{outline:3px solid var(--green);outline-offset:3px}

.tform__confirmed{font-size:var(--fs-base);line-height:1.6;color:var(--body);
  background:var(--wash);border-left:3px solid var(--blue);border-radius:0 var(--r-sm) var(--r-sm) 0;
  padding:14px 18px;margin:0 0 var(--sp-5)}
.tform__confirmed b{color:var(--navy)}
.tform__change{font:inherit;font-weight:650;color:var(--blue);text-decoration:underline;
  text-underline-offset:3px;padding:0;margin-left:4px}

/* fields */
.tf{margin-bottom:var(--sp-4)}
.tf__label{display:block;font-size:13.5px;font-weight:650;color:var(--navy);margin-bottom:6px}
.tf__req{color:#c0392b}
.tf__opt{font-weight:400;color:var(--slate)}
.tf__hint{font-size:13px;line-height:1.5;color:var(--slate);margin:0 0 7px}
.tf__input{width:100%;border:1px solid var(--line);border-radius:11px;padding:12px 14px;
  font-family:inherit;font-size:var(--fs-base);color:var(--navy);background:var(--white)}
.tf__input--area{min-height:104px;resize:vertical}
.tf__input:focus-visible{outline:3px solid var(--green);outline-offset:2px;border-color:var(--blue)}
.tf__error{font-size:13px;line-height:1.5;color:#a5281b;margin:6px 0 0}
.tf.is-bad .tf__input{border-color:#e08b83;background:#fdf6f5}

/* error summary */
.tform__summary{border:1px solid #f0cdc8;background:#fdf2f1;border-radius:var(--r-md);
  padding:18px 20px;margin:0 0 var(--sp-5)}
.tform__summary:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.tform__summary-title{font-size:var(--fs-base);font-weight:700;color:#9d382c;margin:0 0 8px}
.tform__summary ul{margin:0;padding-left:20px}
.tform__summary li{font-size:14.5px;line-height:1.6;color:#9d382c}
.tform__summary a{color:#9d382c;text-decoration:underline;text-underline-offset:3px}

/* honeypot: off-screen rather than display:none, and out of the tab order */
.tform__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.tform__foot{margin-top:var(--sp-5)}
.tform__legal{font-size:13px;line-height:1.6;color:var(--slate);margin:var(--sp-3) 0 0}
.tform__legal a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.tform__legal--disclosure{padding-top:var(--sp-3);border-top:1px solid var(--line)}

.tform__result{border-radius:var(--r-md);padding:18px 20px;font-size:var(--fs-base);
  line-height:1.6;margin-top:var(--sp-4)}
.tform__result.is-ok{background:#eef8f2;border:1px solid #bfe3cf;color:#1c6b45}
.tform__result.is-bad{background:#fdf2f1;border:1px solid #f0cdc8;color:#9d382c}

.tform__submit[disabled]{opacity:.6;cursor:progress}
.cf-turnstile{margin-top:var(--sp-4)}

@media(max-width:640px){
  .tform__paths{grid-template-columns:1fr}
  .tpath span{padding:16px 18px}
}
