/*
 * form fields (HubSpot embeds, CF7, search, Betheme). Flat, hairline border, blue focus ring.
 */
body.wt-site :is(
  input[type=text], input[type=email], input[type=tel], input[type=url], input[type=number],
  input[type=password], input[type=search], input[type=date], select, textarea
) {
  font-family: var(--wt-font-body) !important;
  font-size: 15px !important;
  color: var(--wt-ink) !important;
  background-color: #fff !important;
  border: 1px solid var(--wt-line-strong) !important;
  border-radius: var(--wt-r-sm) !important;
  padding: 11px 14px !important;
  box-shadow: none !important;
  transition: border-color var(--wt-fast) var(--wt-ease), box-shadow var(--wt-fast) var(--wt-ease);
}
body.wt-site :is(input, select, textarea)::placeholder {
  color: #8a93a3;
  opacity: 1;
}
body.wt-site :is(
  input[type=text], input[type=email], input[type=tel], input[type=url], input[type=number],
  input[type=password], input[type=search], input[type=date], select, textarea
):focus {
  border-color: var(--wt-blue) !important;
  box-shadow: var(--wt-ring) !important;
  outline: none;
}
body.wt-site :is(input[type=checkbox], input[type=radio]) {
  accent-color: var(--wt-blue);
}

/* HubSpot */
body.wt-site .hbspt-form :is(.hs-form-field) {
  margin-bottom: 12px;
}
body.wt-site .hbspt-form label:not(.hs-form-checkbox-display):not(.hs-form-radio-display) {
  font-size: 14px;
  font-weight: 600;
  color: var(--wt-ink);
}
body.wt-site .hbspt-form :is(.hs-form-checkbox-display, .hs-form-radio-display) {
  font-size: 14px;
  color: var(--wt-text);
}
body.wt-site .hbspt-form .hs-error-msgs label {
  color: #c2410c !important;
  font-weight: 500;
  font-size: 13px;
}
body.wt-site .hbspt-form .hs-button {
  padding: 13px 28px !important;
}

/* Mobile: thumb-sized checkboxes/radios with padded labels */
@media (max-width: 767px) {
  body.wt-site :is(input[type=checkbox], input[type=radio]) {
    width: 20px !important;
    height: 20px !important;
    margin: 0 10px 0 0 !important;
    vertical-align: middle;
    flex: 0 0 20px;
  }
  body.wt-site .hbspt-form :is(.hs-form-checkbox-display, .hs-form-radio-display) {
    display: flex !important;
    align-items: center;
    min-height: var(--wt-tap-min);
  }
}
