.btn {
  align-items:center;
  background:#e6e9ee;
  border:1px solid #001b52;
  border-radius:99px;
  color:#001b52;
  cursor:pointer;
  display:inline-flex;
  font-weight:300;
  justify-content:center;
  letter-spacing:-3%;
  min-width:100px;
  padding:9px 20px;
  transition:all var(--text-anim);
}
.btn:hover {
  background:#001b52;
  color:#fff;
}
.btn:focus {
  background:#ff8300;
  color:#fff;
}
input[type="text"], input[type="email"] {
  background:#fff;
  border:1px solid #b8b8b8;
  border-radius:99px;
  color:#000;
  font-size:var(--base-font-size);
  line-height:1;
  min-height:43px;
  padding:10px 30px;
  text-align:left;
  transition:border-color var(--text-anim);
  vertical-align:top;
  width:100%;
}
input[type="text"]:focus, input[type="email"]:focus { outline:0; }
input.field-error { border-color:var(--error-color); }
input.field-error::placeholder { color:var(--error-color); }
input::placeholder { color:#b8b8b8; }
input:focus::placeholder { color:#999; }
label { transition:color var(--text-anim); }
.form-area { padding-top:1px; }
.form-group { margin-bottom:10px; }
.form-group--checkbox input {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.form-group--checkbox input:checked + label::before { background:#0b2a5b; }
.form-group--checkbox input:checked + label::after {
  border:solid #fff;
  border-width:0 2px 2px 0;
  content:"";
  height:12px;
  left:6px;
  position:absolute;
  top:1px;
  transform:rotate(45deg);
  width:6px;
}
.form-group--checkbox label {
  color:#001b52;
  cursor:pointer;
  font-size:.75rem;
  margin-left:15px;
  position:relative;
  padding-left:35px;
  transition:color var(--text-anim);
}
.form-group--checkbox label::before {
  background:#fff;
  border:1px solid #001b52;
  border-radius:1px;
  content:'';
  height:18px;
  left:0;
  position:absolute;
  top:-1px;
  transition:background var(--text-anim);
  width:18px;
}
.form-group:not(.form-group--checkbox) label {
  color:#000;
  display:block;
  font-weight:500;
  margin-bottom:10px;
  padding-left:30px;
}
.form-group:has(input.field-error) label { color:var(--error-color); }
.field-error:not(input) {
  color:var(--error-color) !important;
  display:block;
  font-size:1rem;
  margin-block:11px;
  padding-left:30px;
}
.form-actions { text-align:right; }
.form-success {
  display:none;
  padding-bottom:clamp(5vh,20vh,25vh);
  padding-top:1px;
}
.toggle-content {
  font-size:.75rem;
  line-height:1.5;
  margin-top:10px;
  max-height:0;
  padding:0 5px 0 15px;
  overflow:hidden;
  transition:max-height var(--text-anim);
}
.toggle-content p:last-child { margin-bottom:0; }
.form-group--checkbox input:checked + label + .toggle-content {
  max-height:150px;
  overflow:auto;
}
