.form-control:invalid {
  border-color: var(--color-danger);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-control:valid {
  border-color: var(--color-info);
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-control {
  border-width: 2px;
  border-style: solid;
  border-radius: 6px;
  font-family: "Lato", Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.467;
  padding: 8px 12px;
  height: 42px;
  box-shadow: none;
  transition: border .25s linear, color .25s linear, background-color .25s linear;
}

.form-control.without-bg {
  background-image: inherit;
}

.form-control.without-bg:valid {
  padding-right: inherit;
}

.form-control.highlight {
  border-style: dashed;
}

.form-group.focus .form-control,
.form-control:focus {
  border-color: var(--color-info);
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.form-horizontal .row {
  margin: auto 0 1rem 0;
}

.form-group .col-sm-6 {
  padding: 0;
}

select {
  background-color: white;
  margin: 5px;
  border-radius:5px;
  border-color: var(--color-info);
}

.btn {
  border: none;
  font-size: 15px;
  font-weight: normal;
  line-height: 1.4;
  border-radius: 4px;
  padding: 10px 15px;
}

.btn:disabled {
  background-color: dimgrey;
  border-color: dimgray;
}

.btn-primary {
  color: white;
  background-color: var(--color-primary);
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: color-mix(in srgb, var(--color-primary) 80%, black);
}

.btn-secondary {
  color: white;
  background-color: var(--color-secondary);
}

.btn-secondary:hover,
.btn-secondary:focus {
  color: white;
  background-color: color-mix(in srgb, var(--color-secondary) 80%, black);
}

.btn-info {
  color: white;
  background-color: var(--color-info);
}

.btn-info:hover,
.btn-info:focus {
  color: white;
  background-color: color-mix(in srgb, var(--color-info) 80%, black);
}

.help-block {
  font-size: 14px;
  margin-bottom: 0;
}

.form-check-input.is-invalid:checked{
  background-color: var(--color-info);
  border-color: var(--color-info);
}

input.form-check-input.is-invalid ~ label.form-check-label {
	color:#34495e;
	font-size:14px;
}

.form-control:focus {
  border-color: color-mix(in srgb, var(--color-info) 80%, black);
}

.btn-link {
  color: color-mix(in srgb, var(--color-info) 80%, black);
  background: none;
  font-size: 14px;
  border: none;
}

.btn-link:hover {
  color: color-mix(in srgb, var(--color-info) 60%, black);
}