.frame-type-form_formframework .form-group { margin: 0 0 1.5rem; }
.frame-type-form_formframework .form-label { display: block; margin-bottom: .35rem; }
.frame-type-form_formframework input:not([type=checkbox]):not([type=hidden]):not([type=submit]),
.frame-type-form_formframework textarea,
.frame-type-form_formframework select {
    box-sizing: border-box; width: 100%; max-width: 100%; border: 1px solid transparent;
    border-radius: 0; padding: 10px; background-color: #d8ba7454;
    color: #404040; font: inherit; font-size: 18px;
}
.frame-type-form_formframework textarea { min-height: 9rem; resize: vertical; }
.frame-type-form_formframework input[type=checkbox] { width: 1.15rem; height: 1.15rem; flex: 0 0 auto; float: none; margin: .2rem 0 0; accent-color: #2a4c09; }
.frame-type-form_formframework .form-check { display: flex; flex-wrap: wrap; gap: .45rem .75rem; align-items: flex-start; padding: 0; }
.frame-type-form_formframework .form-check-label { flex: 1 1 12rem; font-size: 14px; line-height: 1.55; }
.frame-type-form_formframework .hubertus-privacy-link { margin-left: 1.9rem; font-size: 14px; text-decoration: underline; }
.frame-type-form_formframework :is(input,textarea,select,button,a):focus-visible {
    outline: 3px solid #2a4c09 !important; outline-offset: 3px;
}
.frame-type-form_formframework .error,
.frame-type-form_formframework .has-error .form-label { color: #9b1c1c; }
.frame-type-form_formframework .has-error :is(input,textarea,select) { border-color: #9b1c1c; }
.frame-type-form_formframework .actions button { background: #2a4c09; color: white; border: 1px solid #2a4c09; padding: .65rem 1.1rem; }
.frame-type-form_formframework .actions button:hover { background: white; color: #2a4c09; }
.frame-type-form_formframework .form-text { font-size: 14px; }
@media (max-width: 600px) {
    .frame-type-form_formframework input[type=file] { font-size: 14px !important; }
}
