/* =========================================================================
 * HubSpot embedded forms
 * =========================================================================
 * Moved from the WPCodeBox snippet "Hubspot Forms - Styling". Only the
 * `.hs-form` rules are carried over: those match the forms HubSpot's script
 * injects into blog posts (e.g. Seafood Expo, white paper and buyer's-guide
 * forms). The old `.hs-contactForm` rules (a Bricks-era contact form) matched
 * nothing on any page and were dropped.
 *
 * Values are exactly what the old snippet resolved to (it read Automatic.css
 * variables). The brand blue here is the pre-rebrand #0081c2, unchanged, so
 * these forms look the same as before; swap to the CAI action color if the
 * forms should follow the new palette.
 * ---------------------------------------------------------------------- */
.hs-form {
  --hs-space-xs: clamp(0.8441720333rem, calc(-0.0160573332vw + 0.8477849332rem), 0.8333333333rem);
  --hs-space-s: clamp(1.1252813203rem, calc(0.1847684143vw + 1.0837084271rem), 1.25rem);
  --hs-space-m: clamp(1.5rem, calc(0.5555555556vw + 1.375rem), 1.875rem);
  --hs-text-xs: clamp(0.75rem, calc(0.3703703704vw + 0.6666666667rem), 1rem);
  --hs-text-m: clamp(1rem, calc(0.2777777778vw + 0.9375rem), 1.1875rem);
  --hs-primary: #0081c2;
  --hs-neutral: #000000;
  --hs-danger: #dc3545;
  --hs-white: #ffffff;
  --hs-radius-xl: 11.25px;
  --hs-transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s, border 0.3s ease-in-out 0s;
}
.hs-form fieldset {
  max-width: 100% !important;
  margin-bottom: var(--hs-space-m) !important;
}
.hs-form fieldset label {
  margin-bottom: 0 !important;
}
.hs-form fieldset label span {
  margin-left: 12px;
  color: var(--hs-neutral);
  font-weight: 600;
  font-size: var(--hs-text-xs);
}
.hs-form fieldset label span.hs-form-required {
  color: var(--hs-primary);
}
.hs-form fieldset div.input {
  border: 0 !important;
  padding-right: 0 !important;
  line-height: 20px !important;
}
.hs-form fieldset div.input input,
.hs-form fieldset div.input textarea,
.hs-form fieldset div.input select {
  width: 100% !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  padding: 0 !important;
  line-height: 20px !important;
}
.hs-form fieldset div.input textarea {
  min-height: auto !important;
}
.hs-form fieldset div.input select {
  margin-top: var(--hs-space-xs);
  color: var(--hs-neutral);
  font-weight: 600;
  font-size: var(--hs-text-xs);
  line-height: 2.5em !important;
}
.hs-form fieldset div.input select:focus-visible {
  outline: none !important;
}
.hs-form fieldset div.input input:focus-visible,
.hs-form fieldset div.input textarea:focus-visible {
  outline: none !important;
}
.hs-form fieldset div.input input::placeholder,
.hs-form fieldset div.input textarea::placeholder {
  color: transparent !important;
}
.hs-form fieldset ul.hs-error-msgs li label {
  margin-bottom: 0 !important;
}
.hs-form .hs_recaptcha {
  padding-left: 12px !important;
  display: none;
}
.hs-form .hs_submit {
  margin-left: 12px;
  margin-top: var(--hs-space-s);
}
.hs-form .hs_submit input[type=submit] {
  background: var(--hs-primary);
  color: var(--hs-white);
  padding-block: 0.9em;
  padding-inline: 1.5em;
  min-inline-size: 8.75rem;
  line-height: 1;
  font-size: var(--hs-text-m);
  font-weight: 600;
  font-style: normal;
  text-transform: none;
  letter-spacing: 0;
  text-decoration: none;
  border-width: 2px;
  border-style: solid;
  border-radius: var(--hs-radius-xl);
  border-color: currentcolor;
  transition: var(--hs-transition);
  justify-content: center;
  text-align: center;
}
.hs-form .hs_submit input[type=submit]:hover {
  background-color: var(--hs-white);
  color: var(--hs-primary);
  border-color: var(--hs-primary);
}
.hs-form ul.hs-error-msgs {
  padding-left: var(--hs-space-xs);
  margin-top: var(--hs-space-xs);
}
.hs-form ul.hs-error-msgs li {
  list-style: none;
}
.hs-form ul.hs-error-msgs li label {
  color: var(--hs-danger);
  font-weight: 600;
  font-size: var(--hs-text-xs);
  margin-bottom: var(--hs-space-xs);
}

@media (max-width: 767px) {
  .hs-form fieldset {
    margin-bottom: var(--hs-space-s) !important;
  }
  .hs-form fieldset div.input {
    margin: 0 !important;
    padding: 0 !important;
  }
  .hs-form fieldset label span {
    margin-left: 0 !important;
  }
  .hs-form fieldset .hs_firstname {
    margin-bottom: var(--hs-space-s) !important;
  }
  .hs-form .hs_recaptcha {
    padding-left: 0 !important;
  }
  .hs-form .hs_submit {
    margin-left: 0;
  }
  .hs-form ul.hs-error-msgs {
    padding-left: 0;
  }
}
