.hbspt-form form label:not(.hs-error-msg) > span,
.hbspt-form form select,
.hbspt-form form input,
.hbspt-form form textarea {
  color: var(--text-color-secondary) !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: var(--input-bg) !important;
  border: 1px solid var(--surface-border) !important;
  border-radius: 6px !important;
  color: var(--text-color) !important;
  font-family: var(--font-family) !important;
  font-feature-settings: var(--font-feature-settings, normal) !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: #f3652b;
}

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

.hbspt-form form legend,
.hbspt-form form .cookie-reset-container span,
.hbspt-form form .legal-consent-container .hs-richtext p {
  color: var(--text-color-secondary) !important;
  font-size: 14px;
}

.hbspt-form form .hs-button.primary.large {
  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;
  background: #f3652b !important;
  border: 1px solid #f3652b !important;
  border-radius: 6px !important;
  color: var(--primary-text-color) !important;
  font-size: 1rem !important;
  padding: 0.344rem 0.75rem !important;
  transition:
    background-color 0.2s,
    color 0.2s,
    border-color 0.2s,
    box-shadow 0.2s !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: var(--color-light-alabaster);
  color: var(--color-dove-gray);
  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: var(--p-tag-color) !important;
}

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

.hbspt-form form .hs-error-msgs li label {
  color: var(--color-error);
  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: #93c5fd !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: #f3652b !important;
  margin-left: 0.25rem;
}

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