.hbspt-form form label:not(.hs-error-msg) > span,
.hbspt-form form select,
.hbspt-form form input,
.hbspt-form form textarea {
  color: #e5e7eb !important;
  font-weight: 400;
  font-size: 14px;
}

.hbspt-form form .field {
  margin: 0 !important;
}

.hbspt-form form select,
.hbspt-form form input,
.hbspt-form form textarea {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background: #171717 !important;
  border: 1px solid #262626 !important;
  border-radius: 6px !important;
  color: #fafafa !important;
  font-family: 'Sora', sans-serif !important;
  font-feature-settings: 14px !important;
  font-size: 0.875rem !important;
  padding: 0.344rem 0.5rem !important;
  transition:
    background-color 0.2s,
    color 0.2s,
    border-color 0.2s,
    box-shadow 0.2s !important;
}

.hbspt-form form select:focus,
.hbspt-form form input:focus,
.hbspt-form form textarea:focus,
.hbspt-form form a {
  outline-color: #fe601f;
}

.hbspt-form form a:not(.btn) {
  /* Assuming .link-dark-theme extends some predefined styles */
  text-decoration: none;
  color: #fafafa;
}

.hbspt-form form a:not(.btn):hover {
  /* Assuming .link-dark-theme extends some predefined styles */
  text-decoration: none;
  color: #fe601f;
}

.hbspt-form form legend,
.hbspt-form form .cookie-reset-container span,
.hbspt-form form .legal-consent-container .hs-richtext p {
  color: #a3a3a3 !important;
  font-size: 14px;
}

.hbspt-form form .hs-button.primary.large {
  height: fit-content !important;
  border: 1px solid #171717 !important;
  background-color: #171717 !important;
  color: #f5f5f5 !important;
  border-radius: 6px !important;
  transition-duration: 300ms;
  transition-property:
    color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow,
    transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  align-items: center !important;
  cursor: pointer !important;
  display: inline-flex !important;
  overflow: hidden !important;
  position: relative !important;
  text-align: center !important;
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  user-select: none !important;
  vertical-align: bottom !important;
  font-size: 14px !important;
  padding: 12px !important;
  font-family: 'Proto Mono', sans-serif !important;
  line-height: 1rem !important;
}

.hbspt-form form .hs-button.primary.large:hover {
  background-color: #fe601f !important;
  border-color: #fe601f !important;
  color: #171717 !important;
}

/* Styling for form fieldsets */
.hbspt-form form fieldset {
  max-width: 100%;
  border: none;
  padding: 0;
}

/* Input and select styling */
.hbspt-form form input[type='text'],
.hbspt-form form input[type='email'],
.hbspt-form form input[type='number'],
.hbspt-form form input[type='tel'],
.hbspt-form form input[type='password'],
.hbspt-form form textarea,
.hbspt-form form select {
  display: block;
  width: 100% !important;
  margin-bottom: 15px;
  padding-left: 1.375rem;
  padding-right: 1.375rem;
  border-radius: 4px;
  background-color: #262626;
  color: #a3a3a3;
  border: 1px solid transparent;
}

/* Input and select styling */
.hbspt-form form input[type='text'],
.hbspt-form form input[type='email'],
.hbspt-form form input[type='number'],
.hbspt-form form input[type='tel'],
.hbspt-form form input[type='password'],
.hbspt-form form select {
  height: 2.5rem;
}

.hbspt-form form input[type='checkbox'] {
  width: 1rem !important;
  height: 1rem;
}

.hbspt-form form input[type='checkbox']:checked {
  background-color: #fe601f !important;
}

/* Error message styling */
.hbspt-form form .hs-error-msgs {
  color: #f87171 !important;
  margin-top: 16px;
  margin-bottom: 16px;
  list-style: none;
  position: relative;
  top: -0.875rem;
}

.hbspt-form form .hs-error-msgs li label {
  color: #ef4444;
  line-height: 1.25rem;
}

.hs-form-booleancheckbox-display {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.hs-richtext {
  margin-top: 32px;
}
.hs-richtext a {
  color: #fafafa !important;
  font-weight: 500 !important;
}

.hs-error-msg {
  color: #f26464 !important;
  font-size: 12px;
}

.hbspt-form form input.invalid.error {
  border-color: #f26464 !important;
}

.hbspt-form form label span,
strong {
  font-weight: 500 !important;
}

.hbspt-form form input[type='submit'] {
  margin-top: 32px;
}

.form-columns-2 > .hs-form-field:first-of-type > .input {
  margin-right: 24px;
}

.inputs-list.multi-container {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.25rem !important;
  margin-bottom: 1rem;
}

.hs-form-checkbox-display {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  line-height: 2rem;
}

.hbspt-form form label span.hs-form-required {
  color: #fe601f !important;
  margin-left: 0.25rem;
}

.hs_submit.hs-submit .actions {
  text-align: right;
}
