input, select, button {
  font-family: 'proxima-nova', sans-serif;
}
.hs-fieldtype-text label span {
  display: none;
}
.hs-form-field .input {
  text-decoration: none;
  background-image: linear-gradient(transparent, transparent), linear-gradient(currentColor, currentColor);
  transition: background-size 0.5s ease;
  background-size: 100% 0.0625rem, 0 0.0625rem;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  color: #646469;
  padding: 9px 0;
  background-size: 100% 1px;
}
.hs-form-field .input:hover {
  background-size: 0 0.0625rem, 100% 0.0625rem;
}
.hs-form-field .input:focus, .hs-form-field .input:active, .hs-form-field .input:hover {
  color: #3172ae;
  animation: redrawUnderline 1s;
  animation-fill-mode: forwards;
}
.hs-input {
  color: #646469;
  border: 0;
  font-size: calc(1.125rem * 1.12); /* Adjusted for Proxima Nova */
  font-family: 'proxima-nova', sans-serif;
  font-weight: 300;
  width: 100%;
}
.hs-input:focus, .hs-input:active {
  outline: none;
}
.hs-input::placeholder {
  color: #646469;
}
.program-finder-filter {
  width: 270px;
}
.clear-filter {
  border: 1px solid #3172ae;
  border-radius: 12px;
  cursor: pointer;
  font-size: calc(0.75rem * 1.12); /* Adjusted for Proxima Nova */
  font-weight: 300;
  padding: 3px 8px;
  transition: background-color 0.2s ease;
}
.clear-filter::before {
  background-image: url('icons/close-black.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: "";
  height: 14px;
  width: 14px;
  display: inline-block;
}
.clear-filter::after {
  margin-left: 5px;
  position: relative;
  top: 2px;
}
.clear-filter:hover {
  background-color: #3e8ede;
  color: #fff;
}
.search-bar {
  color: #3e8ede;
  border: 0;
  border-bottom: 3px solid #d7d7d7;
  font-size: calc(16px * 1.12); /* Adjusted for Proxima Nova */
  height: 35px;
  width: 100%;
}
.search-bar::placeholder {
  color: #3e8ede;
  font-size: calc(16px * 1.12); /* Adjusted for Proxima Nova */
  font-weight: 500;
}
.search-bar:focus {
  outline: none;
}
.search-bar:active, .search-bar:focus, .search-bar:hover {
  color: #000;
  border-color: #000;
}
.search-bar:active::placeholder, .search-bar:focus::placeholder, .search-bar:hover::placeholder {
  color: #000;
}
.program-finder-filter__heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.program-finder-filter .search-bar {
  margin-top: 15px;
}
.program-finder-filter input {
  cursor: pointer;
}
.program-finder-filter .btn {
  min-height: 48px;
}
.program-finder-filter label {
  color: #203749;
  font-size: calc(0.875rem * 1.12); /* Adjusted for Proxima Nova */
  font-weight: 300;
  font-family: 'proxima-nova', sans-serif;
}
.form__interior {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.form__interior .form-item {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
}
.form-checkbox {
  position: absolute;
  width: 100%;
  opacity: 0;
}
.form-checkbox__label {
  position: relative;
  cursor: pointer;
}
.form-checkbox__label::before {
  content: '';
  cursor: pointer;
  display: inline-block;
  border: 1px solid #3172ae;
  width: 12px;
  height: 12px;
  margin-right: 15px;
}
.form-checkbox__label:hover::before {
  background: linear-gradient(45deg, #3172ae 0%, #3172ae 50%, #fff 50%);
}
.form-checkbox__label__open::before {
  background: linear-gradient(45deg, #3172ae 0%, #3172ae 100%);
}
.form-radio {
  margin-right: 15px;
  position: absolute;
  width: 100%;
  opacity: 0;
}
.form-radio__label {
  position: relative;
}
.form-radio__label::before {
  content: '';
  cursor: pointer;
  display: inline-block;
  border: 1px solid #3172ae;
  border-radius: 100%;
  width: 12px;
  height: 12px;
  margin-right: 15px;
}
.form-radio__label:hover::before {
  background: radial-gradient(circle at center, #3172ae 0, transparent, transparent 100%);
}
.form-radio__label__open::before {
  background: #3172ae;
}
.form__interior .form-item--select-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.form__interior .form-item--select-container .form-select {
  text-decoration: none;
  background-image: linear-gradient(transparent, transparent), linear-gradient(currentColor, currentColor);
  transition: background-size 0.5s ease;
  background-size: 100% 0.0625rem, 0 0.0625rem;
  background-position: 100% 100%, 0 100%;
  background-repeat: no-repeat;
  border: 0;
  cursor: pointer;
  color: #646469;
  font-weight: 500;
  border-bottom: 2px solid rgba(100, 100, 105, .3);
  -webkit-appearance: none;
  -moz-appearance: none;
  height: 39px;
  margin-top: 5px;
  font-size: calc(1.25rem * 1.12); /* Adjusted for Proxima Nova */
  padding: 4px 0;
  width: 100%;
}
.form__interior .form-item--select-container .form-select:hover {
  background-size: 0 0.0625rem, 100% 0.0625rem;
}
.form__interior .form-item--select-container .form-select:focus, .form__interior .form-item--select-container .form-select:active {
  outline: none;
}
.form__interior .form-item--select-container .form-select:hover {
  background-image: linear-gradient(transparent, transparent), linear-gradient(#3172ae, #3172ae);
  background-size: 0 0.0625rem, 100% 0.125rem;
}
.form--select__wrapper {
  position: relative;
  margin-bottom: 24px;
}
.form--select__wrapper::after {
  content: '';
  background-image: url('caret-down-blue.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: "";
  height: 12px;
  width: 12px;
  display: block;
  right: 0;
  top: 18px;
  position: absolute;
}
.form__interior .form-item--radio-container {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin-bottom: 32px;
}
.form__interior .form-item--radio-container label {
  display: block;
  font-weight: 500;
}
.form-checkbox__label {
  margin-bottom: 10px;
}
.form__interior .form-checkbox__label {
  display: block;
  width: 100%;
}
.form__interior .form-textarea {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin-bottom: 24px;
  font-family: 'proxima-nova', sans-serif;
}
.form__interior .form-textarea:hover {
  background-image: linear-gradient(transparent, transparent), linear-gradient(#3172ae, #3172ae);
  background-size: 0 0.0625rem, 100% 0.125rem;
}
.form__agreement {
  margin-bottom: 32px;
}
.form-field__radio label {
  font-family: 'proxima-nova', sans-serif;
  font-weight: 500;
  font-size: calc(1rem * 1.12); /* Adjusted for Proxima Nova */
  line-height: 1.25rem;
  color: #203749;
}
input[type="radio"] {
  border-color: #979797;
}
.form-field.focused {
  border: 1px dotted #91959c;
}
@media (min-width: 1024px) {
  .hs-input {
    font-size: calc(1.25rem * 1.12); /* Adjusted for Proxima Nova */
 }
}
@media (min-width: 768px) {
  .form__interior .form-item {
    flex: 0 0 calc((100% - 15px) / (12 / 6));
    width: calc((100% - 15px) / (12 / 6));
    max-width: calc((100% - 15px) / (12 / 6));
 }
  .form--select__wrapper {
    margin-bottom: 0;
 }
}
