/* PGN HubSpot form styles */
.pgn-hs-form {
  --pgn-navy: #0F2138;
  --pgn-ink: #1d1d1f;
  --pgn-muted: #6b7280;
  --pgn-err: #c0392b;
}

.pgn-hs-form fieldset {
  max-width: 100% !important;
}

.pgn-hs-form ul,
.pgn-hs-form li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.pgn-hs-form li::marker {
  content: none !important;
}

.pgn-hs-form .hs-form-field,
.pgn-hs-form [class*="hsfc-Row"] {
  margin-bottom: 20px !important;
}


/* Labels */
.pgn-hs-form label {
  display: block !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--pgn-ink) !important;
  margin: 0 0 6px !important;
  line-height: 1.3 !important;
}


/* Fields */
.pgn-hs-form input[type=text],
.pgn-hs-form input[type=email],
.pgn-hs-form input[type=tel],
.pgn-hs-form input[type=number],
.pgn-hs-form select,
.pgn-hs-form textarea {
  width: 100% !important;
  height: 40px !important;
  padding: 0 12px !important;
  margin: 0 !important;
  background: #fff !important;
  border: 1px solid var(--pgn-ink) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  font-size: 14px !important;
  color: var(--pgn-ink) !important;
}

.pgn-hs-form textarea {
  height: auto !important;
  min-height: 96px !important;
  padding: 10px 12px !important;
  resize: none !important;
}

.pgn-hs-form ::placeholder {
  color: var(--pgn-muted) !important;
  opacity: 1;
}

.pgn-hs-form input:focus,
.pgn-hs-form select:focus,
.pgn-hs-form textarea:focus {
  outline: none !important;
  border-color: var(--pgn-navy) !important;
  box-shadow: 0 0 0 2px rgba(15, 33, 56, .15) !important;
}

.pgn-hs-form select {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 36px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0h10L5 6z' fill='%231d1d1f'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
}


/* Checkboxes & radios */
.pgn-hs-form .inputs-list label,
.pgn-hs-form .hs-form-checkbox-display,
.pgn-hs-form .hs-form-booleancheckbox-display {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  margin-bottom: 8px !important;
}

.pgn-hs-form input[type=checkbox],
.pgn-hs-form input[type=radio] {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
  accent-color: var(--pgn-navy);
}


/* Errors */
.pgn-hs-form .hs-error-msgs {
  margin-top: 6px !important;
}

.pgn-hs-form .hs-error-msg,
.pgn-hs-form .hs-error-msgs label,
.pgn-hs-form [class*="ErrorAlert"] {
  color: var(--pgn-err) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  margin: 0 !important;
}

.pgn-hs-form .hs_error_rollup {
  text-align: center !important;
  margin: 8px 0 12px !important;
}

.pgn-hs-form .hs_error_rollup label {
  color: var(--pgn-err) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}


/* Button */
.pgn-hs-form .actions,
.pgn-hs-form .hs_submit,
.pgn-hs-form [class*="NavigationRow"],
.pgn-hs-form [class*="ButtonRow"] {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
}

.pgn-hs-form input[type=submit],
.pgn-hs-form button[type=submit] {
  display: block !important;
  width: 100% !important;
  max-width: 360px !important;
  min-width: 220px !important;
  margin: 8px auto 0 !important;
  height: 48px !important;
  padding: 0 24px !important;
  background: var(--pgn-navy) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.pgn-hs-form input[type=submit]:hover,
.pgn-hs-form button[type=submit]:hover {
  filter: brightness(1.2);
}